Demand paging atau permintaan pemberian halaman adalah salah satu implementasi dari memori virtual yang paling umum digunakan. Demand paging pada prinsipnya hampir sama dengan permintaan halaman (paging) hanya saja halaman (page) tidak akan dibawa ke ke dalam memori fisik sampai ia benar-benar diperlukan. Untuk itu diperlukan bantuan perangkat keras untuk mengetahui lokasi dari halaman saat ia diperlukan. Karena demand paging merupakan implementasi dari memori virtual, maka keuntungannya sama
dengan keuntungan memori virtual, yaitu:
* Sedikit M/K yang dibutuhkan.
* Sedikit memori yang dibutuhkan.
* Respon yang lebih cepat.
* Dapat melayani lebih banyak pengguna.
Ada tiga kemungkinan kasus yang dapat terjadi pada saat dilakukan pengecekan pada halaman yang dibutuhkan, yaitu: halaman ada dan sudah berada di memori – statusnya valid ("1"); halaman ada tetapi masih berada di disk atau belum berada di memori (harus menunggu sampai dimasukkan) – statusnya tidak valid ("0"). Halaman tidak ada, baik di memori maupun di disk (invalid reference).Saat terjadi kasus kedua dan ketiga, maka proses dinyatakan mengalami kesalahan halaman.
Kelebihan atau Kekurangan Demand Paging
Manajemen memori dengan permintaan halaman (demand paging) memiliki kelebihan yang sama dengan manajemen memori dengan pemberian halaman, antara lain menghilangkan masalah fragmentasi eksternal sehingga tidak diperlukan pemadatan (compaction). Selain itu permintaan halaman memiliki kelebihan yang lain, yaitu:
1. Memori virtual yang besar.
Memori logis tidak lagi terbatas pada ukuran memori fisik. Hal ini berarti bahwa besar suatu program tidak akan terbatas hanya pada ukuran memori fisik tersedia.
2. Penggunaan memori yang lebih efisien.
Bagian program yang dibawa ke memori fisik hanyalah bagian program yang dibutuhkan sementara bagian lain yang jarang digunakan tidak akan dibawa.
3. Meningkatkan derajat multiprogamming.
Derajat multiprogramming menunjukkan banyaknya proses yang berada di memori fisik. Dengan penggunaan permintaan halaman maka ukuran suatu program di memori akan lebih kecil mengingat bahwa hanya bagian program yang diperlukan saja yang akan dibawa ke memori fisik. Penggunaan memori yang lebih kecil oleh sebuah proses memberi sisa ruang memori fisik yang lebih besar sehingga lebih banyak proses yang bisa berada di memori fisik. Hal ini berpengaruh pada utilisasi CPU dan throughput (banyaknya proses yang dapat diselesaikan dalam satu satuan waktu) yang lebih besar.
4. Penggunaan M/K yang lebih sedikit.
Hal ini dapat terjadi karena permintaan halaman hanya membawa bagian yang diperlukan dari suatu program. Penggunaan M/K pada permintaan halaman lebih sedikit dibandingkan dengan manajemen memori lain yang membawa seluruh memori logis sebuah program ke memori fisik.
Sumber :rianniza.blogspot.co.id