Tugas 4 Pengantar Telematika (Semester 7)
OSGI (Open Service
Gateway Initiative)
OSGI (Open Service Gateway Initiative) adalah sebuah rencana industri untuk
cara standar untuk menghubungkan perangkat seperti perangkat rumah tangga dan
sistem keamanan ke Internet. OSGI berencana menentukan program aplikasi
antarmuka (API) untuk pemrogram menggunakan, untuk memungkinkan komunikasi dan
kontrol antara penyedia layanan dan perangkat di dalam rumah atau usaha kecil
jaringan. OSGI API akan dibangun pada bahasa pemrograman Java. Program java
pada umumnya dapat berjalan pada platform sistem operasi komputer. OSGI adalah
sebuah interface pemrograman standar terbuka.
The OSGI Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah sebuah organisasi standar terbuka yang didirikan pada Maret 1999. Aliansi dan anggota – anggotanya telah ditentukan sebuah layanan berbasis Java platform yang dapat dikelola dari jarak jauh.
The OSGI Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah sebuah organisasi standar terbuka yang didirikan pada Maret 1999. Aliansi dan anggota – anggotanya telah ditentukan sebuah layanan berbasis Java platform yang dapat dikelola dari jarak jauh.
Bagaimana spesifikasi dari OSGI ?
Inti bagian dari spesifikasi ini adalah suatu kerangka kerja yang mendefinisikan aplikasi model manajemen siklus hidup, sebuah layanan registrasi, sebuah lingkungan eksekusi dan modul. Berdasarkan kerangka ini, sejumlah besar OSGI layers, API, dan Jasa telah ditetapkan.
Spesifikasi OSGI yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGI. OSGI Alliance yang memiliki program kepatuhan yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGI implementasi berisi lima entri.
Spesifikasi OSGI yang sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan (misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang ada, seperti orang – orang LonWorks (lihat kontrol jaringan), CAL, CEBus, HAVi, dan lain-lain.
Arsitektur dari OSGI
Ada kerangka OSGI yang menyediakan suatu lingkungan untuk modularisasi aplikasi ke dalam kumpulan yang lebih kecil. Setiap bundel adalah erat – coupled, dynamically loadable kelas koleksi, botol, dan file-file konfigurasi yang secara eksplisit menyatakan dependensi eksternal mereka (jika ada).
Kerangka kerja konseptual yang dibagi dalam bidang-bidang berikut:
1.Bundel
Kumpulan jar normal komponen dengan nyata tambahan header. Sebuah bundel adalah sekelompok kelas Java dan sumber daya tambahan yang dilengkapi dengan rincian file pada MANIFEST.MF nyata semua isinya, serta layanan tambahan yang diperlukan untuk memberikan kelompok termasuk kelas Java perilaku yang lebih canggih, dengan tingkat deeming seluruh agregat sebuah komponen.
2.Layanan
Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan, menerbitkan dan menemukan model dapat mengikat Java lama untuk menikmati objek (POJO). Siklus hidup menambahkan lapisan bundel dinamis yang dapat diinstal, mulai, berhenti, diperbarui dan dihapus. Buntalan bergantung pada lapisan modul untuk kelas loading tetapi menambahkan API untuk mengatur modul – modul dalam run time. Memperkenalkan lapisan siklus hidup dinamika yang biasanya bukan bagian dari aplikasi. Mekanisme ketergantungan luas digunakan untuk menjamin operasi yang benar dari lingkungan.
Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan, menerbitkan dan menemukan model dapat mengikat Java lama untuk menikmati objek (POJO). Siklus hidup menambahkan lapisan bundel dinamis yang dapat diinstal, mulai, berhenti, diperbarui dan dihapus. Buntalan bergantung pada lapisan modul untuk kelas loading tetapi menambahkan API untuk mengatur modul – modul dalam run time. Memperkenalkan lapisan siklus hidup dinamika yang biasanya bukan bagian dari aplikasi. Mekanisme ketergantungan luas digunakan untuk menjamin operasi yang benar dari lingkungan.
3. Layanan Registrasi (Services-Registry)
API untuk manajemen jasa (ServiceRegistration, ServiceTracker dan
ServiceReference).
OSGi Alliance yang telah ditentukan banyak layanan. Layanan yang ditentukan oleh antarmuka Java. Kumpulan dapat mengimplementasikan antarmuka ini dan mendaftarkan layanan dengan Layanan Registri. Layanan klien dapat menemukannya di registri, atau bereaksi ketika muncul atau menghilang.
OSGi Alliance yang telah ditentukan banyak layanan. Layanan yang ditentukan oleh antarmuka Java. Kumpulan dapat mengimplementasikan antarmuka ini dan mendaftarkan layanan dengan Layanan Registri. Layanan klien dapat menemukannya di registri, atau bereaksi ketika muncul atau menghilang.
4. Siklus Hidup (Life-Cycle)
API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan
uninstall) bundel.
5.Modul
Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
6.Keamanan
Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra didefinisikan kemampuan.
Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra didefinisikan kemampuan.
7. Pelaksanaan Lingkungan
Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentu.
Tidak ada daftar tetap eksekusi lingkungan, karena dapat berubah sebagai Java
Community Process menciptakan versi baru dan edisi Jawa. Namun, set berikut
saat ini didukung oleh sebagian besar OSGI implementasi:
- CDC-1.0/Foundation-1.0 •
- CDC-1.1/Foundation-1.1 •
- OSGi/Minimum-1.0 •
- OSGi/Minimum-1.1 •
- JRE-1.1 •
- Dari J2SE-1.2 hingga J2SE-1,6 •
(Automotive Multimedia Interface
Colaboration -AMI-C)
Kolaborasi
Antarmuka Otomotif Multimedia adalah suatu kelompok yang dibuat untuk
menciptakan standar umum yang digunakan dalam mengatur bagaimana suatu
perangkat alat elektronik bekerja misalnya komputer dan alat komunikasi
kendaraan. Dan memiliki anggota: Fiat, Ford, General Motors, Honda, Mitsubishi,
Nissan, PSA Peugeot-Citroen, Renault.
Automotive
Multimedia Interface Kolaborasi (AMIC) mengatakan akan menjadi tuan rumah tiga
update internasional briefing untuk menjadi pemasok otomotif, komputer dan
teknologi tinggi industri elektronik.
“AMIC
telah mengalami kemajuan yang signifikan dalam satu tahun terakhir ini dalam
menyelesaikan struktur organisasi dan mencapai kesepakatan tentang persyaratan
yang diperlukan untuk hardware dan software yang baik di masa depan untuk mobil
dan truk,” Jurubicara AMIC Dave Acton berkata, “Dan sekarang sudah saatnya bagi
kita untuk bertemu dengan pemasok dan mereka yang tertarik untuk menjadi
pemasok untuk memastikan kami pindah ke tahap berikutnya pembangunan kita
bersama-sama. “
Acton
menekankan bahwa AMIC terbuka untuk semua pemasok yang tertarik bisnis
elektronik. AMIC dibentuk pada bulan September l998 dan saat ini dipimpin oleh
12 produsen otomotif dan anak perusahaan yang meliputi: BMW, DaimlerChrysler,
Ford, Fiat, General Motors, Honda, Mitsubishi, Nissan, PSA / Peugeot-Citroen,
Renault, Toyota, dan VW. Seorang juru bicara mengatakan kelompok AMIC berencana
untuk mendirikan sebuah kantor di San Francisco di masa depan.
Proses
komunitas java
Arsitektur Java Virtual Machine
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.
APIs
Java Application
Programming Interface (JAVA API)
Java
API merupakan komponen-komponen dan kelas JAVA yang sudah jadi, yang memiliki
berbagai kemampuan. Kemampuan untuk menangani objek, string, angka, dsb.
Java API terdiri dari tiga bagian utama:
Java
Standard Edition (SE), sebuah standar API untuk merancang aplikasi desktop dan applets dengan
bahasa dasar yang mendukung grafis, keamanan, konektivitas basis data dan
jaringan.
Java
Enterprose Edition (EE), sebuah inisiatif API untuk merancang aplikasi serverdengan
mendukung untuk basis data.
Java
Macro Edition (ME), sebuah API untuk merancang aplikasi yang jalan pada alat
kecil seperti telepon genggam, komputer genggam dan pager.
Pada
saat ini teknologi java semakin berkembang, Sun Microsystem memperkenalkan Java
versi 1.2 atau lebih dikenal dengan nama Java 2 yang terdiri atas JDK dan JRE
versi 1.2. Pada Java 2 ini, java dibagi menjadi 3 kategori:
Java
2 Standart Edition (J2SE)
Kategori
ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada
level PC (Personal Computer)
Java
2 Enterprise Edition (J2EE)
Kategori
ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada
lingkungan entriprise dengan menambahkan fungsionalitas-fungsionalitas java
semacam EJB (Enterprise Java Bean), Java CORBA, Servlet dan JSP serta Java XML
(Extensible Markup Language)
Java
2 Micro Edition (J2ME)
Kategori
ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi java pada
handled devices atau perangkat-perangkat semacam handphone, Palm,PDA, dan
Pocket PC. J2ME dirancang untuk dapat menjalankan program Java pada
perangkat-perangkat semacam handphone dan PDA, yang memiliki karakteristik yang
berbeda dengan sebuah komputer biasa, misalnya kecilnya jumlah memori pada
handphone dan PDA. J2ME terdiri atas komponen-komponen sebagai berikut Java
Virtual Machine (JVM) dan Java API (Application Programming Interface) serta
Tools lain untuk pengembangan aplikasi Java semacam emulator Java Phone dan
emulator Motorolla. Dalam J2ME dibagi menjadi dua bagian yang dikenal dengan
istilah configurationdan profile.
PROSES
KOMUNITAS JAVA (JAVA COMMUNITY PROCESS (JCP)
Setelah
pembahasan mengenai jenis platform dan perkembangan yang ada pada JAVA.
sekarang saya akan memcoba memberikan informasi tentang siapa yang
mengembangkan kedua platform JAVA tersebut.
Platform
yang ada pada JAVA dikembangkan oleh yang namanya Java Community Process (JCP).
JCP didirikan pada tahun 1998, merupakan suatu proses formal yang memungkinkan
pihak-pihak yang tertarik untuk terlibat dalam mengembangkan versi dan
fitur dari platform JAVA tersebut. Di dalam JCP terdapat yang
namanya Java Specification Request’s atau JSRs. JSRs adalah kumpulan
dokumen formal yang menggambarkan spesifikasi dan teknologi yang diusulkan oleh
orang-orang yang terlibat dalam JCP untuk melakukan
penambahan fitur-fitur yang terdapat pada platform JAVA tersebut.
Pada
Spesifikasi untuk J2SE, J2EE dan J2ME perkembangannya dibawah pengawasan Java
Community Process (JCP). Spesifikasi yang dihasilkan adalah Java Specification
Request (JSR). JCP terdiri dari para ahli dari berbagai perusahaan yang
tergabung untuk membentuk Spesification. JSR ini melalui beberapa tahap pada
JCP sebelum selesai. Setiap JSR diberi nomor
sumber:
Recent Comments