Minggu, 24 Maret 2013

Konsep Memori Virtual





1.        Memori Virtual
Manajemen memori pada intinya adalah menempatkan semua bagian proses yang akan dijalankan kedalam memori sebelum proses itu dijalankan. Untuk itu, semua bagian proses itu harus memiliki tempat sendiri di dalam memori fisik. Tetapi tidak semua bagian dari proses itu akan dijalankan, misalnya:
• Pernyataan atau pilihan yang hanya akan dieksekusi pada kondisi tertentu. Contohnya adalah: pesan-pesan error yang hanya muncul bila terjadi kesalahan saat program dijalankan.
• Fungsi-fungsi yang jarang digunakan.
Pengalokasian memori yang lebih besar dari yang dibutuhkan. Contoh: array , list dan tabel. Pada memori berkapasitas besar, hal-hal ini tidak akan menjadi masalah. Akan tetapi, pada memori yang sangat terbatas, hal ini akan menurunkan optimalisasi utilitas dari ruang memori fisik. Sebagai solusi dari masalah-masalah ini digunakanlah konsep memori virtual.

a.      Pengertian
Memori virtual adalah suatu teknik yang memisahkan antara memori logis dan memori fisiknya. Teknik ini menyembunyikan aspek-aspek fisik memori dari user dengan menjadikan memori sebagai lokasi alamat virtual berupa byte yang tidak terbatas dan menaruh beberapa bagian dari memori virtual yang berada di memori logis. Berbeda dengan keterbatasan yang dimiliki oleh memori fisik, memori virtual dapat menampung program dalam skala besar, melebihi daya tampung dari memori fisik yang tersedia. Prinsip dari memori virtual yang patut diingat adalah bahwa: "Kecepatan maksimum eksekusi proses di memori virtual dapat sama, tetapi tidak pernah melampaui kecepatan eksekusi proses yang sama di sistem tanpa menggunakan memori virtual. "Konsep memori virtual pertama kali dikemukakan Fotheringham pada tahun 1961 pada sistem computer Atlas di Universitas Manchester, Inggris.

b.       Keuntungan
Sebagaimana dikatakan di atas bahwa hanya sebagian dari program yang diletakkan di memori fisik. Hal ini memberikan keuntungan:
• Berkurangnya proses I/O yang dibutuhkan (lalu lintas I/O menjadi rendah). Misalnya untuk program butuh membaca dari disk dan memasukkan dalam memory setiap kali diakses.
Space menjadi lebih leluasa karena berkurangnya memori fisik yang digunakan. Contoh, untuk program 10 MB tidak seluruh bagian dimasukkan dalam memori fisik. Pesan-pesan error hanya dimasukkan jika terjadi error.
• Meningkatnya respon, karena menurunnya beban I/O dan memori.
• Bertambahnya jumlah user yang dapat dilayani. Ruang memori yang masih tersedia luas
memungkinkan komputer untuk menerima lebih banyak permintaan dari user .

c.        Implementasi
Gagasan utama dari memori virtual adalah ukuran gabungan program, data dan stack melampaui jumlah memori fisik yang tersedia. Sistem operasi menyimpan bagian-bagian proses yang sedang digunakan di memori fisik ( main memory ) dan sisanya diletakkan di disk. Begitu bagian yang berada di disk diperlukan, maka bagian di memori yang tidak diperlukan akan dikeluarkan dari memori fisik ( swap-out) dan diganti ( swap-in ) oleh bagian disk yang diperlukan itu. Memori virtual diimplementasikan dalam sistem multiprogramming. Misalnya: 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 ( swapout ) jika sedang tidak diperlukan. Dengan demikian, sistem multiprogramming menjadi lebih efisien.
Memori virtual dapat dilakukan melalui dua cara:
  • Permintaan pemberian halaman ( demand paging ).
  • Permintaan segmentasi ( demand segmentation ).
Contoh: IBM OS/2. Algoritma dari permintaan segmentasi lebih kompleks, karena itu jarang diimplementasikan.

Sumber :
http:// www.google.com
Hariyanto, Bambang, Ir., Sistem Operasi, Penerbit Informatika, Bandung,1999

Tidak ada komentar:

Posting Komentar