Kamis, 28 Februari 2013

pengertian virtual memory


Virtual Memori



Memori virtual adalah suatu teknik yang memisahkan antara memori logis dan memori fisiknya. Teknik ini menyembunyikan aspek-aspek fisik memori dari pengguna dengan menjadikan memori sebagai lokasi alamat virtual berupa byte yang tidak terbatas dan menaruh beberapa bagian dari memori virtual yang berada di memori logis.

Konsep memori virtual dikemukakan pertama kali oleh John Fotheringham pada tahun 1961 dengan menggunakan dynamic storage allocation pada sistem komputer atlas di Universitas Manchester. Sedangkan istilah memori virtual dipopulerkan oleh Peter J. Denning yang mengambil istilah 'virtual' dari dunia optik.

Setiap program yang dijalankan harus berada di memori. Memori merupakan suatu tempat penyimpanan utama (primary storage) yang bersifat sementara (volatile). Ukuran memori yang terbatas menimbulkan masalah bagaimana menempatkan program yang berukuran lebih besar dari ukuran memori fisik dan masalah penerapan multiprogramming yang membutuhkan tempat lebih besar di memori. Dengan pengaturan oleh sistem operasi dan didukung perangkat keras, memori virtual dapat mengatasi masalah kebutuhan memori tersebut.

Memori virtual melakukan pemisahan dengan menaruh memori logis ke disk sekunder dan hanya membawa halaman yang diperlukan ke memori utama. Teknik ini menjadikan seolah-olah ukuran memori fisik yang dimiliki lebih besar dari yang sebenarnya dengan menempatkan keseluruhan program di disk sekunder dan membawa halaman-halaman yang diperlukan ke memori fisik. Jadi jika proses yang sedang berjalan membutuhkan instruksi atau data yang terdapat pada suatu halaman tertentu maka halaman tersebut akan dicari di memori utama. Jika halaman yang diinginkan tidak ada maka akan dicari di disk. Ide ini seperti menjadikan memori sebagai cache untuk disk.

Beberapa keuntungan penggunaan memori virtual adalah sebagai berikut:
  1. 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.
  2. Ruang 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.
  3. Meningkatnya respon, karena menurunnya beban I/O dan memori.
  4. Bertambahnya jumlah pengguna yang dapat dilayani. Ruang memori yang masih tersedia luas memungkinkan komputer untuk menerima lebih banyak permintaan dari pengguna.
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 (memori utama) 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 (swap out) jika sedang tidak diperlukan. Dengan demikian, sistem multiprogramming menjadi lebih efisien. Prinsip dari memori virtual yang perlu diingat adalah bahwa "Kecepatan maksimum eksekusi proses di memori virtual dapat sama, tetapi tidak pernah melampaui kecepatan eksekusi proses yang sama di sistem yang tidak menggunakan memori virtual".

Low Virtual Memory pada PC Windows


Memori virtual (dalam bahasa Inggris: virtual Memory) adalah sebuah mekanisme yang digunakan oleh aplikasi untuk menggunakan sebagian dari memori sekunder seolah-olah ia menggunakannya sebagai RAM fisik yang terinstal di dalam sebuah sistem. Mekanisme ini beroperasi dengan cara memindahkan beberapa kode yang tidak dibutuhkan ke sebuah berkas di dalam hard drive yang disebut dengan swap filepage file atau swap partition.

Dalam sistem operasi berbasis Windows NT, terdapat sebuah komponen yang mengatur memori virtual, yakni Virtual Memory Manager (VMM). VMM dapat memetakan alamat-alamat virtual yang dimiliki oleh sebuah proses yang berjalan ke dalam page memori fisik di dalam komputer. Dengan cara begini, setiap proses pun dapat memperoleh memori virtual yang cukup agar dapat berjalan, dan yang terpenting adalah setiap proses tidak mengganggu memori yang sedang digunakan oleh proses lainnya. VMM menangani paging antara RAM dan page file, dengan memindahkan page dengan menggunakan sebuah cara yang disebut sebagai demand paging. Hasilnya, setiap aplikasi 32-bit pun dapat mengakses memori hingga 4 gigabyte (meskipun Windows hanya membatasi proses yang berjalan dalam modus pengguna hanya sebatas 2 GB saja).

Jika PC Windows menampilkan pesan Low Virtual Memory maka dapat diatasi dengan cara sebagai berikut.
Untuk mengatasi virtual memory low, antara lain dengan cara :
  • Uninstall program yang tidak diperlukan lagi ;
  • Hapus file-file yang double, log file, file-file sampah, seperti di prefetch (Caranya : Start-Run > ketik prefetch > select all > Shift + Del) ;
  •  Hapus juga file-file di recycle bin, cookies, dll.
  •  Defrag PC (Caranya : Start > Programs > Accessories > System Tools > Disk Defragment) ;
  •  Menggunakan software pembersih registry seperti ccleaner ;
  •  Coba juga menggunakan software Atf-Cleaner ; 
  • Menggatur besarnya virtual memory ;
Mengatur besarnya Virtual Memory
Disini kita akan membahas mengenai cara mengatur besarnya virtual memory.
Cara untuk mengatur/ membuat virtual memory, adalah sebagai berikut :

1. Login sebagai Administrator ;
2. Klik kanan [My Computer], pilih ‘Properties’ ;
3. Klik tab ‘Advanced’, Pilih ‘Settings’ pada ‘Performance’ ;
 4. Ada 3 pilihan tab, Visual Effects, Advanced, & Data execution Prevention, kita pilih ‘Advanced’ ;
5. Klik ‘Change’ pada Virtual Memory, pilih ‘Custom Size’, besarnya virtual memory terserah user ;
6. Setelah selesai menulis angka-nya, klik ‘SET’, kemudian klik ‘OK’;
7. Sekarang Restart komputer anda.
Ada beberapa rekomendasi bagaimana cara mengatur besarnya virtual memory, antara lain:
1. Samakan besarnya memory pada Initial Size dan Maximum Size.
2. Dibeberapa sumber mengatakan besarnya memori pada virtual memori adalah {[Jumlah total DDR anda sekarang] x 2} +128, misalnya total memory (DDR-RAM) kamu sekarang 384 mb, berarti virtual memory kamu = (384×2)+128 = 896.
Tapi sumber dari Microsoft, bilang virtual memory yang baik adalah 1,5x dari jumlah Memory (DDR-RAM) yang terpasang di PC.

3. Dengan cara men-set menjadi 2x lipatnya agar tidak Run Out of Memory atau Memory Low lagi.
4. Karena virtual memory berfungsi sebagai pengganti (tambahan) DDR-RAM dan mengambil akses dari harddisk (HDD). Alangkah baiknya jika mempunyai 2 harddisk, bedakan lokasi harddisk antara System dan Virtual Memory.
Contoh :
HDD A – 40 Gb (System) <– Windows terinstall.
HDD B – 80 Gb (Data)

Jika kita mempunyai 2 HDD atau lebih, jangan membuat virtual memory ditempat dimana windows diinstall, sebaiknya membuat virtual memory di Harddisk B. Kalau membuat virtual memory ditempat yang sama akan memperlambat akses ke virtual memory, kecuali kita hanya memiliki satu harddisk.

Sejarah dan Pengertian Virtual Machine

Mesin virtual. Mesin penyedia layanan yang bersifat tidak nyata. Biasanya virtual machine ini berjalan dibawah suatu sistem operasi

Virtual machine, atau mesin virtual, yaitu program sistem untuk melakukan pengontrolan program terhadap pemakaian sumber daya perangkat keras. Fungsinya adalah untuk pengontrolan program dalam pemberian fasilitas sumberdaya yang ada kepada proses dari pengguna, misalnya untuk mendapatkan CPU dan memori.


DEFINISI VIRTUAL MACHINE

Mesin virtual pada mulanya didefinisikan oleh Gerard J. Popek dan Robert P. Goldberg pada tahun 1974 sebagai sebuah duplikat yang efisien dan terisolasi dari suatu mesin asli. Pada masa sekarang ini, mesin-mesin virtual dapat mensimulasikan perangkat keras walaupun tidak ada perangkat keras aslinya sama sekali. Contoh, program yang ditulis dalam bahasa Java akan dilayani oleh Java Virtual Machine (JVM) dengan cara memberikan perintah-perintah yang dimengerti JVM yang selanjutnya akan memberikan hasil yang diharapkan. Dengan memberikan layanan seperti ini kepada program tersebut, perangkat lunak JVM ini berlaku sebagai sebuah "mesin virtual", sehingga program tidak lagi perlu untuk mengakses langsung melalui sistem operasi ataupun perangkat keras yang sangat bervariasi dan memerlukan pemrograman masing-masing secara spesifik.

Mesin virtual terdiri dari dua kategori besar, dipisahkan menurut cara penggunaan dan tingkat keterhubungannya dengan mesin-mesin aslinya. Sebuah mesin virtual sistem adalah perangkat yang berupa platform sistem yang lengkap dan dapat menjalankan sebuah sistem operasi yang lengkap pula. Sebaliknya, mesin virtual proses didesain untuk menjalankan sebuah program komputer tertentu (tunggal), yang berarti mesin virtual ini mendukung proses tertentu juga. Karakteristik mendasar dari sebuah mesin virtual adalah batasan-batasan bagi perangkat lunak yang berjalan di dalam mesin tersebut, sumber daya yang dibatasi, dan tidak dapat mengakses ke luar tembok batasan dunia maya itu.
STRUKTUR CARA KERJA VIRTUAL MACHINE

Dasar logika dari konsep mesin virtual atau virtual machine adalah dengan menggunakan pendekatan lapisan-lapisan (layers) dari sistem komputer. Sistem komputer dibangun atas lapisan-lapisan. Urutan lapisannya mulai dari lapisan terendah sampai lapisan teratas adalah sebagai berikut:

• Perangkat keras
• Kernel
• Sistem program

Kernel, yang berada pada lapisan kedua, menggunakan instruksi perangkat keras untuk menciptakan seperangkat system call yang dapat digunakan oleh komponen- komponen pada level sistem program. Sistem program kemudian dapat menggunakan system call dan perangkat keras seolah-olah pada levelyang sama. Meski sistem program berada di level tertinggi, namun program aplikasi bisa melihat segala sesuatu di bawahnya (pada tingkatan) seakan-akan mereka adalah bagian dari mesin. Pendekatan dengan lapisan-lapisan inilah yang kemudian menjadi kesimpulan logis pada konsep mesin virtual atau virtual machine (VM). Konsep dasar dari mesin virtual ini tidak jauh berbeda dengan pendekatan terlapis, hanya saja konsep ini memberikan sedikit tambahan berupa antarmuka yang menghubungkan perangkat keras dengan kernel untuk tiap-tiap proses menunjukkan konsep tersebut. Mesin virtual menyediakan antar muka yang identik untuk perangkat keras yang ada. Sistem operasi membuat ilusi untuk beberapa



Meskipun konsep ini cukup baik, namun sulit untuk diimplementasikan, ingat bahwa system menggunakan metode dual-mode. Mesin virtual hanya dapat berjalan pada monitor-mode jika berupa sistem operasi, sedangkan mesin virtual itu sendiri berjalan dalam bentuk user-mode. Konsekuensinya, baik virtual monitor-mode maupun virtual user-mode harus dijalankan melalaui physical user mode. Hal ini menyebabkan adanya transfer dari user-mode ke monitor-mode pada mesin nyata, yang juga akan menyebabkan adanya transfer dari virtual user-mode ke virtual monitor-mode pada mesin virtual. Sumber daya (resource) dari computer fisik dibagi untuk membuat mesin virtual. Penjadwalan CPU dapat membuat penampilan bahwa user mempunyai prosessor sendiri. Spooling dan system file dapat menyediakan card reader virtual dan line printer virtual. Terminal time sharing pada user melayani sebagai console operator mesin virtual.
Keuntungan dan kerugian konsep mesin virtual adalah sebagai berikut :
• Konsep mesin virtual menyediakan proteksi yang lengkap untuk sumber daya system
sehingga masing-masing mesin virtual dipisahkan mesin virtual yang lain. Isolasi ini
tidak memperbolehkan pembagian sumber daya secara langsung
• Sistem mesin virtual adalah mesin yang sempurna untuk riset dan pengembangan
system operasi. Pengembangan system dikerjakan pada mesin virtual, termasuk di
dalamnya mesin fisik dan tidak mengganggu operasi system yang normal.
• Konsep mesin virtual sangat sulit untuk mengimplementasikan kebutuhan dan
duplikasi yang tepat pada mesin yang sebenarnya.
HUBUNGAN VIRTUAL MACHINE DENGAN SISTEM OPERASI
Virtual machine biasanya digunakan untuk penelitian atau media untuk riset dalam pengembangan sistem operasi karena pengembangan sistem yang dikerjakan pada mesin virtual, termasuk di dalamnya mesin fisik dan tidak mengganggu operasi sistem yang normal. Dijaman sekarang ini virtual machine digunakan untuk mempelajari sistem operasi dan mungkin kita sering menggunakan yang biasanya disebut VMware 

Tidak ada komentar:

Posting Komentar