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:
- 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.
- 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 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.
- Siklus Hidup (Life-Cycle)
API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel.
- Modul
Lapisan
yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana
sebuah bungkusan dapat mengimpor dan mengekspor kode).
- Keamanan
Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra didefinisikan kemampuan.
- 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
ref : http://anjar77.wordpress.com/2012/12/30/arsitektur-open-services-gateway-initiative-osgi/
Tidak ada komentar:
Posting Komentar