Nama : Sopyana Pangestika
Npm : 16111868
Kelas : 4 KA 41
Proses Komunitas Java (Java Community Process)
Java dikembangkan mengacu pada standar
yang ditentukan oleh komite didalam JCP (Java Community Process). Spesifikasi
Java tidak sekedar fondasi VMnya, tetapi menyangkut hampir semua aspek, mulai
dari mekanisme mengakses devices I/O, komponen pertukaran objek, sampai
pengembangan container. JCP merupakan badan yang bertanggung jawab terhadap
standar teknologi Java.
Dikembangkan mengacu pada standar yang
ditentukan oleh komite didalam JCP (Java Community Process). Spesifikasi Java
tidak sekedar fondasi VMnya, tetapi menyangkut hampir semua aspek, mulai dari
mekanisme mengakses devices I/O, komponen pertukaran objek, sampai pengembangan
container. JCP merupakan badan yang bertanggung jawab terhadap standar
teknologi Java.
Virtual Machine
Sebuah mesin virtual (VM) adalah sebuah
perangkat lunak implementasi sebuah mesin (misalnya komputer) yang melaksanakan
program-program seperti mesin fisik. Sebuah mesin virtual pada awalnya
ditentukan oleh Popek dan Goldberg sebagai "yang efisien, terisolasi
duplikat dari mesin yang nyata". Saat menggunakan mesin virtual yang
mencakup tidak memiliki surat-menyurat langsung ke perangkat keras yang nyata.
Mesin virtual dipisahkan ke dalam dua
kategori utama, berdasarkan tingkat penggunaan dan korespondensi untuk mesin
nyata. Sebuah sistem mesin virtual yang lengkap menyediakan platform sistem
yang mendukung pelaksanaan lengkap sistem operasi (OS). Sebaliknya, mesin
virtual sebuah proses yang dirancang untuk menjalankan sebuah program, yang
berarti bahwa ia mendukung satu proses. Karakteristik penting dari sebuah mesin
virtual yang berjalan di dalam perangkat lunak adalah terbatas pada sumber daya
dan abstraksi yang disediakan oleh mesin virtual tidak dapat keluar dari dunia
virtual.
Contoh: Suatu program yang ditulis
dalam Java menerima jasa dari Java Runtime Environment (JRE) perangkat lunak
dengan mengeluarkan perintah untuk, dan menerima hasil yang diharapkan dari,
perangkat lunak Java. Dengan memberikan layanan ini untuk program tersebut,
perangkat lunak Java bertindak sebagai "mesin virtual", menggantikan
sistem operasi atau hardware untuk program yang biasanya akan disesuaikan.
Salah satu penerapan penting dari
teknologi VM adalah integrasi lintas platform. Beberapa penerapan lainnya yang
penting adalah :
- 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.
- 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.
- Menjalankan perangkat lunak terdahulu. Sistem operasi dan perangkat lunak terdahulu dapat dijalankan pada sistem yang lebih baru.
- Memudahkan recovery sistem. Solusi virtualisasi dapat dipakai untuk rencana recovery sistem yang memerlukan portabilitas dan fleksibilitas antar platform.
- Demonstrasi perangkat lunak. Dengan teknologi VM, sistem operasi yang bersih dan konfigurasinya dapat disediakan secara cepat.
Kelebihan Virtual Machine (VM)
- 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.
- 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.
- Beberapa OS lingkungan dapat hidup berdampingan pada komputer yang sama, dalam isolasi kuat satu sama lain
- Mesin virtual dapat memberikan set instruksi arsitektur (ISA) yang agak berbeda dari mesin yang sebenarnya
- Aplikasi provisioning, pemeliharaan, tingkat ketersediaan dan pemulihan bencana
Kekurangan Virtual Machine (VM)
- 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.
- Mesin virtual kurang efisien daripada mesin nyata karena secara tidak langsung mengakses perangkat keras
Proses Mesin Virtual
Sebuah proses VM, kadang-kadang disebut
aplikasi mesin virtual, berjalan sebagai aplikasi biasa di dalam sebuah OS dan
mendukung proses tunggal. Hal ini tercipta ketika proses itu dimulai dan hancur
ketika keluar. Tujuannya adalah untuk menyediakan sebuah platform-independen
lingkungan pemrograman yang abstrak pergi rincian perangkat keras yang
mendasarinya atau sistem operasi, dan memungkinkan sebuah program untuk
mengeksekusi dengan cara yang sama pada platform apapun.
Sebuah proses VM memberikan abstraksi
tingkat tinggi - yaitu yang tinggi tingkat bahasa pemrograman (dibandingkan
dengan tingkat rendah ISA abstraksi dari sistem VM). VMS proses
diimplementasikan menggunakan interpreter; kinerja yang sebanding dengan bahasa
pemrograman terkompilasi dicapai dengan menggunakan just-in-time compilation .
Jenis VM ini telah menjadi populer
dengan bahasa pemrograman Java, yang diimplementasikan menggunakan mesin
virtual Java. Contoh lain termasuk Bayan mesin virtual, yang berfungsi sebagai
lapisan abstraksi selama beberapa ditafsirkan lanugages, dan. NET Framework,
yang berjalan pada sebuah VM yang disebut Common Language Runtime.
Suatu kasus khusus VMS adalah proses
sistem yang abstrak atas mekanisme komunikasi yang (berpotensi heterogen)
komputer cluster. Seperti VM 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 satu mesin paralel.
Tidak seperti proses lain VMS, sistem
ini tidak menyediakan bahasa pemrograman tertentu, tetapi tertanam dalam bahasa
yang ada; biasanya sistem seperti menyediakan binding untuk beberapa bahasa
(misalnya, C dan FORTRAN). Examples are PVM ( Parallel Virtual Machine ) and
MPI ( Message Passing Interface ). 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 karena itu tidak terbatas pada model sistem yang disediakan oleh
"VM".
0 komentar:
Posting Komentar