Jumat, 08 Januari 2016

Tugas 4 Pengantar Telematika

Proses Komunitas Java (Java Community Process JCP)

Arsitektur Java Virtual Machine
Java Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode arsitektur netral. Kelas pemanggil memanggil file.class dari kedua program Java dan Java API untuk dieksekusi oleh interpreter Java. Interpreter Java mungkin sebuah perangkat lunak interpreter yang menterjemahkan satu kode byte pada satu waktu, atau mungkin sebuah just-intime (JIT) kompiler yang menurunkan bytecode arsitektur netral kedalam bahasa mesin untuk host computer.
Dalam spesifikasi mesin virtual Java, behaviour mesin virtual digambarkan dari sisi subsistem, area memori, tipe data, dan instruksi. Arsitektur Java Virtual Machine menunjukkan diagram blok mesin virtual Java yang mencakup subsistem utama dan daerah memori yang diuraikan dalam spesifikasi, masing-masing mesin virtual Java memiliki subsistem class loader yaitu mekanisme untuk memuat tipe (kelas dan interface) diberikan nama-nama yang memenuhi syarat. Setiap mesin virtual Java juga memiliki mesin eksekusi yaitu mekanisme yang bertanggung jawab untuk melaksanakan instruksi yang terdapat dalam methods of loaded classes.
Ketika  Java  Virtual  Machine  menjalankan  sebuah  program,  butuh  memori  untuk menyimpan  banyak hal, termasuk  bytecode  dan  banyak  informasi   lain  ekstrak  dari  loaded  class  files,  objek  program  instantiate, parameter methods, nilai return, variabel lokal, dan antara hasil perhitungan.  Java virtual machine  mengatur memori yang dibutuhkan untuk mengeksekusi program ke beberapa runtime area data.
Meskipun  terdapat   runtime  area  data  yang  sama  dalam  beberapa  bentuk  di  setiap  implementasi  JVM, spesifikasi  cukup  abstrak.  Beberapa  runtime  area  data  membagi  antara  application's  threads  dan  lainnya yang unik ke  individual threads. Setiap contoh dari JVM memiliki satu area  method  dan satu  heap.  Daerah ini  dibagi  oleh  semua  thread  yang  sedang  berjalan  dalam  JVM.  Ketika  mesin  virtual  memuat  file  class, kemudian menguraikan informasi tentang tipe dari data biner yang terdapat dalam file class. Ketika program berjalan, mesin virtual tempat semua obkjekprogram instantiate ke heap.
Java stack  terdiri dari stack frames (frame).  Sebuah  frame  berisi  tumpukan  dari  satu  pemanggilan  metode Java.  Ketika thread memanggil  sebuah method, mesin virtual Java mendorong  frmae  baru ke thread Java stack. Ketika method sudah lengkap mesin virtual muncul dan membuang frame untuk method tersebut.