Jumat, 29 November 2013

Java Community Process

Sumber :
http://www.master.web.id/
http://www.oracle.com/
http://nurpratamarekzy04.blogspot.com/



Nama   :   Diah Ayu Lestari
NPM   :   11110946



Nama Dosen   :   Rifki Amalia
Mata Kuliah   :   Pengantar Telematika





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.

Java Community Process atau JCP, didirikan pada tahun 1998, merupakan sebuah proses formal yang memungkinkan pihak-pihak yang tertarik untuk terlibat dalam definisi versi dan fitur dari platform Java. Java dikembangkan mengacu pada standar yang ditentukan oleh komite didalam JCP (Java Community Process).

Berikut ini adalah timeline dari Java Community Process :


Semua teknologi Java dikembangkan melalui Java Community Process (JCP). Ini adalah organisasi yang dipimpin oleh industri terbuka, dengan tujuan berkembang dengan platform Java. Ketika kebutuhan untuk komponen baru atau API teridentifikasi, inisiator menciptakan Request Java Specification (JSR) dan mengirimkannya ke masyarakat. Sebuah kelompok ahli kemudian dibentuk, dengan perwakilan dari perusahaan yang berpartisipasi, dengan tugas untuk membuat spesifikasi. JSR kemudian melewati JCP dan jika disetujui, spesifikasi ini kemudian dilepaskan ke masyarakat untuk implementasi.





Hasil dari JSR adalah :

  1. Sebuah Spesifikasi yang menjelaskan rincian dan mendefinisikan dasar-dasar JSR
  2. Sebuah Pelaksanaan Reference (RI) - yang merupakan implementasi aktual dari spesifikasi
  3. Sebuah Uji Kompatibilitas Kit (TCK) - yang merupakan serangkaian tes setiap pelaksanaan mengaku sesuai dengan spesifikasi kebutuhan untuk pergi melalui sebelum dilepaskan

Spesifikasi utama untuk setiap JSR bertanggung jawab untuk semua tiga komponen seperti dijelaskan di atas. Ada saat ini sejumlah Java ME JSRs berkaitan dengan teknologi, dan jumlah ini meningkat pesat.


JSRs Java ME Technology
Dalam keluarga teknologi Java ME ada sejumlah JSRs
yang mendefinisikan bagian yang berbeda dari platform dan komponen itu






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 Virtual Machine
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
  • 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.
  • Memungkinkan untuk mendefinisikan suatu jaringan dari Virtual Machine
Tiap-tiap bagian mengirim informasi melalui jaringan komunikasi virtual. Sekali lagi, jaringan dimodelkan setelah komunikasi fisik jaringan diimplementasikan pada perangkat lunak.


Kekurangan Virtual Machine

  • 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.
  • Pengimplementasian sulit



Java Virtual Machine




JVM adalah sebuah aplikasi yang berjalan di atas sebuah sistem operasi dan menerjemahkan bytecode program Java dan mengeksekusinya, sehingga secara konsep bisa dianggap sebagai sebuah interpreter. Proses pengeksekusian program Java dapat dilukiskan seperti berikut :



Dengan cara ini, sebuah program Java yang telah dikompilasi akan dapat berjalan di platform mana saja, asalkan ada JVM di sana.

Berikut adalah gambaran dari arsitektur Java Virtual Machine :







Tidak ada komentar:

Posting Komentar