BAB 1
Sebagian besar algoritma manajemen memori memerlukan satu
kebutuhan dasar yaitu instruksi yang akan dieksekusi harus berada di memori
fisik. Pada beberapa kasus, keseluruhan program tidak diperlukan. Misalnya :
•
Program mempunyai kode untuk menangani kondisi error yang tidak biasa. Karena
error-error ini jarang terjadi, kode ini
hampir tidak pernah dieksekusi.
•
Array, list dan tabel dialokasikan lebih dari kapasitas memori yang diperlukan
•
Pilihan dan gambaran program jarang digunakan
Pada kasus dimana keseluruhan program dibutuhkan, mungkin
tidak semua diperlukan pada saat yang sama. Kemampuan mengeksekusi program
hanya pada beberapa bagian dari memori mempunyai beberapa keuntungan yaitu :
•
Program tidak terbatas jumlah memori fisik yang tersedia sehingga user dapat
menulis program untuk ruang alamat virtual
yang sangat besar yang berarti
menyederhanakan programming task.
•
Karena setiap program user dapat menggunakan memori fisik yang lebih kecil,
pada
waktu yang sama dapat menjalankan lebih
banyak program.
•
I/O yang lebih sedikit diperlukan untuk load atau swap program user ke memori,
sehingga setiap program user dapat berjalan
lebih cepat.
TUJUAN
·
Memahami latar belakang memori virtual
·
Memahami maksud demand paging
·
Memahami mekanisme page replacement
·
Memahami algoritma alokasi frame
·
Mengetahui implementasi memori virtual
BAB 2 |
Memori virtual adalah teknik yang memisahkan memori
logika user dari memori fisik. Menyediakan memori virtual yang sangat besar
diperuntukkan untuk programmer bila tersedia memori fisik yang lebih kecil.
Gambar memori virtual lebih besar dari
pada memori fisik
Memori virtual biasanya diimplementasikan menggunakan demand
paging atau demand segmentation juga digunakan. Tetapi algoritma segment-replacement
lebih kompleks daripada algoritma page-replacement karena segmen
mempunyai ukuran yang bervariasi.
Demand paging adalah
sistem paging dengan swapping. Page diletakkan di memori hanya
jika diperlukan. Hal ini menyebabkan kebutuhan I/O lebih rendah, kebutuhan
memori lebih rendah, respon lebih cepat dan lebih banyak user yang menggunakan.
Gambar system paging dengan swapping
Proses disimpan di memori sekunder (disk). Jika proses
akan dieksekusi, maka
dipindah
(swap) ke memori. Menggunakan lazy swapper untuk melakukan swapping bila
page tersebut akan digunakan yang berarti sebuah page tidak
pernah ditukar ke memori kecuali page diperlukan. Jika page diperlukan,
dilakukan acuan ke page tersebut, tetapi jika acuan invalid maka
dilakukan penghentian. Page yang sedang tidak berada di memori
tersebut akan dibawa ke memori dari backing store.
Berlanjut ke blog :