Memory Virtual
Teknik memori virtual akan memudahkan pekerjaan seorang programmer ketika besar data dan
programnya melampaui kapasitas memori utama. Sebuah multiprogramming dapat mengimplementasikan
teknik memori virtual sehingga sistem multiprogramming menjadi lebih efisien. Contohnya: 10 program
dengan ukuran 2 MB dapat berjalan di memori berkapasitas 4 MB. Tiap program dialokasikan 256 Kbyte
dan bagian – bagian proses (swap in) masuk ke dalam memori fisik begitu diperlukan dan akan keluar
(swap out) jika sedang tidak diperlukan.
Prinsip dari memori virtual adalah bahwa “Kecepatan maksimum ekseskusi proses di memori virtual
dapat sama, tetapi tidak akan pernah melampaui kecepatan eksekusi proses yang sama di sistem yang
tidak menggunakan memori virtual”.
Keuntungan yang diperoleh dari penyimpanan hanya sebagian program saja pada memori fisik
adalah:
• Berkurangnya proses I/O yang dibutuhkan (lalu lintas I/O menjadi rendah)
• Ruang menjadi lebih leluasa karena berkurangnya memori fisik yang digunakan
• Meningkatnya respon karena menurunnya beban I/O dan memori
• Bertambahnya jumlah pengguna yang dapat dilayani. Ruang memori yang masih tersedia luas
memungkinkan komputer untuk menerima lebih banyak permintaan dari pengguna.
Karena demand paging merupakan implementasi dari memori virtual, maka keuntungannya sama
dengan keuntungan memori virtual, yaitu:
• Sedikit I/O yang dibutuhkan.
• Sedikit memori yang dibutuhkan.
• Respon yang lebih cepat.
• Dapat melayani lebih banyak pengguna
b. Page Replacement
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 Optimal
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.
d. Alokasi Frame
Alokasi frame berhubungan dengan mekanisme alokasi sejumlah memori bebas yang tetap diantara
beberapa proses. Meskipun terdapat beberapa variasi pengalokasian frame bebas ke beberapa proses,
tetapi strategi dasar jelas yaitu : proses user dialokasikan untuk sembarang frame bebas.
Jumlah minimum frame per proses ditentukan oleh arsitektur dimana jumlah maksimum tergantung ju
mlah memori fisik yang tersedia. Jumlah minimim frame ditentukan oleh arsitektur instruction-set.
Bila terjadi page fault sebelum eksekusi instruksi selesai, instruksi harus di-restart. Sehingga tersedia
frame yang cukup untuk membawa semua page yang berbeda dimana sembarang instruksi dapat
mengacu.
e. Alokasi Global & Alokasi Lokal
Page replacement adalah faktor terpenting lain yang harus dipertimbangkan dalam alokasi frame. Pada
multiple process yang berkompentisi mendapatkan frame, algoritma page replacement dikelompokkan
dalam 2 kategori yaitu global replacement dan local replacement.
Global replacement mengijinkan suatu proses untuk menyeleksi suatu frame yang akan dipindah dari
sejumlah frame, meskipun frame tersebut sedang dialokasikan ke proses yang lain. Permasalahan pada
global replacement adalah proses tidak dapat mengontrol rata-rata page fault. Sejumlah page pada
memori untuk sebuah proses tidak hanya tergantung pada perilaku paging untuk proses tersebut, tetapi
juga perilaku paging untuk proses yang lain. Bagaimanapun, karena algoritma global replacement
menghasilkan throughput yang lebih besar, metode ini sering digunakan.
Pada local replacement, jumlah frame yang dialokasikan untuk proses tidak berubah. Setiap proses dapat
memilih dari frame-frame yang dialokasikan untuknya.
f. Thrashing
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.
3. KESIMPULAN
1. Memori virtual adalah teknik memisahkan memori logis dan memori fisik
2. Teknik ini menempatkan keseluruhan program di disk sekunder dan membawa halaman-halaman
yang diperlukan ke memori fisik sehingga memori utama hanya akan menyimpan sebagian alamat proses
yang sering digunakan dan sebagian lainnya akan disimpan dalam disk sekunder dan dapat diambil sesuai
dengan kebutuhan
3. Memori virtual dapat diimplementasikan dalam sistem multiprogramming
4. Memori virtual biasanya diimplementasikan menggunakan demand paging atau demand segmentation
juga digunakan.
http://dedehkurniaafrianti.blogspot.com/2015/06/makalah-virtual-memori-sistem-operasi.html