A. Sejarah Virtual Machines
Virtual machine pada awalnya didefinisikan
oleh Gerald J. Popek dan Robert P. Goldberg di tahun 1974, sebagai suatu
duplikat yang efisien dan terisolasi dari suatu mesin asli. Di masa yang sekarang
ini, virtual machine yang beredar mampu melakukan simulasi perangkat keras,
walaupun tak ada perangkat keras aslinya sekalipun.
Contohnya ialah program yang ditulis dalam
menggunakan bahasa Java akan dilayani oleh Java Virtual Machine (JVM) dengan
cara memberikan perintah-perintah yang dimengerti JVM yang selanjutnya mampu
memberikan hasil yang diharapkan.
Dengan memberikan layanan seperti ini
terhadap program tersebut, perangkat lunak JVM berlaku sebagai suatu mesin
virtual, sehingga program tak lagi membutuhkan akses secara langsung melalui sistem
operasi atau perangkat keras yang sangat bervariasi dan membutuhkan pemrograman
masing-masing secara spesifik.
Mesin virtual terdiri atas 2 kategori besar
yang dipisahkan menurut cara penggunaan dan tingkat keterhubungan dengan mesin
aslinya, yakni :
- System Virtual Machines, perangkat yang berupa platform sistem lengkap dan mampu menjalankan suatu sistem operasi dengan lengkap.
- Process Virtual Machines, didesain untuk menjalankan suatu program komputer tertentu saja, yang berarti virtual machine ini mendukung proses tertentu juga. Karakteristik yang paling dasar dari process virtual machines adalah batasan terhadap perangkat lunak yang berjalan di mesin tersebut, sumber daya yang terbatas dan tak bisa mengakeses di luar tembok batasan dunia maya.
1. System Virtual Machines
Keinginan dalam menjalankan beberapa sistem
operasi menjadi motif awal adanya virtual machine, sehingga memungkinkan
pembagian waktu diantara beberapa sistem operasi single-tasking. IBM menjadi sistem pertama yang mendukung
virtualisasi penuh, menerapkan pembagian waktu dengan menyediakan setiap
pengguna terhadap sistem operasi tunggal, Conversational Monitor System (CMS).
Berbeda dengan virtual memory, sebuah system
virtual machine memberikan hak kepada pengguna dalam menulis instruksi.
Pendekatan ini tentu memiliki keunggulan, seperti mampu menambahkan perangkat input
maupun output yang tidak diizinkan dalam sistem standar. Penggunaan virtual machine dalam mendukung sistem operasi tamu yang terpisah
tentu sangat populer dalam embedded
systems. Penggunaan yang paling umum ialah menjalankan sistem operasi
secara real-time, bersamaan dengan
sistem operasi lain yang tengah dijalankan, yang paling banyak disukai adalah
Linux dan Windows.
2. Process Virtual Machines
Sebuah process
virtual machine terkadang disebut sebagai application virtual machine atau managed runtime environment (MRE) yang berjalan sebagai aplikasi
normal di suatu sistem operasi dan mendukung suatu proses yang berjalan. Process
virtual machines diimplementasikan dengan menggunakan interpreter, kinerja yang cukup
sebanding dengan bahasa pemrograman yang dikompilasi yang mampu dicapai dengan
menggunakan just-in-time compilation. Jenis virtual machine yang satu ini kian
populer dengan bahasa pemrograman Java yang berhasil diimplementasikan
menggunakan virtual machine Java. Ada juga contoh lainnya seperti .NET
Framework yang berjalan pada virtual machine, disebut dengan Common Language
Runtime. Semua itu bisa berfungsi sebagai lapisan abstraksi terhadap berbagai
macam bahasa komputer.
C. Fungsi Virtual Machines
1. Berganti ke Versi Sistem Operasi yang lebih baru
1. Berganti ke Versi Sistem Operasi yang lebih baru
Dengan menggunakan virtual machine, pengguna
bisa melakukan adopsi metode yang aman untuk menjalankan versi pengembangan,
contohnya menjalankan sistem operasi Windows 10 pada komputer pengguna yang tengah
menjalankan sistem operasi Windows 8. Dengan adanya metode ini, memungkinkan para
pengguna untuk melakukan ujicoba terhadap sistem operasi Windows 10 tanpa harus
menginstall versi Windows di komputer/laptop secara langsung.
2. Virtual Dari Dekstop Pengguna
Ada kecenderungan yang muncul di kalangan
komunitas IT di mana pengguna menyimpan aplikasi desktop dan sistem operasi di
dalam sebuah virtual machine yang terpisah dari server dan menggunakan personal
computer (PC) sebagai "thin client"
ke server. Setiap pengguna terisolasi dari semua
pengguna yang lain dengan menggunakan bantuan teknologi virtual machine dan
pemeliharaan aplikasi yang dialihkan dari setiap desktop ke data center.
3. Melakukan Pengujian dengan sistem Operasi yang Berbeda
Pengguna juga bisa dengan mudah menginstal
distribusi Linux yang berbeda atau sistem operasi lain yang kurang dikenal
dalam virtual machine dalam melakukan suatu bentuk eksperimen dan memahami
bagaimana sistem operasi tersebut bekerja. Beberapa sistem operasi bisa berjalan di
server yang sama, sehingga bisa menghilangkan kebutuhan dalam mendedikasikan 1
fisik server ke 1 aplikasi.
4. Melakukan Tahap Pengujian Software di Banyak Platform yang Berbeda
Pada saat dibutuhkan adanya suatu pengujian,
apakah suatu aplikasi bisa bekerja pada beberapa sistem operasi, atau hanya
bisa bekerja di beberapa versi sistem operasi Windows.Pengguna bisa dengan mudah menginstal di
masing-masing virtual machine, dibandingkan harus menginstal di banyak komputer
yang berbeda.
5. Komplikasi Server yang Berbeda dalam penggunaan Bisnis
Dalam tujuan bisnis dengan
aplikasi yang berjalan di beberapa server, server- server yang ada bisa
dimasukkan ke dalam virtual machine dan dijalankan pada hanya 1 personal computer (PC). Sehingga, hal ini tak menyebabkan adanya
masalah keamanan yang mungkin saja bisa terjadi saat menjalankan server yang
berbeda di sistem operasi yang sama. Virtual
machine juga bisa dipindahkan dari fisik server yang satu ke fisik server yang
lainnya.
D. Cara Kerja Virtual Machines
Virtual
machine bekerja dengan cara membuat layer hardware
virtual pada sebuah komputer. Virtual
machine akan membuat storage virtual,
CPU virtual, RAM virtual DVD ROM virtual dan berbagai macam komponen virtual
yang lain yang selanjutnya dijadikan sebuah virtual
machine utuh.
Layar software
yang dinamakan dengan hypervisor inilah yang secara dinamis akan
mengalokasikan resource (sumber daya)
pada host computer (komputer fisik)
ke virtual machine sesuai dengan apa
yang dibutuhkan.
Saat virtual
machine berhasil diinstal sistem operasi, maka sistem operasi yang ada di virtual machine itu (guest operating system) akan berjalan
secara terisolasi di sistem operasi utama (host
operating system).
Setiap state dari virtual machine tersebut
akan tersimpan ke dalam bentuk file yang selanjutnya bisa digandakan oleh
pengguna dan dipindahkan dengan mudah. Dengan begitu, pengguna bisa menjalankan
beberapa virtual machine dengan beberapa spesifikasi dan sistem operasi, hanya
dari 1 komputer fisik saja.
E. Kelebihan dan Kekurangan Virtual Machines
1. Kelebihan Virtual Machines
- Command Management Interface (CMI) yang sederhana untuk semua fungsi sistem operasi.
- Memungkinkan penggunaan snapshot virtual machine sebagai pengujian
- Tidak ada perangkat keras (hardware) yang harus di pelihara.
- Meningkatkan penggunaan perangkat keras ( hardware ) komputer.
- Mampu menekan biaya operasi
- Ketersediaan yang tinggi
- Mampu menjalankan program lain yang belum tentu sama di host machine.
- Memungkinkan kembali kepada sebelumnya jika terjadi kesalahan.
- Segi keamanan yang baik.
- Memungkinkan mendefinisikan suatu jaringan dari virtual machine.
- Kemudahan dalam penggunaan.
- Sebagai bahan belajar dan membandingkan berbagai sistem operasi.
- Implementasi yang sulit,terlebih untuk orang awam.
- Sistem operasi pada host machine dan Virtual machine berjalan lambat.
- Kesulitan dalam sistem penyimpanan.
- Jika host machine mati, maka Virtual machine tak dapat diakses.
- Kemungkinan terjadi overheating pada memori dan processor.
1. Virtual Box
Oracle VM VirtualBox merupakan perangkat lunak virtualisasi yang bisa dipergunakan dalam mengeksekusi sistem operasi tambahan di dalam sistem operasi utama. Sebagai contoh, apabila seseorang memiliki sistem operasi Microsoft Windows yang terpasang di dalam komputer, maka seseorang tersebut bisa juga menjalankan sistem operasi lain yang diinginkan pada sistem operasi Microsoft Windows.Fungsi ini sangat penting apabila seseorang ingin melakukan suatu uji coba dan simulasi instalasi suatu sistem, tanpa harus kehilangan sistem yang sudah ada.
2. Parallels
Parallels Desktop for Mac merupakan sebuah
perangkat lunak virtualisasi perangkat keras yang ditujukan untuk Macintosh
dengan processor Intel. Pengembang software ini adalah Parallels, Inc.
3. VMWare
VMWare Workstation adalah suatu perangkat
lunak virtualisasi untuk arsitektur komputer x64 dan x86-64 dari VMWare, yang
menjadi bagian dari EMC Corporation. Perangkat lunak ini digunakan untuk
membuat banyak komputer virtual dan digunakan secara simultan dengan sistem
operais yang digunakan.
4.QEMU
QEMU adalah singkatan dari Quick Emulator,
yakni emulator yang tidak berbayar dan dikembangkan dengan open-source (sumber
terbuka) yang melakukan virtualisasi perangkat keras.
QEMU menjadi mesin virtual monitor yang
dihosting, mengemulasi processor mesin melalui terjemahan biner dinamis dan
menyediakan 1 set perangkat keras dan model perangkat yang berbeda bagi mesin,
di mana mampu menjalankan berbagai macam sistem operasi tamu.
Hal ini juga bisa digunakan dengan KVM
dalam menjalankan mesin virtual dengan kecepatan yang mendekati aslinya. QEMU
bisa melakukan emulasi terhadap proses tingkat pengguna, yang memungkinkan
aplikasi dikompilasi dalam 1 arsitektur untuk dijalankan pada yang lainnya.
5. Microsoft Virtual PC
Microsoft Virtual PC merupakan suatu program virtualisasi yang dijalankan pada personal computer
(PC) berbasis sistem
operasi Microsoft Windows
dan bisa juga dijalankan di atas komputer Apple Macintosh berbasis sistem
operasi Mac OS. Pada awalnya, aplikasi ini ditulis leh Connectix, namun
selanjutnya diakuisisi oleh Microsoft Corporation.
Tidak ada komentar:
Posting Komentar