OPEN SERVICES GATEWAY INITIATIVE
(OSGI)
OSGI (Open Service Gateway Initiative) adalah sebuah
rencana industri untuk cara standar untukmenghubungkan perangkat seperti
perangkat rumah tangga dan sistem keamanan ke Internet.OSGI berencana
menentukan program aplikasi antarmuka (API) untuk pemrogrammenggunakan, untuk
memungkinkan komunikasi dan kontrol antara penyedia layanan danperangkat di
dalam rumah atau usaha kecil jaringan. OSGI API akan dibangun pada
bahasapemrograman Java. Program java pada umumnya dapat berjalan pada platform
sistem operasikomputer.
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.
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.
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.
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 •
Keuntungan dan Kerugian Kehadiran OSGi
Dari kehadiran teknologi OSGi memberikan beberapa keuntungan antara lain sebagai berikut:
·
Memudahkan pengendalian dan pengawasan penggunaan perangkat elektronik.
·
Membantu mengelola penghematan sumber daya seperti listrik, air, gas dan
lainnya.
·
Mudah dikembangkan.
·
Pembaharuan secara dinamis.
·
Dapat beradaptasi dengan baik pada berbagai perangkat berbeda.
·
Transparan dalam memberikan akses mengamati keadaan internal OSGi
·
Memberikan ruang library JAR yang berbeda versi dapat berkolaborasi dalam
class yang sama.
·
Memiliki interface yang sederhana.
·
Aman.
·
Dapat dijalankan di sistem operasi mana pun.
·
Didukung oleh perusahaan-perusahaan yang memiliki peran kunci.
Kerugian OSGi:
·
Pengguna dihadapkan pada tanggunjawab untuk terus menarik laporan
informasi.
·
Pengguna harus selalu mengetahui posisi perangkat yang dikelola.
·
Penerapan yang membutuhkan biaya besar.
·
Membuat ketergantungan dalam kemudahan teknologi.
·
Memberikan peluang penyalahgunaan sistem oleh pihak yang tidak berwenang
jika interface OSGi lupa ditutup pengguna.
Saran
:
Teknologi sekarang ini sudah dapat diaplikasikan
kedalam segala bentuk kegiatan manusia baik dalam pendidikan ataupun usaha,
maka dari itu manusia dan anak didik harus diberikan pemerataan pengetahuan
mengenai perkembangan teknologi khususnya komputerisasi sejak dini, dengan
adanya undang-undang telematika masyarakat juga harus diberitahu mengenai
undang-undang maupun peraturan mengenai telematika agar tidak terjadi salah
paham, atau pemberlakuan undang-undang terhadap kalangan tertentu.
Referensi: