Senin, 13 Januari 2014

Virtual Machine


Virtual adalah istilah yang awalnya berasal dari optik, untuk memahami objek di cermin. Objek dalam cermin adalah cerminan dari suatu benda fisik yang sebenarnya, tetapi cermin tidak benar-benar objek. Ini berarti bahwa gambar tersebut terlihat seperti objek aktual dan terlihat menjadi di lokasi yang sama.

Sebuah mesin virtual (VM) adalah implementasi perangkat lunak dari sebuah mesin (misalnya komputer) yang mengeksekusi program-program seperti mesin fisik. Mesin virtual dipisahkan menjadi dua kategori utama, didasarkan pada penggunaan dan tingkat korespondensi untuk setiap mesin nyata. Sebuah mesin virtual sistem menyediakan lengkap platform sistem yang mendukung pelaksanaan lengkap sistem operasi (OS). Sebaliknya, mesin virtual proses didesain untuk menjalankan satu program , yang berarti bahwa ia mendukung satu proses . Karakteristik penting dari sebuah mesin virtual adalah bahwa perangkat lunak yang berjalan di dalam terbatas pada sumber daya dan abstraksi yang disediakan oleh mesin virtual tidak dapat keluar dari dunia virtual.

Sebuah proses VM, kadang-kadang disebut mesin virtual aplikasi, berjalan sebagai aplikasi biasa di dalam sebuah OS dan mendukung proses tunggal. Hal ini tercipta saat proses itu dimulai dan hancur ketika keluar. Tujuannya adalah untuk menyediakan sebuah platform program lingkungan independen-yang abstrak jauh rincian perangkat keras yang mendasarinya atau sistem operasi, dan memungkinkan sebuah program untuk mengeksekusi dengan cara yang sama pada platform apapun. 

Sebuah proses VM menyediakan tingkat abstraksi tinggi - yang dari bahasa pemrograman tingkat-tinggi (dibandingkan dengan tingkat ISA abstraksi-rendah sistem VM). Proses VMS diimplementasikan menggunakan interpreter , kinerja yang sebanding dengan bahasa pemrograman dikompilasi dicapai dengan menggunakan just-in waktu kompilasi- . 

Jenis VM telah menjadi populer dengan bahasa pemrograman Java , yang diimplementasikan dengan menggunakan mesin virtual Java . Contoh lain termasuk mesin virtual Parrot , yang berfungsi sebagai lapisan abstraksi untuk bahasa beberapa diinterpretasikan, dan Framework. NET , yang berjalan pada sebuah VM yang disebut Common Language Runtime . 

Sebuah kasus khusus dari proses VMS adalah sistem yang abstrak atas mekanisme komunikasi dari (berpotensi heterogen) cluster komputer . VM tersebut tidak terdiri dari sebuah proses tunggal, tetapi satu proses per mesin fisik di cluster. Mereka dirancang untuk memudahkan tugas pemrograman aplikasi paralel dengan membiarkan programmer fokus pada algoritma daripada mekanisme komunikasi yang disediakan oleh interkoneksi dan OS. Mereka tidak menyembunyikan fakta bahwa terjadi komunikasi, dan dengan demikian tidak berusaha untuk menyajikan cluster sebagai mesin paralel tunggal. 

Tidak seperti VM proses lainnya, sistem ini tidak menyediakan bahasa pemrograman tertentu, tetapi tertanam dalam bahasa yang sudah ada; biasanya sistem tersebut menyediakan binding untuk beberapa bahasa (misalnya, C dan FORTRAN ). Contohnya adalah PVM ( Paralel Virtual Machine ) dan MPI ( Message Passing Interface ). Mereka tidak ketat mesin virtual, sebagai aplikasi yang berjalan di atas masih memiliki akses ke semua layanan OS, dan karenanya tidak terbatas pada model sistem yang disediakan oleh "VM". 

Teknologi virtual  machine memiliki  banyak kegunaan seperti  memungkinkan konsolidasi  perangkat keras,  memudahkan  recovery  sistem,  dan menjalankan perangkat lunak terdahulu.  Salah  satu penerapan penting dari teknologi  VM adalah   integrasi   lintas  platform. Beberapa   penerapan   lainnya   yang   penting adalah:

1.      Konsolidasi  server
Jika beberapa server menjalankan aplikasi yang hanya memakan sedikit sumber daya, VM dapat digunakan untuk menggabungkan aplikasi-aplikasi tersebut sehingga berjalan pada satu server saja, walaupun aplikasi tersebut memerlukan sistem operasi yang berbeda-beda.

2.      Otomasi dan konsolidasi lingkungan pengembangan dan testing
Setiap VM  dapat   berperan   sebagai   lingkungan   yang   berbeda,   ini  memudahkan pengembang sehingga tidak perlu menyediakan lingkungan tersebut secara fisik.

3.      Menjalankan perangkat  lunak terdahulu
Sistem operasi dan perangkat lunak terdahulu dapat dijalankan pada sistem yang lebih baru.

4.      Memudahkan  recovery  sistem
Solusi   virtualisasi   dapat   dipakai   untuk rencana recovery sistem yang memerlukan portabilitas dan fleksibilitas antar platform.

5.      Demonstrasi perangkat lunak
Dengan teknologi VM, sistem operasi yang bersih dan konfigurasinya dapat disediakan secara cepat.

KELEBIHAN VIRTUAL MACHINE (VM)

1.      Hal  keamanan.
VM memiliki  perlindungan yang  lengkap pada berbagai sistem  sumber   daya,   yaitu   dengan  meniadakan   pembagian   sumber   daya secara  langsung,  sehingga  tidak ada masalah proteksi  dalam VM.  Sistem VM adalah kendaraan yang sempurna untuk penelitian dan pengembangan sistem operasi. Dengan VM, jika terdapat suatu perubahan pada satu bagian dari mesin, maka dijamin tidak akan mengubah komponen lainnya.

2.      Memungkinkan   untuk  mendefinisikan   suatu   jaringan   dari   Virtual Machine   (VM).
Tiap-tiap   bagian  mengirim  informasi  melalui   jaringan komunikasi  virtual.  Sekali   lagi,   jaringan  dimodelkan   setelah komunikasi fisik jaringan diimplementasikan pada perangkat lunak.

KEKURANGAN VIRTUAL MACHINE.  Beberapa kesulitan utama dari konsep VM, diantaranya adalah:

1.      Sistem penyimpanan.
Sebagai contoh kesulitan dalam sistem penyimpanan adalah   sebagai   berikut:   Andaikan   kita   mempunyai   suatu   mesin   yang memiliki  3  disk drive  namun  ingin mendukung 7 VM.  Keadaan  ini   jelas tidak memungkinkan bagi kita untuk dapat mengalokasikan setiap disk drive untuk  tiap VM,  karena perangkat   lunak untuk mesin virtual   sendiri  akan membutuhkan   ruang disk   secara   substansial  untuk menyediakan  memori virtual  dan  spooling.  Solusinya   adalah dengan menyediakan disk  virtual atau   yang   dikenal   pula   dengan  minidisk,   dimana   ukuran   daya penyimpanannya   identik   dengan   ukuran   sebenarnya.   Dengan   demikian, pendekatan VM juga menyediakan sebuah antarmuka yang identik dengan perangkat keras yang mendasari.

2.      Pengimplementasian sulit.
Meski konsep VM cukup baik, namun VM sulit diimplementasikan.
Contoh virtual machine : Vmware, Xen VMM , Java VM

Jenis-jenis dari VM adalah
  1.  VM sistem di mana sebuah VM dapat menjalankan sebuah  sistem operasinya  sendiri.
  2.  VM proses  di  mana VM hanya menjalankan sebuah proses saja.

Kemudian VM juga dibagi berdasarkan tingkat virtualisasinya:
  1. Virtualisasi   penuh   yang  mensimulasikan   seluruh   fitur  perangkat  keras   sehingga memungkinkan perangkat   lunak berjalan pada VM tanpa  modifikasi.
  2.  Virtualisasi   paruh,   di  mana   tidak   semua   fitur perangkat keras disimulasikan.
  3. Virtualisasi asli, yang mana merupakan   virtualisasi   penuh   yang   digabungkan   dengan   bantuan   perangkat keras yang mendukung virtualisasi.





Tidak ada komentar:

Posting Komentar