Rabu, 27 Februari 2013

pengertian virtual memory


 Dalam ilmu komputer, memori virtual adalah teknik manajemen memori yang dikembangkan untuk kernel multitugas. Teknik ini divirtualisasikandalam berbagai bentuk arsitektur komputer dari komputer penyimpanan data (seperti memori akses acak dan cakram penyimpanan), yang memungkinkan sebuah program harus dirancang seolah-olah hanya ada satu jenis memori, memori "virtual", yang bertindak secara langsung beralamat memori baca/tulis (RAM).
Sebagian besar sistem operasi modern yang mendukung memori virtual juga menjalankan setiap proses di ruang alamat khususnya sendiri. Setiap program dengan demikian tampaknya memiliki akses tunggal ke memori virtual. Namun, beberapa sistem operasi yang lebih tua (seperti OS/VS1 danOS/VS2 SVS) dan bahkan yang modern yang (seperti IBM i) adalah sistem operasi ruang alamat tunggal yang menjalankan semua proses dalam ruang alamat tunggal yang terdiri dari memori virtual.
Memori virtual membuat pemrograman aplikasi lebih mudah oleh fragmentasi persembunyian dari memori fisik; dengan mendelegasikan ke kernel beban dari mengelola hierarki memori (sehingga menghilangkan keharusan untuk program dalam mengatasi hamparan secara eksplisit); dan, bila setiap proses berjalan dalam ruang alamat khususnya sendiri, dengan menghindarkan kebutuhan untuk merelokasi kode program atau untuk mengakses memori dengan pengalamatan relatif.
Virtualisasi memori adalah generalisasi dari konsep memori virtual.
Memori virtual (dalam bahasa Inggris: virtual memory) adalah sebuah mekanisme yang digunakan oleh aplikasi untuk menggunakan sebagian dari hierarki memori seolah-olah ia menggunakannya sebagai RAM wujud yang terpasang di dalam sebuah sistem. Mekanisme ini beroperasi dengan cara memindahkan beberapa kode yang tidak dibutuhkan ke sebuah berkas di dalam kandar keras (hard drive) yang disebut dengan berkas tukar, berkas halaman atau tukar petak. - Selengkapnya

Jadi, Virtual Memori adalah suatu sistem yang digunakan oleh sistem operasi untuk menggunakan sebagian dari memori sekunder (Harddisk). Seolah-olah sistem tersebut menggunakan memori internal / primary (RAM) fisik yang terpasang pada sebuah sistem komputer. Cara kerja sistem ini beroperasi dengan cara memindahkan beberapa kode yang tidak dibutuhkan ke sebuah berkas pada Hard Drive yang biasa disebut dengan Page File. Proses pemakaian virtual memori pada windows umumnya dapat dilihat di Task Manager.


Beberapa keuntungan penggunaan memori virtual adalah sebagai berikut:
  • 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.
  • 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.
  • 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.
Beberapa sistem operasi memerlukan yang namanya virtual memory. Layaknya Linux yang membutuhkan swap, microsoft windows vista ataupun XP pun membutuhkan yang namanya virtual memory. Pengertian dari Virtual memory itu sendiri yakni memori sementara yang digunakan komputer untuk menjalankan berbagai program aplikasi ataupun menyimpan data yang membutuhkan memory yang lebih besar dari memory yang telah tersedia ( Memory fisik seperti RAM, baca disini untuk lebih lengkap ). Program ataupun data yang tidak muat dimasukan pada memory asli ( RAM ), akan disimpan ke dalam sebuah Pagging FilePengertian Pagging fileialah data yang hanya disimpan sementara atau bisa disebut swap. Pada sistem operasi linux kita diharuskan untuk membuat dua partisi utama yaitu untuk system dan untuk swap. Virtual Memory ini Berbeda halnya dengan Memory fisik seperti RAM, karena ram merupakan komponen yang termasuk kedalam golongan hardware. Walapun dalam kenyatannya Virtual Memory ini disimpan di harddisk, tetapi kerjannya itu tidak tampak, artinya berjalan secara software namun disimpan dihardware. Data yang disimpan ini tidak dapat bertahan lama, dalam artian hanya saat di gunakan saja. Dan bila komputer dimatikan, data data yang tadinya ada di virtual memory akan hilang. Jadi Fungsi Virtual Memoryialah untuk mengoptimalkan kinerja dari komputer, dengan tambahan memory, maka kemungkinan terjadi crash sangat kecil sekali. Ukuran dari paging file biasanya berbeda - beda, kalau ukuran paging file linuxialah 2 kali lipat dari memory aslinya. Misalkan kita memakai memory berkapasitas 512 MB, maka ukuran paging filenya yaitu 1 GB. Walaupun tidak harus 2 GB, tapi untuk memaksimalkan kinerja maka sebaiknya 2 kali lipatnya. Dan untuk Ukuran Paging file Di windows XP dan Vista Yaitu 1,5 kali dari kapasitas aslinya. Misalkan kita menggunakan memory sebesar 1 GB, maka paging filenya sebesar 1,5 GB. Dalam Xp maupun Vista paging file ini dinamai dengan pagefile.sys bila anda ingin mencarinya, pasti tidak akan ketemu, karena file ini disembunyikan atau hidden files.

Konsep Virtual Memori Pada Windows

Pada komputer kita, jumlah memory yang tersedia adalah jumlah antara memory fisik/RAM dengan virtual memory. Virtual memory adalah sebuah porsi pada hard disk yang di-set menyerupai RAM oleh system. Virtual memory merupakan ruang penyimpanan sementara yang digunakan untuk menjalankan program yang membutuhkan memory yang lebih besar dari memory fisik.
Virtual memory berupa file yang bernama pagefile.sys yang di-set hidden oleh Windows. File ini disebut paging file, yang digunakan untuk menampung program dan data yang tidak cukup di memory fisik. Virtual memory lebih lambat daripada memory fisik, dan penggunaan yang terlalu banyak dapat menurunkan kinerja sistem. Sehubungan dengan itu, windows memindahkan proses yang tidak terlalu sering ke virtual memory, dan membiarkan proses yang sering digunakan di memory fisik. Jadi ini sangat efisien.
Ukuran dari virtual memory dapat kita rubah, Windows merekomendasikan ukuran minimal dari vitual memory adalah 1.5 kali dari memory fisik kita. Jika anda memiliki beberapa harddisk, misal hardisk pertama adalah C: dan harddisk kedua adalah D: dan anda jarang menggunakan drive D:, anda dapat memindahkan virtual memory ke drive D:. Memindahkan virtual memory ke harddisk yang jarang digunakan akan sedikit meningkatkan performa. Alasannya adalah, pada harddisk pertama biasanya head dari harddisk sangat sibuk untuk membuka program, dokumen, menyimpan file dan masih banyak lagi. Tetapi ingat, cara ini tidak akan berguna bila drivenya terletak pada harddisk yang sama atau dengan kata lain sebuah partisi.
Dalam proses ini seluruh program akan ditempatkan 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.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 ke disk sekunder.

Konsep Virtual Memory:
• Pemisahan antara “user logical memory” (virtual) dengan “physical memory”.
• Logical address space (program) dapat lebih besar dari alokasi memori fisik yang diberikan.
• Hanya sebagian kecil dari program yang harus berada di memori untuk eksekusi.
• Terdapat mekanisme untuk melakukan alokasi dan dealokasi page (swapped out dan in) sesuai dengan kebutuhan (referensi program).
• Terdapat bagian dari disk menyimpan sisa page (program) yang sedang dijalankan di memori.
Virtual memory dapat diimplementasikan melalui :
• Demand paging, menerapkan konsep pemberian halaman pada proses
Demand segmentation, lebih kompleks diterapkan ukuran segmen yang bervariasi.

Konsep Virtual Memori Pada Linux

Memori

Organisasi dan manajemen memori sangat mempengaruhi kinerja komputer. Manajemen memori melakukan tugas penting dan kompleks berkaitan dengan:
• Memori utama sebagai sumber daya yang harus dialokasikan dan dipakai bersama diantara sejumlah proses yang aktif. Agar dapat memanfaatkan pemroses dan fasilitas masukan/keluaran secara efisien, maka diinginkan memori yang dapat menampung sebanyak mungkin proses.
• Upaya agar pemrogram atau proses tidak dibatasi kapasitas memori fisik di system komputer.
Linux memanfaatkan virtual memori untuk mendukung kinerja sistem. Sebagai sistem operasi multiprogramming, virtual memori dapat meningkatkan efisisensi sistem. Sambil proses menunggu bagiannya diswap masuk ke memori, menunggu selesainya operasi masukan/keluaran dan proses diblocked. Jatah waktu pemroses dapat diberikan ke proses-proses lain.

Manajemen memori Linux menyediakan:
1. Ruang alamat besar
Ruang alamat dapat lebih besar dibanding memori fisik yang tersedia
2. Proteksi
Tiap proses di sistem mempunyai ruang alamat maya tersendiri. Ruang ruang alamat maya itu sepenuhnya terpisah. Proses yang berjalan di satu aplikasi tidak dapat mengganggu proses lainnya.
3. Pemetaan memori
Dilakukan pemetaan antara memori maya ke memori fisik yang tersedia.
4. Memori maya bersama (shared virtual memory)
Memori maya bersama ini untuk menghemat ruang memori, seperti pustaka dinamis bagi beberapa proses.
Karena memori fisik lebih sedikit dibanding memori maya, maka sistem hanya memuatkan page-page maya yang saat itu sedang digunakan proses. Linux memuatkan page maya begitu diperlukan. Teknik ini disebut dengan demand paging. Saat pemroses berusaha mengakses alamat maya yang tidak di memori fisik, pemroses tidak dapat menemukan isian di tabel page maya. Pemroses menerbitkan page fault.
• Jika alamat maya yang dituju tak absah (yaitu proses berusaha mengakses alamat maya yang tidak dibolehkan), maka sistem operasi mengakhiri proses itu untuk memproteksi proses-proses lain.
• Jika alamat maya yang dituju absah tapi tidak sedang di memori fisik, maka sistem operasi harus membawa page ke memori dari disk. Pengaksesan disk memerlukan waktu lama. Jika terdapat proses lain yang dapat dijalankan, maka sistem operasi memilih proses lain untuk dijalankan. Proses dimulai kembali di instruksi dimana page fault terjadi. Pemroses dapat memetakan memori maya ke memori fisik saat dilakukan pengaksesan memori maya, sehingga proses terus berjalan. Jika tidak terdapat memori bebas, sistem operasi harus membuat ruang bagi page yang akan dimasukkan dengan membuang page lain dari memori.
• Jika page telah dimodifikasi (dirty-page), sistem operasi harus menjaga isi page. Ketika dipindahkan dari memori, disimpan di ruang khusus (swap space).
• Jika page yang dibuang berupa page belum ditulisi maka page tidak perlu dituliskan ke disk.
Linux menempatkan proses pada memori yang dibagi menjadi sejumlah partisi. Pemartisian ini bersifat dinamis maka jumlah, lokasi dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis. Proses yang akan masuk ke memori segera dibuatkan partisi sesuai kebutuhan. Linux menciptakan ruang disk tempat swap terlebih dahulu, saat proses diciptakan, ruang swap pada disk dialokasikan. Ketika proses harus dikeluarkan dari memori utama, proses selalu ditempatkan ke ruang yang telah dialokasikan, bukan ke tempat tempat berbeda setiap kali terjadi swap-out. Ketika proses berakhir, ruang swap pada disk didealokasikan.

Cara memperbesar Virtual memory

Mar 18, 2011 by  Under Tips & Trik - 243 Comments  
Sebelum kita mempelajari gimana caranya untuk memperbesar virtual memory pada OS (operating system) anda, alangkah baiknya kita perlu mengetahui apa itu virtual memory.
Virtual memory yang dimaksud adalah RAM (Random Acces Memory) dimana RAM ini berfungsi untuk menampung sementara data-data yang akan diproses di processor dan juga menampung sementara data-data yang telah di proses, dengan kata lain RAM adalah jembatan penghubung antara processor dengan hardisk.
Karena hardisk berupa piringan yang berputar (dengan kecepatan mekanik), maka kecepatan hardisk tidak akan bisa menyamai kecepatan processor. Maka dari itulah dibutuhkan alat untuk menyeimbangkan kedua kecepatan ini (processor & hardisk).
Kalau anda punya RAM dengan ukuran kecil dan menjalankan banyak aplikasi sekaligus (mutar music, ngetik dan lain-lain) maka RAM akan cepat penuh dan akhirnya ada pesan kalau Virtual Memory Low. jadi saya sarankan anda menambah kapasitas RAM computer, soalnya komputer akan jadi lambat dikarenakan memory RAM yang sudah penuh (seperti halnya jembatan yang penuh jadi mobil dan kendaraan lainnya yang lewat harus antri).
Catatan : Memory beneran dalam komputer kita ada dua, ROM (biasanya digunakan sebagai BIOS) dan RAM (yang biasanya orang-orang sebut sebagai “Memory komputer”
Oke, selanjutnya kita masuk pada tahap cara memperbesar virtual memory. Lihat langkah-langkah dibawah ini:
Kalau kamu menggunakan Windows XP, ini adalah cara memperbesar virtual memory:
  1. Klik Start – Control Panel.
  2. Double Klik icon System.
  3. Pada window System properties Klik Tab “Advanced”.
  4. Ada tiga bagian dalam tab advanced, klik tombol “Settings” pada bagian performance.
  5. Pada window performance options, klik tab “Advanced”.
  6. Klik tombol change pada bagian virtual memory (paling bawah).
  7. Rubah ukuran virtual memori menjadi 4 kali lipat sebelumnya.
Catatan : Karena perangkat lunak yang semakin canggih, sehingga dibutuhkan Random Access Memory yang semakin besar, maka sistem operasi generasi baru (dari jaman Windows jadul kalo tidak salah) menyediakan fasilitas untuk menggunakan kapasitas harddisk untuk digunakan sebagai memori virtual, alias memori palsu atau maya. Kalau ada pesan virtual memory low, itu karena alokasi harddisk untuk virtual memori yang diatur oleh perangkat lunak kamu, hampir habis terpakai oleh perangkat lunak yang sedang aktif.

2 komentar: