Selasa, 12 Mei 2015

Virtual Memory

Salam kawan, kali mimin mau bagi ilmu nih...
 
Virtual memory adalah suatu cara untuk memanajemen kebutuhan memori dengan menggunakan memori sekunder. Bertujuan untuk memisahkan antara memori logis dan memori fisiknya. Memori logis adalah kumpulan page dari suatu program. Tanpa memori virtual, memori logis akan langsung dibawa ke memori fisik (memori utama). Karena itu tugas virtual memory adalah melakukan pemisahan sehingga hanya page yang diperlukan masuk kedalam memori fisik (memori utama). Virtual memory biasanya menggunakan hard disk untuk digunakan membantu memori utama.
 
Cara kerja virtual memori dimplementasikan dengan menggunakan demand paging,
emand paging adalah sistem paging dengan swapping  seperti gambar diabawah;

Virtual memory akan bekerja saat sistem operasi kehabisan memori utama, yang dimana sistem operasi tersebut akan memindahkan proses yang paling terakhir dipakai atau diakses ke dalam virtual memory sehingga terdapat ruang kosong dalam memori utama yang dapat digunakan untuk menjalankan proses selanjutnya. Sistem operasi akan melakukan hal ini terus menerus ketika data baru berdatangan dan memori utama tidak mencukupi. Apabila proses yang tersimpan dalam virtual memori dibutuhkan maka proses akan ditukar (swap) dengan data yang terakhir kali diakses pada memori utama. Hal ini dikarenakan sistem operasi tidak dapat menjalankan program dari virtual memori.
Untuk membedakan antara page pada memori dengan page pada disk digunakan valid-invalid bit. Tabel page yang berada pada memori diset ”valid” sedangkan untuk disk diset “invalid”.




Apabila “ invalid masuk kedalam memori maka akan terjadi page fault, yang menyebabkan trap pada sistem operasi. Karena hal tersebut maka terdapat prosedur untuk menangani page fault  sebagai berikut:
1.      Sistem operasi melihat table untuk menentukan jika acuan invalid maka proses dihentikan
2.      Jika acuan didapat invalid maka dilakukan trap ke sistem operasi
3.      Sistem mencari frame kosong
4.      Sistem melakukan proses swapping
5.      Tabel page di-reset
6.      Instruksi direstart




            Page replacement digunakan pada saat proses eksekusi memerlukan frame bebas namun tidak tersedia. Hal ini menyebabkan sistem harus menemukan satu frame yang sedang tidak digunakan dan membebaskannya. Misalnya dalam page fault, saat proses dibutuhkan page replacement :


 



Dalam virtual memori juga terdapat thrashing, hal ini terjadi apabila proses menghabiskan lebih banyak waktu untuk paging daripada eksekusi. Hal ini mungkin terjadi apabila sering terjadi page fault secara terus menerus. 


 Nah, berikut ini versi ppt nya


Supported by:
www.is.its.ac.id
htttp://isico.info
http://sesindo.org

Tidak ada komentar:

Posting Komentar