Virtual Memory

1. Latar belakang virtual memory

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

2. Konsep demand paging

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.

3. Kinerja demand paging

Demand paging memberikan efek yang signifikan dalam kinerja sistem computer. Diasumsikan ma adalah access time ke memori dan p adalah probabilitas terjadi page fault (0 ≤ p ≤ 1), maka effective access time didefinisikan sebagai : EAT = (1-p) x ma + p x page_fault-time

Untuk menghitung effective access time, harus diketahui berapa waktu yang diperlukan untuk melayani page fault

4. Konsep page replacement dan algoritma page replacement FIFO optimal dan LRU

Page replacement diperlukan pada situasi dimana proses dieksekusi perlu frame bebas tetapi tidak tersedia frame bebas. Sistem harus menemukan satu frame yang sedang tidak digunakan dan membebaskannya. Untuk membebaskan frame dengan cara menulis isinya untuk ruang swap dan mengubah tabel page (dan tabel lain) yang menunjukkan page tidak lagi di memori.

Algoritma FIFO merupakan algoritma paling sederhana. Algoritma FIFO diasosiasikan dengan sebuah page bila page tersebut dibawa ke memori. Bila ada suatu page yang akan ditempatkan, maka posisi page yang paling lama yang akan digantikan. Algoritma ini tidak perlu menyimpan waktu pada saat sebuah page dibawa ke memori.

Algoritma optimal merupakan hasil penemuan dari Belady’s anomaly. Algoritma ini mempunyai rata-rata page fault terendah. Algoritma optimal akan mengganti page yang tidak akan digunakan untuk periode waktu terlama. Algoritma ini menjamin rata-rata page fault terendah untuk jumlah frame tetap tetapi sulit implementasinya

Algoritma LRU merupakan perpaduan dari algoritma FIFO dan optimal. Prinsip dari algoritma LRU adalah mengganti page yang sudah tidak digunakan untuk periode waktu terlama

5. Thrashing

Misalnya sembarang proses tidak mempunyai frame yang cukup. Meskipun secara teknis dapat mengurangi jumlah frame yang dialokasikan sampai minimum, terdapat sejumlah page yang sedang aktif digunakan. Jika suatu proses tidak memiliki jumlah frame yang cukup, maka sering terjadi page fault. Sehingga harus mengganti beberapa page. Tetapi karena semua page sedang digunakan, harus mengganti page yang tidak digunakan lagi kemudian. Konsekuensinya, sering terjadi page fault lagi dan lagi. Proses berlanjut page fault, mengganti page untuk page fault dan seterusnya. Kegiatan aktifitas paging yang tinggi disebut thrashing. Sebuah proses mengalami thrashing jika menghabiskan lebih banyak waktu untuk paging daripada eksekusi. Efek thrashing dapat dibatasi dengan menggunakan algoritma local (priority) replacement

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS

0 Response to "Virtual Memory"

Posting Komentar