نوع | |
---|---|
المنصة | |
المطورون |
تحالف ال-أو إس جي أي |
موقع الويب |
osgi.org (الإنجليزية) |
العائلة | |
---|---|
لغة البرمجة | |
الإصدار الأول | |
الإصدار الأخير |
4.2 |
الرخصة |
تحالف أو إس جي أي (بالإنجليزية: OSGi Alliance) هو منظمة تعنى بتطوير المعايير المفتوحة انشئت في مارس عام 1999.[5][6][7] وقد قام هذا التحالف بالاشتراك مع اعضائه بعمل مواصفات لبناء وتطوير برامج بلغة الجافا سميت بمواصفات ال-أو إس جي أي، تعتمد على مبدأ أن كل برنامج هو مزيج من خدمات تتفاعل مع بعضها من خلال واجهات برمجية (واجهة برمجة التطبيقات). جوهر هذه المواصفات هو هيكل (Framework) يعرف الآتي:
أنشئ تحالف ال-أو إس جي أي في مارس عام 1999 من قبل مجموعة من الشركات من ضمنها إريكسون، آي بي إم، موتورولا، وصن ميكروسيستمز ،وقد كان يسمى هذا التحالف في بادئ الأمر تحالف التجمع (Connected Alliance)، قبل أن يصبح منظمة غير ربحية.
حتى مايو 2007، انضم أكثر من 35 شركة من قطاعات عمل مختلفة لهذا التحالف.
الهيكل التنظيمي يمكن تلخيصه كالآتي:
يقوم أعضاء تحالف ال-أو إس جي أي بتطوير المواصفات على منهج مفتوح (Open Process)، من ثم نشرها للعامة مجاناً تحت رخصة مواصفات ال-أو إس جي أي، وعند النشر، يستطيع أي طرف آخر أن يقوم بعمل تطبيق (Implementation) لهذه المواصفات.
حتى سبتمبر 2008، صودق على خمسة تطبيقات من قبل التحالف.
تنص المواصفات على أن أي تطبيق (Implementation) لها يجب أن يحتوي على هيكل (Framework) قابل للوصل، بمعنى أنه يمكن إضافة أو حذف وحدات برمجية منه بطريقة ديناميكية.
يطلق على كل وحدة برمجية في هيكل ال-أو إس جي أي اسم رزمة (بالإنجليزية: Bundle).
يمكن أن تكون الرزمة فعالة أو مكتبية أو كلاهما. حيث أن الرزمة الفعالة تعمل في خيط (حاسوب) (Thread) مخصص لها لتنفيذ المهمة التي برمجت من أجلها. أما الرزمة المكتبية فهي توفر واجهات برمجية للرزم الأخرى.
ولتحقيق الاتصال والتفاعل بين الرزم الفعالة، تستطيع أي رزمة تسجيل خدمة خلال وقت عمل البرنامج (Runtime)، من خلالها، تستطيع الرزم الأخرى التفاعل معها.
من خلال المفاهيم السابقة يمكن تقسيم مواصفات هيكل ال-أو إس جي أي إلى الطبقات التالية:
هذه الطبقة تحتوي على وحدات برمجية (الرزم)، التي من خلال تفاعلها مع بعضها، تؤدي الدور المطلوب من البرنامج المبني على هيكل ال-أو إس جي أي. تخزن محتويات كل رزمة في ملف من نوع JAR.
تقوم هذه الطبقة بوصل الرزم بطريقة ديناميكية من خلال نموذج (سجل-ابحث-إربط). بمعنى أن الرزمة قادرة على تسجيل خدمة معينة، وأن رزمة أخرى قادرة على البحث عن تلك الخدمة واستخدامها (ربط).
هو عبارة عن واجهة برمجية لإدارة الخدمات المسجلة.
هي عبارة عن واجهة برمجية للتحكم بدورة حياة الرزم (تنصيب، تشغيل، توقيف، تحديث، وإزالة).
هي الطبقة المسؤولة عن تعريف مكونات الرزمة وماهية اعتماديتها على الرزم الأخرى.
هي الطبقة المسؤولة عن تعريف صلاحيات الرزم.
هي الطبقة المسؤولة عن تحديد الدوال (Methods) والأصناف (Classes) المتاحة ضمن نظام التشغيل.
{{استشهاد ويب}}
: روابط خارجية في |موقع=
(مساعدة)