Kinerja

Dalam proses demand paging, jika terjadi page fault maka diperlukan waktu yang lebih lambat untuk mengakses memori daripada jika tidak terjadi page fault. Hal ini dikarenakan perlu adanya penanganan page fault itu sendiri. Kinerja demand paging ini dapat dihitung dengan menggunakan effective access time yang dirumuskan sebagai berikut:

effective access time = (1 - p) x ma + p x page fault time

ma adalah memory access time, yang pada umumnya berkisar antara 10 hingga 200 nanosecond. p adalah probabilitas terjadinya page fault, yang berkisar antara 0 hingga 1. Jika p sama dengan 0 yang berarti bahwa tidak pernah terjadi page fault, maka effective access time akan sama dengan memory access time, dan itulah yang diharapkan. Sedangkan jika p sama dengan 1, yang berarti bahwa semua halaman mengalami page fault, maka effective access time-nya akan semaikin meningkat.

Untuk mendapatkan effective access time, kita harus mengetahui waktu yang diperlukan untuk menangani page fault. Komponen-komponen dalam penanganan page fault terdiri dari tiga kelompok besar, yaitu melayani interupsi dari page fault, membaca halaman, dan mengulang kembali proses.



Penggunaan effective access time dapat ditunjukkan dalam contoh berikut.

Contoh 5.1. Contoh penggunaan effective address

Diketahui waktu pengaksesan memori (ma) sebesar 100 ns. Waktu page fault sebesar 20 ms. Maka effective access time = (1 - p) x ma + p x page fault time = (1 - p) x 100 + p x 20000000 = 100 - 100p + 20000000p = 100 + 19.999.900p nanosecond


Pada demand paging, diusahakan agar kemungkinan terjadinya page fault rendah, karena bila effective access time-nya meningkat, maka proses akan berjalan lebih lambat.