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.
Mengetahui bagaimana spesifikasi dari OSGI
Inti bagian dari spesifikasi 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.
Mengetahui bagaimana 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.
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.
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).
6. Keamanan
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
0 komentar:
Posting Komentar