The OSGi Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah terbuka organisasi standar yang didirikan pada Maret 1999. Aliansi dan anggota-anggotanya telah ditentukan yang Java berbasis layanan platform yang dapat dikelola dari jarak jauhInti bagian dari spesifikasi adalah sebuah kerangka kerja yang mendefinisikan suatu manajemen siklus hidup aplikasi model, layanan registry, sebuah lingkungan Eksekusi dan Modul. Berdasarkan kerangka ini, sejumlah besar OSGi layers, API, dan Jasa telah ditetapkan.
1. Spesifikasi
OSGi spesifikasi yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGi. OSGi Allianceyang memiliki kepatuhan program yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGi implementasi berisi lima entri.
2. Arsitektur
Setiap kerangka yang menerapkan standar OSGi 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:
- Bundles
Bundles adalah normal jar komponen dengan nyata tambahan header - Services
Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan menerbitkan-menemukan-model mengikat Jawa lama untuk menikmati objek (POJO). - Services
API untuk jasa manajemen (ServiceRegistration, ServiceTracker dan ServiceReference). - Life-Cycle
API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel. - Modules
Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode). - Security
Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra-didefinisikan kemampuan. - Execution
Environment
Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentuTidak 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.1/Foundation-1.1 CDC-1.1/Foundation-1.1
• OSGi/Minimum-1.0 OSGi/Minimum-1.0
• OSGi/Minimum-1.1 OSGi/Minimum-1.1
• JRE-1.1 JRE-1.1
• From J2SE-1.2 up to J2SE-1.6 Dari J2SE-1.2 hingga J2SE-1,6
• CDC-1.0/Foundation-1.0 CDC-1.0/Foundation-1.0
B. Kolaborasi Antarmuka
Otomotif Multimedia
Kolaborasi Antarmuka Otomotif
Multimedia adalah
sebuah kelompok yang dibuat oleh pembuat (maker) untuk menciptakan
standar umum yang digunakan untuk mengatur bagaimana cara kerja perangkat
elektronik, seerti komputer dan hiburan unit, berkomunikasi dengan kendaraan.
Dan memiliki anggota: Fiatm Ford, General Motors, Honda, Mitsubishi, Nissan,
PSA Peugeot-Citroen, Renault.
Sebuah organisasi yang dibentuk untuk menciptakan standarisasi dunia yang digunakan dalam mengatur bagaimana sebuah perangkat elektronik dapat bekerja disebut Kolaborasi Antar muka Otomotif Multimedia.
Sebuah organisasi yang dibentuk untuk menciptakan standarisasi dunia yang digunakan dalam mengatur bagaimana sebuah perangkat elektronik dapat bekerja disebut Kolaborasi Antar muka Otomotif Multimedia.
Automotive Multimedia Interface
Collaboration (AMI-C) menyatakan bahwa akan menggandeng teknologi Open Service
Gateway Initiative (OSGi) sebagai framework untuk platform sofware yang
dibangun untuk informasi mobile dan sistem entertainment. Dalam kombinasi’a,
AMI-C dan framework OSGi akan menyediakan satu platform software yang umum dan
pasar yang terbuka untuk penyedia aplikasi atomotif berbasis wireless. Untuk
pengguna, platform umum tersebut akan menyediakan pilihan software aplikasi yang
luas.
1. Fungsional Kolaborasi
Antarmuka Otomotif-Multimedia
- Menyediakan interface standar untuk memungkinkan pengendara mobil untuk menggunakan berbagai media, komputer dan perangkat komunikasi - dari sistem navigasi dan hands-free telepon selular, melalui manusia maju / mesin sistem antarmuka, termasuk pengenalan suara dan sintesis, untuk dipersembahkan komunikasi jarak dekat ( DSRC) sistem untuk kendaraan untuk infrastruktur komunikasi dan sistem mobil seperti airbag, pintu kunci dan diagnostik input / output.
- Meningkatkan pilihan dan mengurangi keusangan sistem elektronik kendaraan.
- Memotong biaya keseluruhan informasi kendaraan dan peralatan hiburan dengan meningkatkan ukuran pasar yang efektif dan memperpendek waktu pengembangan - industri otomotif efektif terdiri dari banyak pasar yang kecil karena setiap platform kendaraan sering mengandung berbagai adat-mengembangkan komponen dan platform yang khas hanya sekitar 50.000 unit.
- Menawarkan standar terbuka dan spesifikasi untuk informasi interface dalam kendaraan dan antara kendaraan dan dunia luar.
2. Struktural Kolaborasi Antarmuka
Otomotif Multimedia
Automotive Multimedia Interface Kolaborasi (AMIC)
mengatakan akan menjadi tuan rumah tiga update internasional briefing untuk
menjadi pemasok otomotif, komputer dan teknologi tinggi industri elektronik.
Briefing akan diadakan 23 Februari di Frankfurt, Jerman; Februari 29 di Tokyo;
dan Maret 9 di Detroit.
“AMIC telah membuat suatu kemajuan yang signifikan
dalam satu tahun terakhir ini dalam menyelesaikan struktur organisasi dan
mencapai kesepakatan mengenai persyaratan yang diperlukan untuk hardware dan
software baik di masa depan 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.
C. Proses komunitas java (Java Community
Process JCP)
Java dikembangkan mengacu pada standar yang ditentukan oleh komite
didalam JCP (Java Community Process).
Spesifikasi Java tidak sekedar fondasi VMnya, tetapi menyangkut hampir semua aspek, mulai dari mekanisme mengakses devices I/O, komponen pertukaran objek, sampai pengembangan container. JCP merupakan badan yang bertanggung jawab terhadap standar teknologi Java.
Spesifikasi Java tidak sekedar fondasi VMnya, tetapi menyangkut hampir semua aspek, mulai dari mekanisme mengakses devices I/O, komponen pertukaran objek, sampai pengembangan container. JCP merupakan badan yang bertanggung jawab terhadap standar teknologi Java.
1. Virtual
Machine
Sebuah
mesin virtual (VM) adalah sebuah perangkat lunak implementasi sebuah mesin
(misalnya komputer) yang melaksanakan program-program seperti mesin fisik.
Sebuah mesin virtual pada awalnya ditentukan oleh Popek dan Goldberg sebagai
"yang efisien, terisolasi duplikat dari mesin yang nyata". Saat
menggunakan mesin virtual yang mencakup tidak memiliki surat-menyurat langsung
ke perangkat keras yang nyata.
Mesin virtual dipisahkan ke dalam dua kategori utama, berdasarkan tingkat penggunaan dan korespondensi untuk mesin nyata. Sebuah sistem mesin virtual yang lengkap menyediakan platform sistem yang mendukung pelaksanaan lengkap sistem operasi (OS). Sebaliknya, mesin virtual sebuah proses yang dirancang untuk menjalankan sebuah program, yang berarti bahwa ia mendukung satu proses. Karakteristik penting dari sebuah mesin virtual yang berjalan di dalam perangkat lunak adalah terbatas pada sumber daya dan abstraksi yang disediakan oleh mesin virtual tidak dapat keluar dari dunia virtual.
Contoh: Suatu program yang ditulis dalam Java menerima jasa dari Java Runtime Environment (JRE) perangkat lunak dengan mengeluarkan perintah untuk, dan menerima hasil yang diharapkan dari, perangkat lunak Java. Dengan memberikan layanan ini untuk program tersebut, perangkat lunak Java bertindak sebagai "mesin virtual", menggantikan sistem operasi atau hardware untuk program yang biasanya akan disesuaikan.
Mesin virtual dipisahkan ke dalam dua kategori utama, berdasarkan tingkat penggunaan dan korespondensi untuk mesin nyata. Sebuah sistem mesin virtual yang lengkap menyediakan platform sistem yang mendukung pelaksanaan lengkap sistem operasi (OS). Sebaliknya, mesin virtual sebuah proses yang dirancang untuk menjalankan sebuah program, yang berarti bahwa ia mendukung satu proses. Karakteristik penting dari sebuah mesin virtual yang berjalan di dalam perangkat lunak adalah terbatas pada sumber daya dan abstraksi yang disediakan oleh mesin virtual tidak dapat keluar dari dunia virtual.
Contoh: Suatu program yang ditulis dalam Java menerima jasa dari Java Runtime Environment (JRE) perangkat lunak dengan mengeluarkan perintah untuk, dan menerima hasil yang diharapkan dari, perangkat lunak Java. Dengan memberikan layanan ini untuk program tersebut, perangkat lunak Java bertindak sebagai "mesin virtual", menggantikan sistem operasi atau hardware untuk program yang biasanya akan disesuaikan.
2. APIs
Sebuah application programming interface (API) adalah
antarmuka bahwa sebuah program perangkat lunak alat untuk memungkinkan perangkat
lunak lain untuk berinteraksi dengan itu, banyak cara yang sama seperti
perangkat lunak mungkin akan mengimplementasikan antarmuka pengguna untuk
memungkinkan manusia untuk menggunakannya. API dilaksanakan oleh aplikasi,
perpustakaan dan sistem operasi untuk menentukan bagaimana perangkat lunak lain
dapat membuat panggilan ke atau layanan permintaan dari mereka. Sebuah API
menentukan kosa kata dan konvensi memanggil para pemrogram harus mempekerjakan
untuk menggunakan layanan . Ini mungkin termasuk spesifikasi untuk rutinitas,
struktur data, kelas objek, dan protokol yang digunakan untuk berkomunikasi
antara konsumen dan pelaksana API.
• Implementasi
POSIX standard mendefinisikan sebuah API yang memungkinkan
berbagai fungsi komputasi umum harus ditulis sedemikian rupa sehingga mereka
dapat beroperasi pada banyak sistem yang berbeda (Mac OS X dan berbagai
Berkeley Software Distribusi (BSD) mengimplementasikan interface ini), namun,
dengan menggunakan ini memerlukan kompilasi ulang untuk setiap platform. API
yang kompatibel, di sisi lain, memungkinkan dikompilasi kode obyek untuk
berfungsi tanpa perubahan apapun, pada pelaksanaan sistem apapun yang API. Hal
ini menguntungkan kedua penyedia perangkat lunak (di mana mereka dapat
mendistribusikan perangkat lunak yang ada pada sistem baru tanpa memproduksi /
mendistribusikan upgrade) dan pengguna (di mana mereka mungkin lebih tua
menginstal perangkat lunak pada sistem baru mereka tanpa membeli upgrade),
meskipun hal ini memerlukan berbagai perangkat lunak secara umum pelaksanaan
perpustakaan API diperlukan juga.
Microsoft telah menunjukkan komitmen untuk API yang
kompatibel ke belakang, terutama di dalam Windows API (Win32) perpustakaan,
seperti aplikasi yang lebih tua dapat berjalan di Windows versi yang lebih baru
menggunakan pengaturan khusus eksekusi yang disebut "Compatibility
Mode" . Apple Inc telah menunjukkan kecenderungan yang kurang perhatian
ini, memecah kompatibilitas atau mengimplementasikan dalam sebuah API yang
lebih lambat "mode emulasi"; ini memungkinkan kebebasan lebih besar
dalam pembangunan, pada biaya pembuatan perangkat lunak yang lebih tua usang.
Antara
Unix-seperti sistem operasi, ada banyak terkait tetapi tidak sesuai sistem
operasi berjalan pada platform hardware yang umum (khususnya Intel 80386 sistem
yang kompatibel). Sudah ada beberapa usaha untuk standarisasi API vendor
perangkat lunak sehingga dapat mendistribusikan satu aplikasi binari untuk
semua sistem ini, namun sampai saat ini, tidak satu pun telah bertemu dengan
banyak keberhasilan. Linux Standard Base adalah berusaha untuk melakukan hal
ini untuk Linux platform, sementara banyak dari beragam Unix BSD (FreeBSD,
NetBSD, OpenBSD) menerapkan berbagai tingkat kompatibilitas API untuk kedua
backward compatibility (memungkinkan program yang ditulis untuk versi lama
untuk berjalan di distribusi baru sistem) dan lintas-platform kompatibilitas
(memungkinkan eksekusi kode asing tanpa mengkompilasi ulang).
Sumber :
Tidak ada komentar:
Posting Komentar