ओएसजीआई: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 12: Line 12:
| website                = {{URL|http://www.osgi.org}}
| website                = {{URL|http://www.osgi.org}}
}}
}}
ओएसजीआई [[ ग्रहण फाउंडेशन ]] के तहत ओपन स्पेसिफिकेशन और [[ खुला स्त्रोत ]] प्रोजेक्ट है। यह ओएसजीआई एलायंस (जिसे पहले ओपन सर्विसेज गेटवे पहल के रूप में जाना जाता था) द्वारा किए गए काम की निरंतरता है, जो मार्च 1999 में स्थापित [[कंप्यूटर सॉफ्टवेयर]] के लिए [[खुला मानक]] संगठन था। फाउंडेशन ने मूल रूप से ओएसजीआई मानक को निर्दिष्ट और बनाए रखा था। गठबंधन ने 2020 के अंत में अपना काम एक्लिप्स फाउंडेशन को स्थानांतरित कर दिया। ओएसजीआई विनिर्देश [[जावा (प्रोग्रामिंग भाषा)]] प्रोग्रामिंग भाषा के लिए मॉड्यूलर सिस्टम और [[सेवा (सिस्टम आर्किटेक्चर)]] प्लेटफॉर्म का वर्णन करता है जो पूर्ण और गतिशील [[घटक मॉडल]] को लागू करता है, कुछ ऐसा जो स्टैंडअलोन जावा या [[ आभासी मशीन ]] वातावरण में मौजूद नहीं है। इसमें सेवा-उन्मुख वास्तुकला है जो सूक्ष्म सेवाओं पर आधारित है, प्रत्येक को विस्तारित जावा क्लास फ़ाइल संग्रह (जेएआर (फ़ाइल प्रारूप)) के रूप में कार्यान्वित किया जाता है।
'''ओएसजीआई''' [[ ग्रहण फाउंडेशन |ग्रहण फाउंडेशन]] के अंतर्गत ओपन स्पेसिफिकेशन और [[ खुला स्त्रोत |ओपन सोर्स]] प्रोजेक्ट है। यह ओएसजीआई एलायंस (जिसे पूर्व ओपन सर्विसेज गेटवे पहल के रूप में जाना जाता था) द्वारा किए गए कार्य की निरंतरता है, जो मार्च 1999 में स्थापित [[कंप्यूटर सॉफ्टवेयर]] के लिए [[खुला मानक|ओपन स्टैन्डर्ड]] संगठन था। फाउंडेशन ने मूल रूप से ओएसजीआई मानक को निर्दिष्ट और बनाए रखा था। अलायंस ने 2020 के अंत में अपना कार्य एक्लिप्स फाउंडेशन को स्थानांतरित कर दिया। ओएसजीआई विनिर्देश [[जावा (प्रोग्रामिंग भाषा)]] प्रोग्रामिंग भाषा के लिए मॉड्यूलर सिस्टम और [[सेवा (सिस्टम आर्किटेक्चर)]] प्लेटफॉर्म का वर्णन करता है जो पूर्ण और गतिशील [[घटक मॉडल]] को लागू करता है, कुछ ऐसा जो स्टैंडअलोन जावा या [[ आभासी मशीन |आभासी मशीन]] वातावरण में मौजूद नहीं है। इसमें सेवा-उन्मुख वास्तुकला है जो सूक्ष्म सेवाओं पर आधारित है, प्रत्येक को विस्तारित जावा क्लास फ़ाइल संग्रह (जेएआर (फ़ाइल प्रारूप)) के रूप में कार्यान्वित किया जाता है।


==विवरण==
==विवरण==
Line 18: Line 18:
OSGi सेवा-उन्मुख वास्तुकला के आसपास बनाया गया है। [[अनुप्रयोग प्रक्रिया सामग्री]] या घटक, सॉफ़्टवेयर परिनियोजन के लिए #बंडलेस के रूप में आते हैं, इन्हें [[रिबूट (कंप्यूटर)]] की आवश्यकता के बिना दूरस्थ रूप से स्थापित, प्रारंभ, बंद, अपडेट और अनइंस्टॉल किया जा सकता है। [[जावा पैकेज]]/क्लास (कंप्यूटर विज्ञान) का प्रबंधन बहुत विस्तार से निर्दिष्ट किया गया है। एप्लिकेशन जीवन चक्र प्रबंधन एपीआई के माध्यम से कार्यान्वित किया जाता है जो प्रबंधन नीतियों को दूरस्थ रूप से [[डाउनलोड]] करने में सक्षम बनाता है। सेवा रजिस्ट्री बंडलों को नई सेवाओं को जोड़ने या सेवाओं को हटाने का पता लगाने और तदनुसार अनुकूलित करने में सक्षम बनाती है।
OSGi सेवा-उन्मुख वास्तुकला के आसपास बनाया गया है। [[अनुप्रयोग प्रक्रिया सामग्री]] या घटक, सॉफ़्टवेयर परिनियोजन के लिए #बंडलेस के रूप में आते हैं, इन्हें [[रिबूट (कंप्यूटर)]] की आवश्यकता के बिना दूरस्थ रूप से स्थापित, प्रारंभ, बंद, अपडेट और अनइंस्टॉल किया जा सकता है। [[जावा पैकेज]]/क्लास (कंप्यूटर विज्ञान) का प्रबंधन बहुत विस्तार से निर्दिष्ट किया गया है। एप्लिकेशन जीवन चक्र प्रबंधन एपीआई के माध्यम से कार्यान्वित किया जाता है जो प्रबंधन नीतियों को दूरस्थ रूप से [[डाउनलोड]] करने में सक्षम बनाता है। सेवा रजिस्ट्री बंडलों को नई सेवाओं को जोड़ने या सेवाओं को हटाने का पता लगाने और तदनुसार अनुकूलित करने में सक्षम बनाती है।


ओएसजीआई विनिर्देश सेवा गेटवे के मूल फोकस से परे विकसित हुए हैं, और अब [[ चल दूरभाष ]] से लेकर ओपन-सोर्स [[ ग्रहण (सॉफ्टवेयर) ]] तक के अनुप्रयोगों में उपयोग किए जाते हैं। अन्य अनुप्रयोग क्षेत्रों में [[ऑटोमोबाइल]], [[औद्योगिक स्वचालन]], भवन स्वचालन, व्यक्तिगत डिजिटल सहायक, [[ग्रिड कंप्यूटिंग]], [[मनोरंजन]], [[बेड़े प्रबंधन]] और [[अनुप्रयोग सर्वर]] शामिल हैं।
ओएसजीआई विनिर्देश सेवा गेटवे के मूल फोकस से परे विकसित हुए हैं, और अब [[ चल दूरभाष |चल दूरभाष]] से लेकर ओपन-सोर्स [[ ग्रहण (सॉफ्टवेयर) |ग्रहण (सॉफ्टवेयर)]] तक के अनुप्रयोगों में उपयोग किए जाते हैं। अन्य अनुप्रयोग क्षेत्रों में [[ऑटोमोबाइल]], [[औद्योगिक स्वचालन]], भवन स्वचालन, व्यक्तिगत डिजिटल सहायक, [[ग्रिड कंप्यूटिंग]], [[मनोरंजन]], [[बेड़े प्रबंधन]] और [[अनुप्रयोग सर्वर]] शामिल हैं।


अक्टूबर 2020 में, OSGi एलायंस ने मानकीकरण प्रयास को एक्लिप्स फाउंडेशन में स्थानांतरित करने की घोषणा की, जिसके बाद यह बंद हो जाएगा।<ref>{{Cite web|url=https://blog.osgi.org/2020/10/announcement-of-transition-to-eclipse.html|title=Announcement of Transition to Eclipse Foundation}}</ref> सभी कलाकृतियों को एक्लिप्स फाउंडेशन में स्थानांतरित कर दिया गया है, जहां "ओएसजीआई वर्किंग ग्रुप विनिर्देश को बनाए रखना और विकसित करना जारी रखता है।
अक्टूबर 2020 में, OSGi एलायंस ने मानकीकरण प्रयास को एक्लिप्स फाउंडेशन में स्थानांतरित करने की घोषणा की, जिसके बाद यह बंद हो जाएगा।<ref>{{Cite web|url=https://blog.osgi.org/2020/10/announcement-of-transition-to-eclipse.html|title=Announcement of Transition to Eclipse Foundation}}</ref> सभी कलाकृतियों को एक्लिप्स फाउंडेशन में स्थानांतरित कर दिया गया है, जहां "ओएसजीआई वर्किंग ग्रुप विनिर्देश को बनाए रखना और विकसित करना जारी रखता है।


== विशिष्टता प्रक्रिया ==
== विशिष्टता प्रक्रिया ==
OSGi विशिष्टता को सदस्यों द्वारा खुली प्रक्रिया में विकसित किया जाता है और OSGi विशिष्टता लाइसेंस के तहत जनता को निःशुल्क उपलब्ध कराया जाता है।<ref>{{Cite web |url=http://www.osgi.org/Main/OSGiSpecificationLicense |title=ओएसजीआई विशिष्टता लाइसेंस|access-date=2012-05-10 |archive-url=https://web.archive.org/web/20150914021603/http://www.osgi.org/Main/OSGiSpecificationLicense |archive-date=2015-09-14 |url-status=dead }}</ref> ओएसजीआई एलायंस का नियामक अनुपालन कार्यक्रम है जो केवल सदस्यों के लिए खुला है। नवंबर 2010 तक, सात प्रमाणित ओएसजीआई फ्रेमवर्क [[कार्यान्वयन]] हैं।<ref>{{Cite web |url=https://www.osgi.org/osgi-compliance/osgi-certification/osgi-certified-products/ |title=OSGi Alliance &#124; Markets / Certified |access-date=2017-06-23 |archive-date=2008-09-25 |archive-url=https://web.archive.org/web/20080925211558/http://www.osgi.org/Markets/Certified |url-status=dead }}</ref> अलग पृष्ठ प्रमाणित और गैर-प्रमाणित दोनों [[ओएसजीआई विशिष्टता कार्यान्वयन]] को सूचीबद्ध करता है, जिसमें ओएसजीआई ढांचे और अन्य ओएसजीआई विनिर्देश शामिल हैं।
OSGi विशिष्टता को सदस्यों द्वारा खुली प्रक्रिया में विकसित किया जाता है और OSGi विशिष्टता लाइसेंस के अंतर्गत जनता को निःशुल्क उपलब्ध कराया जाता है।<ref>{{Cite web |url=http://www.osgi.org/Main/OSGiSpecificationLicense |title=ओएसजीआई विशिष्टता लाइसेंस|access-date=2012-05-10 |archive-url=https://web.archive.org/web/20150914021603/http://www.osgi.org/Main/OSGiSpecificationLicense |archive-date=2015-09-14 |url-status=dead }}</ref> ओएसजीआई एलायंस का नियामक अनुपालन कार्यक्रम है जो केवल सदस्यों के लिए खुला है। नवंबर 2010 तक, सात प्रमाणित ओएसजीआई फ्रेमवर्क [[कार्यान्वयन]] हैं।<ref>{{Cite web |url=https://www.osgi.org/osgi-compliance/osgi-certification/osgi-certified-products/ |title=OSGi Alliance &#124; Markets / Certified |access-date=2017-06-23 |archive-date=2008-09-25 |archive-url=https://web.archive.org/web/20080925211558/http://www.osgi.org/Markets/Certified |url-status=dead }}</ref> अलग पृष्ठ प्रमाणित और गैर-प्रमाणित दोनों [[ओएसजीआई विशिष्टता कार्यान्वयन]] को सूचीबद्ध करता है, जिसमें ओएसजीआई ढांचे और अन्य ओएसजीआई विनिर्देश शामिल हैं।


==वास्तुकला==
==वास्तुकला==
Line 71: Line 71:


{| class="wikitable"
{| class="wikitable"
! Bundle State
! बंडल अवस्था
! Description
! विवरण
|-
|-
| '''INSTALLED'''
| '''INSTALLED'''
| The bundle has been successfully installed.
| बंडल सफलतापूर्वक स्थापित किया गया है।
|-
|-
| '''RESOLVED'''
| '''RESOLVED'''
| All Java classes that the bundle needs are available. This state indicates that the bundle is either ready to be started or has stopped.
| बंडल के लिए आवश्यक सभी जावा कक्षाएं उपलब्ध हैं। यह स्थिति इंगित करती है कि बंडल या तो प्रारंभ होने के लिए तैयार है या बंद हो गया है।
|-
|-
| '''STARTING'''
| '''STARTING'''
| The bundle is being started, the <code>[http://www.osgi.org/javadoc/r4v41/org/osgi/framework/BundleActivator.html#start(org.osgi.framework.BundleContext) BundleActivator.start]</code> method has been called but the start method has not yet returned. When the bundle has an activation policy, the bundle will remain in the STARTING state until the bundle is activated according to its activation policy.
| बंडल प्रारंभ किया जा रहा है, <code>[http://www.osgi.org/javadoc/r4v41/org/osgi/framework/BundleActivator.html#start(org.osgi.framework.BundleContext) BundleActivator.start]</code> विधि को कॉल किया गया है लेकिन प्रारंभ विधि अभी तक वापस नहीं आई है। जब बंडल में एक सक्रियण नीति होती है, तो बंडल अपनी सक्रियण नीति के अनुसार सक्रिय होने तक बंडल STARTING स्थिति में रहेगा।
|-
|-
| '''ACTIVE'''
| '''ACTIVE'''
| The bundle has been successfully activated and is running; its Bundle Activator start method has been called and returned.
| बंडल सफलतापूर्वक सक्रिय हो गया है और चल रहा है; इसके बंडल एक्टिवेटर प्रारंभ विधि को कॉल किया गया है और वापस कर दिया गया है।
|-
|-
| '''STOPPING'''
| '''STOPPING'''
| The bundle is being stopped. The <code>[http://www.osgi.org/javadoc/r4v41/org/osgi/framework/BundleActivator.html#stop(org.osgi.framework.BundleContext) BundleActivator.stop]</code> method has been called but the stop method has not yet returned.
| बंडल रोका जा रहा है। <code>[http://www.osgi.org/javadoc/r4v41/org/osgi/framework/BundleActivator.html#stop(org.osgi.framework.BundleContext) BundleActivator.stop]</code> विधि को कॉल किया गया है लेकिन स्टॉप विधि अभी तक वापस नहीं आई है।
|-
|-
| '''UNINSTALLED'''
| '''UNINSTALLED'''
| The bundle has been uninstalled. It cannot move into another state.
| बंडल अनइंस्टॉल कर दिया गया है। वह दूसरे राज्य में नहीं जा सकता।
|}
|}
नीचे इसे लागू करने वाली विशिष्ट जावा क्लास का उदाहरण दिया गया है <code>[http://www.osgi.org/javadoc/r4v42/org/osgi/framework/BundleActivator.html BundleActivator]</code> इंटरफेस:
<code>[http://www.osgi.org/javadoc/r4v42/org/osgi/framework/BundleActivator.html BundleActivator]</code> इंटरफ़ेस को लागू करने वाले एक विशिष्ट जावा क्लास का उदाहरण नीचे दिया गया है:
<syntaxhighlight lang="java">
<syntaxhighlight lang="java">
package org.wikipedia;
package org.wikipedia;
Line 123: Line 123:
{| class="wikitable" width = "100%"
{| class="wikitable" width = "100%"
! System Services
! System Services
! Description
! विवरण
|-dsafassafasfas
|-dsafassafasfas
| '''Logging'''
| '''Logging'''
| The [[Java logging framework|logging]] of information, warnings, debug information or errors is handled through the Log Service. It receives log entries and then dispatches these entries to other bundles that subscribed to this information.
| सूचना, चेतावनियों, डिबग जानकारी या त्रुटियों की [[Java logging framework|लॉगिंग]] को लॉग सेवा के माध्यम से नियंत्रित किया जाता है। यह लॉग प्रविष्टियाँ प्राप्त करता है और फिर इन प्रविष्टियों को अन्य बंडलों को भेजता है जिन्होंने इस जानकारी की सदस्यता ली है।
|-
|-
| '''Configuration Admin'''
| '''Configuration Admin'''
| This service allows an operator to set and get the configuration information of deployed bundles.
| यह सेवा ऑपरेटर को तैनात बंडलों की कॉन्फ़िगरेशन जानकारी सेट करने और प्राप्त करने की अनुमति देती है।
|-
|-
| '''Device Access'''
| '''Device Access'''
| Facilitates the coordination of automatic detection and attachment of existing devices. This is used for Plug and Play scenarios.
| मौजूदा उपकरणों की स्वचालित पहचान और अनुलग्नक के समन्वय की सुविधा प्रदान करता है। इसका उपयोग प्लग एंड प्ले परिदृश्यों के लिए किया जाता है।
|-
|-
| '''User Admin'''
| '''User Admin'''
| This service uses a database with user information (private and public) for authentication and authorization purposes.
| यह सेवा प्रमाणीकरण और प्राधिकरण उद्देश्यों के लिए उपयोगकर्ता जानकारी (निजी और सार्वजनिक) वाले डेटाबेस का उपयोग करती है।
|-
|-
| '''IO Connector'''
| '''IO Connector'''
| The IO Connector Service implements the [[Connected Device Configuration|CDC]]/[[CLDC]] <code>[http://java.sun.com/javame/reference/apis/jsr118/javax/microedition/io/package-summary.html javax.microedition.io]</code> package as a service. This service allows bundles to provide new and alternative protocol schemes.
| IO कनेक्टर सेवा [[Connected Device Configuration|CDC]]/[[CLDC]] <code>[http://java.sun.com/javame/reference/apis/jsr118/javax/microedition/io/package-summary.html javax.microedition.io]</code> पैकेज को एक सेवा के रूप में कार्यान्वित करती है। यह सेवा बंडलों को नई और वैकल्पिक प्रोटोकॉल योजनाएं प्रदान करने की अनुमति देती है।
|-
|-
| '''Preferences'''
| '''Preferences'''
| Offers an alternative, more OSGi-friendly mechanism to using Java's default {{Javadoc:SE|java/util|Properties}} for storing preferences.
| प्राथमिकताओं को संग्रहीत करने के लिए जावा के डिफ़ॉल्ट {{Javadoc:SE|java/util|Properties}} का उपयोग करने के लिए एक वैकल्पिक, अधिक ओएसजीआई-अनुकूल तंत्र प्रदान करता है।
|-
|-
| '''Component Runtime'''
| '''Component Runtime'''
| The dynamic nature of services—they can come and go at any time—makes writing software harder. The Component Runtime specification can simplify handling these dynamic aspects by providing an XML based declaration of the dependencies.
| सेवाओं की गतिशील प्रकृति—वे किसी भी समय आ और जा सकती हैं—सॉफ़्टवेयर लिखना कठिन बना देती हैं। कंपोनेंट रनटाइम विनिर्देश निर्भरता की XML आधारित घोषणा प्रदान करके इन गतिशील पहलुओं को संभालना आसान बना सकता है।
|-
|-
| '''Deployment Admin'''
| '''Deployment Admin'''
| Standardizes access to some of the responsibilities of the management agent.
| प्रबंधन एजेंट की कुछ जिम्मेदारियों तक पहुंच का मानकीकरण करता है।
|-
|-
| '''Event Admin'''
| '''Event Admin'''
| Provides an inter-bundle communication mechanism based on a publish-and-subscribe model.
| प्रकाशित-और-सदस्यता मॉडल के आधार पर एक अंतर-बंडल संचार तंत्र प्रदान करता है।
|-
|-
| '''Application Admin'''
| '''Application Admin'''
| Simplifies the management of an environment with many different types of applications that are simultaneously available.
| एक साथ उपलब्ध कई अलग-अलग प्रकार के अनुप्रयोगों के साथ पर्यावरण के प्रबंधन को सरल बनाता है।
|}
|}
नीचे दी गई तालिका OSGi प्रोटोकॉल सेवाओं का विवरण दिखाती है:
नीचे दी गई तालिका OSGi प्रोटोकॉल सेवाओं का विवरण दिखाती है:
{| class="wikitable" width = "100%"
{| class="wikitable" width = "100%"
! Protocol Services
! Protocol Services
! Description
! विवरण
|-
|-
| '''HTTP Service'''
| '''HTTP Service'''
| Allows information to be sent and received from OSGi using [[HTTP]].
| [[HTTP]] का उपयोग करके OSGi से जानकारी भेजने और प्राप्त करने की अनुमति देता है।
|-
|-
| '''UPnP Device Service'''
| '''UPnP Device Service'''
| Specifies how OSGi bundles can be developed to interoperate with [[Universal Plug and Play]] (UPnP) devices.
| निर्दिष्ट करता है कि [[Universal Plug and Play|यूनिवर्सल प्लग एंड प्ले]] (UPnP) उपकरणों के साथ इंटरऑपरेट करने के लिए OSGi बंडलों को कैसे विकसित किया जा सकता है।
|-
|-
| '''DMT Admin'''
| '''DMT Admin'''
| Defines an API for managing a device using concepts from the [[Open Mobile Alliance]] (OMA) device management specifications.
| [[Open Mobile Alliance|ओपन मोबाइल एलायंस]] (OMA) डिवाइस प्रबंधन विनिर्देशों की अवधारणाओं का उपयोग करके डिवाइस के प्रबंधन के लिए एक एपीआई को परिभाषित करता है।
|}
|}
नीचे दी गई तालिका OSGi विविध सेवाओं का विवरण दिखाती है:
नीचे दी गई तालिका OSGi विविध सेवाओं का विवरण दिखाती है:
{| class="wikitable" width = "100%"
{| class="wikitable" width = "100%"
! Miscellaneous Services
! Miscellaneous Services
! Description
! विवरण
|-
|-
| '''Wire Admin'''
| '''Wire Admin'''
| Allows the connection between a Producer service and a Consumer service.
| निर्माता सेवा और उपभोक्ता सेवा के बीच संबंध की अनुमति देता है।
|-
|-
| '''XML Parser'''
| '''XML Parser'''
| The XML Parser service allows a bundle to locate a parser with desired properties and compatibility with [[JAXP]].
| XML पार्सर सेवा एक बंडल को वांछित गुणों और [[JAXP]] के साथ संगतता वाले पार्सर का पता लगाने की अनुमति देती है।
|-
|-
| '''Measurement and State'''
| '''Measurement and State'''
| The Measurement and State service allows and simplifies the correct handling of measurements in an OSGi service platform.
| माप और राज्य सेवा OSGi सेवा प्लेटफ़ॉर्म में माप के सही प्रबंधन की अनुमति देती है और सरल बनाती है।
|}
|}


== संगठन ==
== संगठन ==
ओएसजीआई एलायंस की स्थापना मार्च 1999 में [[एरिक्सन]], [[आईबीएम]], [[ MOTOROLA ]], [[सन माइक्रोसिस्टम्स]] और अन्य द्वारा की गई थी। गैर-लाभकारी निगम के रूप में शामिल होने से पहले, इसे कनेक्टेड एलायंस कहा जाता था।
ओएसजीआई एलायंस की स्थापना मार्च 1999 में [[एरिक्सन]], [[आईबीएम]], [[ MOTOROLA |MOTOROLA]] , [[सन माइक्रोसिस्टम्स]] और अन्य द्वारा की गई थी। गैर-लाभकारी निगम के रूप में शामिल होने से पूर्व, इसे कनेक्टेड एलायंस कहा जाता था।


इसके सदस्यों में शामिल हैं ({{As of|2015|alt=as of February 2015}}) बिल्कुल भिन्न व्यावसायिक क्षेत्रों की 35 से अधिक कंपनियाँ, उदाहरण के लिए [[एडोब इंक]], [[डॉयचे टेलीकॉम]], [[ Hitachi ]], आईबीएम, [[लाइफ़रे]], मेकवेव, [[एनईसी]], निप्पॉन टेलीग्राफ एंड टेलीफोन, [[ओरेकल कॉर्पोरेशन]], [[ऑरेंज एसए]], [[प्रोसिस्ट]], [[ बिक्री बल ]], [[सीमेंस]], [[ सॉफ्टवेयर इंक ]] और [[टिब्को सॉफ्टवेयर]]।<ref>[http://www.osgi.org/About/Members OSGi Alliance | About / Members]</ref>
इसके सदस्यों में शामिल हैं ({{As of|2015|alt=as of February 2015}}) बिल्कुल भिन्न व्यावसायिक क्षेत्रों की 35 से अधिक कंपनियाँ, उदाहरण के लिए [[एडोब इंक]], [[डॉयचे टेलीकॉम]], [[ Hitachi |Hitachi]] , आईबीएम, [[लाइफ़रे]], मेकवेव, [[एनईसी]], निप्पॉन टेलीग्राफ एंड टेलीफोन, [[ओरेकल कॉर्पोरेशन]], [[ऑरेंज एसए]], [[प्रोसिस्ट]], [[ बिक्री बल |बिक्री बल]] , [[सीमेंस]], [[ सॉफ्टवेयर इंक |सॉफ्टवेयर इंक]] और [[टिब्को सॉफ्टवेयर]]।<ref>[http://www.osgi.org/About/Members OSGi Alliance | About / Members]</ref>
एलायंस के पास निदेशक मंडल है जो संगठन का समग्र प्रशासन प्रदान करता है। गठबंधन का समर्थन करने में OSGi अधिकारियों की विभिन्न भूमिकाएँ और जिम्मेदारियाँ हैं। तकनीकी कार्य निदेशक मंडल द्वारा चार्टर्ड विशेषज्ञ समूहों (ईजी) के भीतर आयोजित किया जाता है, और गैर-तकनीकी कार्य विभिन्न कार्य समूहों और समितियों में आयोजित किया जाता है। विशेषज्ञ समूहों के भीतर किए गए तकनीकी कार्यों में विशिष्टताओं का विकास, संदर्भ कार्यान्वयन और अनुपालन परीक्षण शामिल हैं। इन विशेषज्ञ समूहों ने ओएसजीआई विनिर्देशों के पांच प्रमुख रिलीज तैयार किए हैं ({{as of|2012}}).
एलायंस के पास निदेशक मंडल है जो संगठन का समग्र प्रशासन प्रदान करता है। अलायंस का समर्थन करने में OSGi अधिकारियों की विभिन्न भूमिकाएँ और जिम्मेदारियाँ हैं। तकनीकी कार्य निदेशक मंडल द्वारा चार्टर्ड विशेषज्ञ समूहों (ईजी) के भीतर आयोजित किया जाता है, और गैर-तकनीकी कार्य विभिन्न कार्य समूहों और समितियों में आयोजित किया जाता है। विशेषज्ञ समूहों के भीतर किए गए तकनीकी कार्यों में विशिष्टताओं का विकास, संदर्भ कार्यान्वयन और अनुपालन परीक्षण शामिल हैं। इन विशेषज्ञ समूहों ने ओएसजीआई विनिर्देशों के पांच प्रमुख रिलीज तैयार किए हैं ({{as of|2012}}).


उद्यम, मोबाइल, वाहन और मुख्य प्लेटफ़ॉर्म क्षेत्रों के लिए समर्पित विशेषज्ञ समूह मौजूद हैं।
उद्यम, मोबाइल, वाहन और मुख्य प्लेटफ़ॉर्म क्षेत्रों के लिए समर्पित विशेषज्ञ समूह मौजूद हैं।


एंटरप्राइज एक्सपर्ट ग्रुप (ईईजी) नवीनतम ईजी है और एंटरप्राइज/सर्वर-साइड अनुप्रयोगों को संबोधित कर रहा है।
एंटरप्राइज एक्सपर्ट ग्रुप (ईईजी) नवीनतम ईजी है और एंटरप्राइज/सर्वर-साइड अनुप्रयोगों को संबोधित कर रहा है।
नवंबर 2007 में आवासीय विशेषज्ञ समूह (आरईजी) ने आवासीय/होम-गेटवे को दूरस्थ रूप से प्रबंधित करने के लिए विशिष्टताओं पर काम करना शुरू किया।
नवंबर 2007 में आवासीय विशेषज्ञ समूह (आरईजी) ने आवासीय/होम-गेटवे को दूरस्थ रूप से प्रबंधित करने के लिए विशिष्टताओं पर कार्य करना शुरू किया।
अक्टूबर 2003 में, [[नोकिया]], मोटोरोला, [[अंतर्राष्ट्रीय व्यवसाय तंत्र]], प्रोसिस्ट और अन्य ओएसजीआई सदस्यों ने मोबाइल एक्सपर्ट ग्रुप (एमईजी) का गठन किया, जो अगली पीढ़ी के स्मार्ट मोबाइल फोन के लिए [[एमआईडीपी]]-आधारित सेवा प्लेटफॉर्म निर्दिष्ट करेगा, जो कनेक्टेड कुछ जरूरतों को संबोधित करेगा। सीमित डिवाइस कॉन्फ़िगरेशन प्रबंधित नहीं किया जा सकता {{En dash}} [[कनेक्टेड डिवाइस कॉन्फ़िगरेशन]] के अलावा अन्य। MEG R4 की तरह OSGi का हिस्सा बन गया।
अक्टूबर 2003 में, [[नोकिया]], मोटोरोला, [[अंतर्राष्ट्रीय व्यवसाय तंत्र]], प्रोसिस्ट और अन्य ओएसजीआई सदस्यों ने मोबाइल एक्सपर्ट ग्रुप (एमईजी) का गठन किया, जो अगली पीढ़ी के स्मार्ट मोबाइल फोन के लिए [[एमआईडीपी]]-आधारित सेवा प्लेटफॉर्म निर्दिष्ट करेगा, जो कनेक्टेड कुछ जरूरतों को संबोधित करेगा। सीमित डिवाइस कॉन्फ़िगरेशन प्रबंधित नहीं किया जा सकता {{En dash}} [[कनेक्टेड डिवाइस कॉन्फ़िगरेशन]] के अलावा अन्य। MEG R4 की तरह OSGi का हिस्सा बन गया।


Line 228: Line 228:


== ओएसजीआई का उपयोग करने वाली परियोजनाएं ==
== ओएसजीआई का उपयोग करने वाली परियोजनाएं ==
* [[ एडोब अनुभव प्रबंधक ]] {{En dash}} उद्यम [[सामग्री प्रबंधन प्रणाली]]<ref>{{cite news|date=2018-11-16|title=फॉरेस्टर ने वेब सामग्री प्रबंधन नेताओं के नाम बताए|publisher=CMSWire|url=https://www.cmswire.com/digital-experience/forrester-names-web-content-management-leaders-aprimo-updates-dam-more-news/|access-date=5 December 2018}}</ref>
* [[ एडोब अनुभव प्रबंधक | एडोब अनुभव प्रबंधक]] {{En dash}} उद्यम [[सामग्री प्रबंधन प्रणाली]]<ref>{{cite news|date=2018-11-16|title=फॉरेस्टर ने वेब सामग्री प्रबंधन नेताओं के नाम बताए|publisher=CMSWire|url=https://www.cmswire.com/digital-experience/forrester-names-web-content-management-leaders-aprimo-updates-dam-more-news/|access-date=5 December 2018}}</ref>
*[[अपाचे मेष]] {{En dash}} ओएसजीआई एंटरप्राइज एक्सपर्ट ग्रुप द्वारा परिभाषित एप्लिकेशन-केंद्रित विशिष्टताओं का ब्लूप्रिंट कंटेनर कार्यान्वयन और विस्तार
*[[अपाचे मेष]] {{En dash}} ओएसजीआई एंटरप्राइज एक्सपर्ट ग्रुप द्वारा परिभाषित एप्लिकेशन-केंद्रित विशिष्टताओं का ब्लूप्रिंट कंटेनर कार्यान्वयन और विस्तार
* [[अपाचे स्लिंग]] {{En dash}} जावा सामग्री रिपॉजिटरी के लिए सामग्री रिपॉजिटरी एपीआई के लिए ओएसजीआई-आधारित एप्लिकेशन परत
* [[अपाचे स्लिंग]] {{En dash}} जावा सामग्री रिपॉजिटरी के लिए सामग्री रिपॉजिटरी एपीआई के लिए ओएसजीआई-आधारित एप्लिकेशन परत
Line 239: Line 239:
* [[ईज़ीबीन्स]] {{En dash}} खुला स्रोत ईजेबी 3 कंटेनर
* [[ईज़ीबीन्स]] {{En dash}} खुला स्रोत ईजेबी 3 कंटेनर
* ग्रहण (सॉफ्टवेयर) {{En dash}} ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
* ग्रहण (सॉफ्टवेयर) {{En dash}} ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
* [[iDempiere]] {{En dash}} ओपन सोर्स [[ उद्यम संसाधन योजना ]] ब्रांच ग्लोबलक्यूएसएस [[पूरा]] का ओएसजीआई कार्यान्वयन है जो मूल रूप से लो हेंग सिन द्वारा शुरू किया गया था।<ref>{{cite web|title=Adempiere Branch_GlobalQSS_361|url=http://www.adempiere.com/Branch_GlobalQSS_361|website=adempiere.com/|access-date=27 September 2014}}</ref>
* [[iDempiere]] {{En dash}} ओपन सोर्स [[ उद्यम संसाधन योजना |उद्यम संसाधन योजना]] ब्रांच ग्लोबलक्यूएसएस [[पूरा]] का ओएसजीआई कार्यान्वयन है जो मूल रूप से लो हेंग सिन द्वारा शुरू किया गया था।<ref>{{cite web|title=Adempiere Branch_GlobalQSS_361|url=http://www.adempiere.com/Branch_GlobalQSS_361|website=adempiere.com/|access-date=27 September 2014}}</ref>
* [[कन्या (सॉफ्टवेयर)]] {{En dash}} ओपन सोर्स माइक्रोकर्नेल-आधारित सर्वर ओएसजीआई बंडलों से निर्मित और ओएसजीआई अनुप्रयोगों का समर्थन करता है
* [[कन्या (सॉफ्टवेयर)]] {{En dash}} ओपन सोर्स माइक्रोकर्नेल-आधारित सर्वर ओएसजीआई बंडलों से निर्मित और ओएसजीआई अनुप्रयोगों का समर्थन करता है
* [[ कांच की मछली ]] (v3) {{En dash}}जावा ईई के लिए एप्लिकेशन सर्वर
* [[ कांच की मछली | कांच की मछली]] (v3) {{En dash}}जावा ईई के लिए एप्लिकेशन सर्वर
* [[ फ़्यूज़ ईएसबी ]] {{En dash}} ServiceMix 4 का उत्पादीकृत और समर्थित रिलीज़
* [[ फ़्यूज़ ईएसबी | फ़्यूज़ ईएसबी]] {{En dash}} ServiceMix 4 का उत्पादीकृत और समर्थित रिलीज़
* [[एकीकृत जीनोम ब्राउज़र]] {{En dash}} जीनोम डेटा को देखने, तलाशने और विश्लेषण करने के लिए खुला स्रोत, डेस्कटॉप जीयूआई
* [[एकीकृत जीनोम ब्राउज़र]] {{En dash}} जीनोम डेटा को देखने, तलाशने और विश्लेषण करने के लिए खुला स्रोत, डेस्कटॉप जीयूआई
* इंटेलीजे आइडिया {{En dash}} मुफ्त सामुदायिक संस्करण के साथ जावा आईडीई और समृद्ध ग्राहक मंच
* इंटेलीजे आइडिया {{En dash}} मुफ्त सामुदायिक संस्करण के साथ जावा आईडीई और समृद्ध ग्राहक मंच
Line 250: Line 250:
* लाइफ़रे {{En dash}} ओपन सोर्स और वाणिज्यिक उद्यम पोर्टल प्लेटफ़ॉर्म संस्करण 7.x से OSGi का उपयोग करते हैं
* लाइफ़रे {{En dash}} ओपन सोर्स और वाणिज्यिक उद्यम पोर्टल प्लेटफ़ॉर्म संस्करण 7.x से OSGi का उपयोग करते हैं
*[[लूसी]] 5 {{En dash}} खुला स्रोत सीएफएमएल वेब एप्लिकेशन सर्वर
*[[लूसी]] 5 {{En dash}} खुला स्रोत सीएफएमएल वेब एप्लिकेशन सर्वर
* [[ NetBeans ]] {{En dash}} ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
* [[ NetBeans | NetBeans]] {{En dash}} ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
*[[नक्सियो]] {{En dash}} ओपन सोर्स [[ उद्यम सामग्री प्रबंधन ]] सर्विस प्लेटफॉर्म
*[[नक्सियो]] {{En dash}} ओपन सोर्स [[ उद्यम सामग्री प्रबंधन |उद्यम सामग्री प्रबंधन]] सर्विस प्लेटफॉर्म
* [[डेलाइट प्रोजेक्ट खोलें]] {{En dash}} [[सॉफ़्टवेयर-परिभाषित नेटवर्किंग]] को अपनाने में तेजी लाने के लक्ष्य के साथ परियोजना
* [[डेलाइट प्रोजेक्ट खोलें]] {{En dash}} [[सॉफ़्टवेयर-परिभाषित नेटवर्किंग]] को अपनाने में तेजी लाने के लक्ष्य के साथ परियोजना
* [[ओपनईजेबी]] {{En dash}} ओपन सोर्स ओएसजीआई-सक्षम ईजेबी 3.0 कंटेनर जिसे स्टैंडअलोन या एम्बेडेड मोड दोनों में चलाया जा सकता है
* [[ओपनईजेबी]] {{En dash}} ओपन सोर्स ओएसजीआई-सक्षम ईजेबी 3.0 कंटेनर जिसे स्टैंडअलोन या एम्बेडेड मोड दोनों में चलाया जा सकता है
* ओपनएचएबी {{En dash}} ओपन सोर्स होम ऑटोमेशन सॉफ्टवेयर
* ओपनएचएबी {{En dash}} ओपन सोर्स होम ऑटोमेशन सॉफ्टवेयर
* [[ओपनवर्म]] {{En dash}} कैनोर्हाडाइटिस एलिगेंस|सी का ओपन सोर्स सॉफ्टवेयर सिमुलेशन। एलिगेंस, समर्पित गेपेट्टो मॉड्यूलर प्लेटफॉर्म के माध्यम से
* [[ओपनवर्म]] {{En dash}} कैनोर्हाडाइटिस एलिगेंस|सी का ओपन सोर्स सॉफ्टवेयर सिमुलेशन। एलिगेंस, समर्पित गेपेट्टो मॉड्यूलर प्लेटफॉर्म के माध्यम से
* [[ अकना ]] {{En dash}} अकाना से एपीआई गेटवे, पोर्टल और एनालिटिक्स सर्वर (पूर्व में एसओए सॉफ्टवेयर)
* [[ अकना | अकना]] {{En dash}} अकाना से एपीआई गेटवे, पोर्टल और एनालिटिक्स सर्वर (पूर्व में एसओए सॉफ्टवेयर)
* [[वेबलॉजिक]] {{En dash}} ओरेकल वेबलॉजिक एप्लिकेशन सर्वर
* [[वेबलॉजिक]] {{En dash}} ओरेकल वेबलॉजिक एप्लिकेशन सर्वर
* [[वेबस्फेयर]] {{En dash}} आईबीएम वेबस्फीयर जेईई एप्लिकेशन सर्वर
* [[वेबस्फेयर]] {{En dash}} आईबीएम वेबस्फीयर जेईई एप्लिकेशन सर्वर
* [[वेबमेथड्स]] {{En dash}} सॉफ्टवेयरएजी वेबमेथड्स
* [[वेबमेथड्स]] {{En dash}} सॉफ्टवेयरएजी वेबमेथड्स
* [[WSO2 कार्बन]] {{En dash}} WSO2 के एंटरप्राइज़-ग्रेड ओपन सोर्स मिडलवेयर स्टैक के लिए बेस प्लेटफ़ॉर्म
* [[WSO2 कार्बन]] {{En dash}} WSO2 के एंटरप्राइज़-ग्रेड ओपन सोर्स मिडलवेयर स्टैक के लिए बेस प्लेटफ़ॉर्म
* [[पेंटाहो]] - [[ व्यापारिक सूचना ]] (बीआई) सॉफ्टवेयर जो [[डेटा एकीकरण]], ओएलएपी, [[ प्रतिवेदन ]], [[डैशबोर्ड (प्रबंधन सूचना प्रणाली)]], [[डेटा खनन]] और एक्सट्रैक्ट, ट्रांसफॉर्म, लोड (ईटीएल) क्षमताएं प्रदान करता है।
* [[पेंटाहो]] - [[ व्यापारिक सूचना |व्यापारिक सूचना]] (बीआई) सॉफ्टवेयर जो [[डेटा एकीकरण]], ओएलएपी, [[ प्रतिवेदन |प्रतिवेदन]] , [[डैशबोर्ड (प्रबंधन सूचना प्रणाली)]], [[डेटा खनन]] और एक्सट्रैक्ट, ट्रांसफॉर्म, लोड (ईटीएल) क्षमताएं प्रदान करता है।


== वर्तमान रूपरेखा कार्यान्वयन ==
== वर्तमान रूपरेखा कार्यान्वयन ==

Revision as of 11:14, 30 November 2023

ओएसजीआई
File:OSGi Logo.png
OSGi Alliance logo
Year started1999
Latest version8.0
October 2020 (2020-10)[1]
OrganizationOSGi Alliance
DomainJava
LicenseOSGi Specification License, Version 2.0
Websitewww.osgi.org

ओएसजीआई ग्रहण फाउंडेशन के अंतर्गत ओपन स्पेसिफिकेशन और ओपन सोर्स प्रोजेक्ट है। यह ओएसजीआई एलायंस (जिसे पूर्व ओपन सर्विसेज गेटवे पहल के रूप में जाना जाता था) द्वारा किए गए कार्य की निरंतरता है, जो मार्च 1999 में स्थापित कंप्यूटर सॉफ्टवेयर के लिए ओपन स्टैन्डर्ड संगठन था। फाउंडेशन ने मूल रूप से ओएसजीआई मानक को निर्दिष्ट और बनाए रखा था। अलायंस ने 2020 के अंत में अपना कार्य एक्लिप्स फाउंडेशन को स्थानांतरित कर दिया। ओएसजीआई विनिर्देश जावा (प्रोग्रामिंग भाषा) प्रोग्रामिंग भाषा के लिए मॉड्यूलर सिस्टम और सेवा (सिस्टम आर्किटेक्चर) प्लेटफॉर्म का वर्णन करता है जो पूर्ण और गतिशील घटक मॉडल को लागू करता है, कुछ ऐसा जो स्टैंडअलोन जावा या आभासी मशीन वातावरण में मौजूद नहीं है। इसमें सेवा-उन्मुख वास्तुकला है जो सूक्ष्म सेवाओं पर आधारित है, प्रत्येक को विस्तारित जावा क्लास फ़ाइल संग्रह (जेएआर (फ़ाइल प्रारूप)) के रूप में कार्यान्वित किया जाता है।

विवरण

OSGi सेवा-उन्मुख वास्तुकला के आसपास बनाया गया है। अनुप्रयोग प्रक्रिया सामग्री या घटक, सॉफ़्टवेयर परिनियोजन के लिए #बंडलेस के रूप में आते हैं, इन्हें रिबूट (कंप्यूटर) की आवश्यकता के बिना दूरस्थ रूप से स्थापित, प्रारंभ, बंद, अपडेट और अनइंस्टॉल किया जा सकता है। जावा पैकेज/क्लास (कंप्यूटर विज्ञान) का प्रबंधन बहुत विस्तार से निर्दिष्ट किया गया है। एप्लिकेशन जीवन चक्र प्रबंधन एपीआई के माध्यम से कार्यान्वित किया जाता है जो प्रबंधन नीतियों को दूरस्थ रूप से डाउनलोड करने में सक्षम बनाता है। सेवा रजिस्ट्री बंडलों को नई सेवाओं को जोड़ने या सेवाओं को हटाने का पता लगाने और तदनुसार अनुकूलित करने में सक्षम बनाती है।

ओएसजीआई विनिर्देश सेवा गेटवे के मूल फोकस से परे विकसित हुए हैं, और अब चल दूरभाष से लेकर ओपन-सोर्स ग्रहण (सॉफ्टवेयर) तक के अनुप्रयोगों में उपयोग किए जाते हैं। अन्य अनुप्रयोग क्षेत्रों में ऑटोमोबाइल, औद्योगिक स्वचालन, भवन स्वचालन, व्यक्तिगत डिजिटल सहायक, ग्रिड कंप्यूटिंग, मनोरंजन, बेड़े प्रबंधन और अनुप्रयोग सर्वर शामिल हैं।

अक्टूबर 2020 में, OSGi एलायंस ने मानकीकरण प्रयास को एक्लिप्स फाउंडेशन में स्थानांतरित करने की घोषणा की, जिसके बाद यह बंद हो जाएगा।[2] सभी कलाकृतियों को एक्लिप्स फाउंडेशन में स्थानांतरित कर दिया गया है, जहां "ओएसजीआई वर्किंग ग्रुप विनिर्देश को बनाए रखना और विकसित करना जारी रखता है।

विशिष्टता प्रक्रिया

OSGi विशिष्टता को सदस्यों द्वारा खुली प्रक्रिया में विकसित किया जाता है और OSGi विशिष्टता लाइसेंस के अंतर्गत जनता को निःशुल्क उपलब्ध कराया जाता है।[3] ओएसजीआई एलायंस का नियामक अनुपालन कार्यक्रम है जो केवल सदस्यों के लिए खुला है। नवंबर 2010 तक, सात प्रमाणित ओएसजीआई फ्रेमवर्क कार्यान्वयन हैं।[4] अलग पृष्ठ प्रमाणित और गैर-प्रमाणित दोनों ओएसजीआई विशिष्टता कार्यान्वयन को सूचीबद्ध करता है, जिसमें ओएसजीआई ढांचे और अन्य ओएसजीआई विनिर्देश शामिल हैं।

वास्तुकला

File:Osgi framework.svg
ओएसजीआई सर्विस गेटवे आर्किटेक्चर

ओएसजीआई मॉड्यूलर सॉफ्टवेयर प्रोग्राम और लाइब्रेरी को विकसित करने और तैनात करने के लिए जावा फ्रेमवर्क है। प्रत्येक बंडल कक्षाओं, जार और कॉन्फ़िगरेशन फ़ाइलों का कसकर युग्मित, गतिशील रूप से लोड करने योग्य संग्रह है जो स्पष्ट रूप से उनकी बाहरी निर्भरता (यदि कोई हो) घोषित करता है।

रूपरेखा को वैचारिक रूप से निम्नलिखित क्षेत्रों में विभाजित किया गया है:

बंडल
बंडल अतिरिक्त मेनिफेस्ट हेडर के साथ सामान्य JAR (फ़ाइल प्रारूप) घटक हैं।
सेवाएँ
सेवा परत सादे पुराने जावा इंटरफेस (पीओजेआई) या सादे पुराने जावा ऑब्जेक्ट्स (पीओजेओ) के लिए प्रकाशन-खोज-बाइंड मॉडल की पेशकश करके बंडलों को गतिशील तरीके से जोड़ती है।
सेवा रजिस्ट्री
प्रबंधन सेवाओं के लिए अप्लिकेशन प्रोग्रामिंग अंतरफलक
जीवन-चक्र
बंडलों के लिए जीवन चक्र प्रबंधन (इंस्टॉल, स्टार्ट, स्टॉप, अपडेट और अनइंस्टॉल) के लिए एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस।
मॉड्यूल
वह परत जो एनकैप्सुलेशन और निर्भरता की घोषणा को परिभाषित करती है (कैसे बंडल कोड आयात और निर्यात कर सकता है)।
सुरक्षा
वह परत जो बंडल कार्यक्षमता को पूर्व-निर्धारित क्षमताओं तक सीमित करके सुरक्षा पहलुओं को संभालती है।
निष्पादन पर्यावरण
परिभाषित करता है कि किसी विशिष्ट प्लेटफ़ॉर्म में कौन सी विधियाँ और कक्षाएं उपलब्ध हैं। निष्पादन वातावरण की कोई निश्चित सूची नहीं है, क्योंकि यह परिवर्तन के अधीन है क्योंकि जावा समुदाय प्रक्रिया जावा के नए संस्करण और संस्करण बनाती है। हालाँकि, निम्नलिखित सेट वर्तमान में अधिकांश OSGi कार्यान्वयन द्वारा समर्थित है:
  • कनेक्टेड डिवाइस कॉन्फ़िगरेशन|सीडीसी-1.0/फाउंडेशन-1.0
  • कनेक्टेड डिवाइस कॉन्फ़िगरेशन|सीडीसी-1.1/फाउंडेशन-1.1
  • ओएसजीआई/न्यूनतम-1.0
  • ओएसजीआई/न्यूनतम-1.1
  • जेआरई-1.1
  • J2SE-1.2 से J2SE-1.6 तक

बंडल

File:Osgi-system-layering.svg
वर्गीकरण: ओएसजीआई

बंडल जावा कक्षाओं और विस्तृत मेनिफेस्ट से सुसज्जित अतिरिक्त संसाधनों का समूह है MANIFEST.MF संपूर्ण समुच्चय को घटक मानने की सीमा तक, जावा कक्षाओं के शामिल समूह को अधिक परिष्कृत व्यवहार देने के लिए आवश्यक अतिरिक्त सेवाओं के साथ-साथ इसकी सभी सामग्रियों पर फ़ाइल करें।

नीचे विशिष्ट उदाहरण दिया गया है MANIFEST.MF OSGi हेडर के साथ फ़ाइल:

 Bundle-Name: Hello World
 Bundle-SymbolicName: org.wikipedia.helloworld
 Bundle-Description: A Hello World bundle
 Bundle-ManifestVersion: 2
 Bundle-Version: 1.0.0
 Bundle-Activator: org.wikipedia.Activator
 Export-Package: org.wikipedia.helloworld;version="1.0.0"
 Import-Package: org.osgi.framework;version="1.3.0"

उदाहरण में सामग्री का अर्थ इस प्रकार है:[5]

  1. बंडल-नाम: इस बंडल के लिए मानव-पठनीय नाम परिभाषित करता है, बस बंडल को संक्षिप्त नाम निर्दिष्ट करता है।
  2. बंडल-प्रतीकात्मक नाम: एकमात्र आवश्यक हेडर, यह प्रविष्टि रिवर्स डोमेन नाम नोटेशन (जावा पैकेज द्वारा भी उपयोग किया जाता है) के आधार पर बंडल के लिए अद्वितीय पहचानकर्ता निर्दिष्ट करती है।
  3. बंडल-विवरण: बंडल की कार्यक्षमता का विवरण।
  4. बंडल-मैनिफेस्ट संस्करण: इस बंडल को पढ़ने के लिए उपयोग करने के लिए ओएसजीआई विनिर्देश को इंगित करता है।
  5. बंडल-संस्करण: बंडल के लिए संस्करण संख्या निर्दिष्ट करता है।
  6. बंडल-एक्टिवेटर: बंडल सक्रिय होने के बाद क्लास नाम को इंगित करता है।
  7. निर्यात-पैकेज: व्यक्त करता है कि बंडल में कौन से जावा पैकेज बाहरी दुनिया के लिए उपलब्ध कराए जाएंगे।
  8. आयात-पैकेज: इंगित करता है कि बंडल में आवश्यक निर्भरता को पूरा करने के लिए बाहरी दुनिया से कौन से जावा पैकेज की आवश्यकता होगी।

जीवन-चक्र

File:OSGi Bundle Life-Cycle.svg
ओएसजीआई बंडल जीवन-चक्र

एक जीवन चक्र परत बंडलों को जोड़ती है जिन्हें गतिशील रूप से स्थापित, प्रारंभ, बंद, अद्यतन और अनइंस्टॉल किया जा सकता है। बंडल क्लास लोडिंग के लिए मॉड्यूल परत पर निर्भर करते हैं लेकिन रन टाइम में मॉड्यूल को प्रबंधित करने के लिए एपीआई जोड़ते हैं। जीवन चक्र परत उन गतिशीलता का परिचय देती है जो आम तौर पर किसी एप्लिकेशन का हिस्सा नहीं होती हैं। पर्यावरण के सही संचालन को सुनिश्चित करने के लिए व्यापक निर्भरता तंत्र का उपयोग किया जाता है। जीवन चक्र संचालन सुरक्षा वास्तुकला के साथ पूरी तरह से संरक्षित हैं।

बंडल अवस्था विवरण
INSTALLED बंडल सफलतापूर्वक स्थापित किया गया है।
RESOLVED बंडल के लिए आवश्यक सभी जावा कक्षाएं उपलब्ध हैं। यह स्थिति इंगित करती है कि बंडल या तो प्रारंभ होने के लिए तैयार है या बंद हो गया है।
STARTING बंडल प्रारंभ किया जा रहा है, BundleActivator.start विधि को कॉल किया गया है लेकिन प्रारंभ विधि अभी तक वापस नहीं आई है। जब बंडल में एक सक्रियण नीति होती है, तो बंडल अपनी सक्रियण नीति के अनुसार सक्रिय होने तक बंडल STARTING स्थिति में रहेगा।
ACTIVE बंडल सफलतापूर्वक सक्रिय हो गया है और चल रहा है; इसके बंडल एक्टिवेटर प्रारंभ विधि को कॉल किया गया है और वापस कर दिया गया है।
STOPPING बंडल रोका जा रहा है। BundleActivator.stop विधि को कॉल किया गया है लेकिन स्टॉप विधि अभी तक वापस नहीं आई है।
UNINSTALLED बंडल अनइंस्टॉल कर दिया गया है। वह दूसरे राज्य में नहीं जा सकता।

BundleActivator इंटरफ़ेस को लागू करने वाले एक विशिष्ट जावा क्लास का उदाहरण नीचे दिया गया है:

package org.wikipedia;

import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;

public class Activator implements BundleActivator {
	private BundleContext context;

	@Override
	public void start(BundleContext context) throws Exception {
		System.out.println("Starting: Hello World");
		this.context = context;
	}

	@Override
	public void stop(BundleContext context) throws Exception {
		System.out.println("Stopping: Goodbye Cruel World");
		this.context = null;
	}
}

सेवाएँ

मानक सेवाएँ

OSGi एलायंस ने कई सेवाएँ निर्दिष्ट की हैं। सेवाएँ जावा इंटरफ़ेस द्वारा निर्दिष्ट की जाती हैं। बंडल इस इंटरफ़ेस को कार्यान्वित कर सकते हैं और सेवा रजिस्ट्री के साथ सेवा पंजीकृत कर सकते हैं। सेवा के ग्राहक इसे रजिस्ट्री में पा सकते हैं, या इसके प्रकट होने या गायब होने पर प्रतिक्रिया दे सकते हैं।

नीचे दी गई तालिका OSGi सिस्टम सेवाओं का विवरण दिखाती है:

System Services विवरण
Logging सूचना, चेतावनियों, डिबग जानकारी या त्रुटियों की लॉगिंग को लॉग सेवा के माध्यम से नियंत्रित किया जाता है। यह लॉग प्रविष्टियाँ प्राप्त करता है और फिर इन प्रविष्टियों को अन्य बंडलों को भेजता है जिन्होंने इस जानकारी की सदस्यता ली है।
Configuration Admin यह सेवा ऑपरेटर को तैनात बंडलों की कॉन्फ़िगरेशन जानकारी सेट करने और प्राप्त करने की अनुमति देती है।
Device Access मौजूदा उपकरणों की स्वचालित पहचान और अनुलग्नक के समन्वय की सुविधा प्रदान करता है। इसका उपयोग प्लग एंड प्ले परिदृश्यों के लिए किया जाता है।
User Admin यह सेवा प्रमाणीकरण और प्राधिकरण उद्देश्यों के लिए उपयोगकर्ता जानकारी (निजी और सार्वजनिक) वाले डेटाबेस का उपयोग करती है।
IO Connector IO कनेक्टर सेवा CDC/CLDC javax.microedition.io पैकेज को एक सेवा के रूप में कार्यान्वित करती है। यह सेवा बंडलों को नई और वैकल्पिक प्रोटोकॉल योजनाएं प्रदान करने की अनुमति देती है।
Preferences प्राथमिकताओं को संग्रहीत करने के लिए जावा के डिफ़ॉल्ट Properties का उपयोग करने के लिए एक वैकल्पिक, अधिक ओएसजीआई-अनुकूल तंत्र प्रदान करता है।
Component Runtime सेवाओं की गतिशील प्रकृति—वे किसी भी समय आ और जा सकती हैं—सॉफ़्टवेयर लिखना कठिन बना देती हैं। कंपोनेंट रनटाइम विनिर्देश निर्भरता की XML आधारित घोषणा प्रदान करके इन गतिशील पहलुओं को संभालना आसान बना सकता है।
Deployment Admin प्रबंधन एजेंट की कुछ जिम्मेदारियों तक पहुंच का मानकीकरण करता है।
Event Admin प्रकाशित-और-सदस्यता मॉडल के आधार पर एक अंतर-बंडल संचार तंत्र प्रदान करता है।
Application Admin एक साथ उपलब्ध कई अलग-अलग प्रकार के अनुप्रयोगों के साथ पर्यावरण के प्रबंधन को सरल बनाता है।

नीचे दी गई तालिका OSGi प्रोटोकॉल सेवाओं का विवरण दिखाती है:

Protocol Services विवरण
HTTP Service HTTP का उपयोग करके OSGi से जानकारी भेजने और प्राप्त करने की अनुमति देता है।
UPnP Device Service निर्दिष्ट करता है कि यूनिवर्सल प्लग एंड प्ले (UPnP) उपकरणों के साथ इंटरऑपरेट करने के लिए OSGi बंडलों को कैसे विकसित किया जा सकता है।
DMT Admin ओपन मोबाइल एलायंस (OMA) डिवाइस प्रबंधन विनिर्देशों की अवधारणाओं का उपयोग करके डिवाइस के प्रबंधन के लिए एक एपीआई को परिभाषित करता है।

नीचे दी गई तालिका OSGi विविध सेवाओं का विवरण दिखाती है:

Miscellaneous Services विवरण
Wire Admin निर्माता सेवा और उपभोक्ता सेवा के बीच संबंध की अनुमति देता है।
XML Parser XML पार्सर सेवा एक बंडल को वांछित गुणों और JAXP के साथ संगतता वाले पार्सर का पता लगाने की अनुमति देती है।
Measurement and State माप और राज्य सेवा OSGi सेवा प्लेटफ़ॉर्म में माप के सही प्रबंधन की अनुमति देती है और सरल बनाती है।

संगठन

ओएसजीआई एलायंस की स्थापना मार्च 1999 में एरिक्सन, आईबीएम, MOTOROLA , सन माइक्रोसिस्टम्स और अन्य द्वारा की गई थी। गैर-लाभकारी निगम के रूप में शामिल होने से पूर्व, इसे कनेक्टेड एलायंस कहा जाता था।

इसके सदस्यों में शामिल हैं (as of February 2015) बिल्कुल भिन्न व्यावसायिक क्षेत्रों की 35 से अधिक कंपनियाँ, उदाहरण के लिए एडोब इंक, डॉयचे टेलीकॉम, Hitachi , आईबीएम, लाइफ़रे, मेकवेव, एनईसी, निप्पॉन टेलीग्राफ एंड टेलीफोन, ओरेकल कॉर्पोरेशन, ऑरेंज एसए, प्रोसिस्ट, बिक्री बल , सीमेंस, सॉफ्टवेयर इंक और टिब्को सॉफ्टवेयर[6] एलायंस के पास निदेशक मंडल है जो संगठन का समग्र प्रशासन प्रदान करता है। अलायंस का समर्थन करने में OSGi अधिकारियों की विभिन्न भूमिकाएँ और जिम्मेदारियाँ हैं। तकनीकी कार्य निदेशक मंडल द्वारा चार्टर्ड विशेषज्ञ समूहों (ईजी) के भीतर आयोजित किया जाता है, और गैर-तकनीकी कार्य विभिन्न कार्य समूहों और समितियों में आयोजित किया जाता है। विशेषज्ञ समूहों के भीतर किए गए तकनीकी कार्यों में विशिष्टताओं का विकास, संदर्भ कार्यान्वयन और अनुपालन परीक्षण शामिल हैं। इन विशेषज्ञ समूहों ने ओएसजीआई विनिर्देशों के पांच प्रमुख रिलीज तैयार किए हैं (As of 2012).

उद्यम, मोबाइल, वाहन और मुख्य प्लेटफ़ॉर्म क्षेत्रों के लिए समर्पित विशेषज्ञ समूह मौजूद हैं।

एंटरप्राइज एक्सपर्ट ग्रुप (ईईजी) नवीनतम ईजी है और एंटरप्राइज/सर्वर-साइड अनुप्रयोगों को संबोधित कर रहा है। नवंबर 2007 में आवासीय विशेषज्ञ समूह (आरईजी) ने आवासीय/होम-गेटवे को दूरस्थ रूप से प्रबंधित करने के लिए विशिष्टताओं पर कार्य करना शुरू किया। अक्टूबर 2003 में, नोकिया, मोटोरोला, अंतर्राष्ट्रीय व्यवसाय तंत्र, प्रोसिस्ट और अन्य ओएसजीआई सदस्यों ने मोबाइल एक्सपर्ट ग्रुप (एमईजी) का गठन किया, जो अगली पीढ़ी के स्मार्ट मोबाइल फोन के लिए एमआईडीपी-आधारित सेवा प्लेटफॉर्म निर्दिष्ट करेगा, जो कनेक्टेड कुछ जरूरतों को संबोधित करेगा। सीमित डिवाइस कॉन्फ़िगरेशन प्रबंधित नहीं किया जा सकता – कनेक्टेड डिवाइस कॉन्फ़िगरेशन के अलावा अन्य। MEG R4 की तरह OSGi का हिस्सा बन गया।

विशिष्टता संस्करण

  • ओएसजीआई रिलीज़ 1 (आर1): मई 2000
  • ओएसजीआई रिलीज़ 2 (आर2): अक्टूबर 2001
  • ओएसजीआई रिलीज़ 3 (आर3): मार्च 2003
  • ओएसजीआई रिलीज 4 (आर4): अक्टूबर 2005/सितंबर 2006
    • कोर विशिष्टता (आर4 कोर): अक्टूबर 2005
    • मोबाइल विशिष्टता (आर4 मोबाइल/जेएसआर-232): सितंबर 2006
  • ओएसजीआई रिलीज 4.1 (आर4.1): मई 2007 (एकेए जेएसआर-291)
  • ओएसजीआई रिलीज 4.2 (आर4.2): सितंबर 2009
    • एंटरप्राइज विशिष्टता (आर4.2): मार्च 2010
  • ओएसजीआई रिलीज़ 4.3 (आर4.3): अप्रैल 2011
    • कोर: अप्रैल 2011
    • सार-संग्रह एवं आवासीय: मई 2012
  • ओएसजीआई रिलीज़ 5 (आर5): जून 2012
    • कोर और एंटरप्राइज: जून 2012
  • ओएसजीआई रिलीज़ 6 (आर6): जून 2015
    • कोर: जून 2015
  • ओएसजीआई रिलीज 7 (आर7): अप्रैल 2018
    • कोर और सार-संग्रह: अप्रैल 2018
  • OSGi रिलीज़ 8 (R8): दिसंबर 2020[7]

संबंधित मानक

ओएसजीआई का उपयोग करने वाली परियोजनाएं

  • एडोब अनुभव प्रबंधक – उद्यम सामग्री प्रबंधन प्रणाली[8]
  • अपाचे मेष – ओएसजीआई एंटरप्राइज एक्सपर्ट ग्रुप द्वारा परिभाषित एप्लिकेशन-केंद्रित विशिष्टताओं का ब्लूप्रिंट कंटेनर कार्यान्वयन और विस्तार
  • अपाचे स्लिंग – जावा सामग्री रिपॉजिटरी के लिए सामग्री रिपॉजिटरी एपीआई के लिए ओएसजीआई-आधारित एप्लिकेशन परत
  • एटलसियन संगम और एटलसियन वहाँ – इस एंटरप्राइज़ विकी और इश्यू ट्रैकर के लिए प्लग-इन आर्किटेक्चर OSGi का उपयोग करता है
  • बीआईआरटी परियोजना|बिजनेस इंटेलिजेंस एंड रिपोर्टिंग टूल्स (बीआईआरटी) प्रोजेक्ट – ओपन सोर्स रिपोर्टिंग इंजन
  • साइटोस्केप – खुला स्रोत जैव सूचना विज्ञान सॉफ़्टवेयर प्लेटफ़ॉर्म (संस्करण 3.0 के अनुसार)
  • डेटा डेटान्यूक्लियस – सेवा-उन्मुख आर्किटेक्चर में ओपन सोर्स डेटा सेवाएं और दृढ़ता मंच
  • डीडीएफ – वितरित डेटा फ्रेमवर्क मुफ़्त और ओपन-सोर्स डेटा एकीकरण प्रदान करता है
  • डॉटसीएमएस – खुला स्रोत वेब सामग्री प्रबंधन
  • ईज़ीबीन्स – खुला स्रोत ईजेबी 3 कंटेनर
  • ग्रहण (सॉफ्टवेयर) – ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
  • iDempiere – ओपन सोर्स उद्यम संसाधन योजना ब्रांच ग्लोबलक्यूएसएस पूरा का ओएसजीआई कार्यान्वयन है जो मूल रूप से लो हेंग सिन द्वारा शुरू किया गया था।[9]
  • कन्या (सॉफ्टवेयर) – ओपन सोर्स माइक्रोकर्नेल-आधारित सर्वर ओएसजीआई बंडलों से निर्मित और ओएसजीआई अनुप्रयोगों का समर्थन करता है
  • कांच की मछली (v3) –जावा ईई के लिए एप्लिकेशन सर्वर
  • फ़्यूज़ ईएसबी – ServiceMix 4 का उत्पादीकृत और समर्थित रिलीज़
  • एकीकृत जीनोम ब्राउज़र – जीनोम डेटा को देखने, तलाशने और विश्लेषण करने के लिए खुला स्रोत, डेस्कटॉप जीयूआई
  • इंटेलीजे आइडिया – मुफ्त सामुदायिक संस्करण के साथ जावा आईडीई और समृद्ध ग्राहक मंच
  • जेबॉस – Red Hat का JBoss एप्लिकेशन सर्वर
  • जोनास 5 – ओपन सोर्स जावा ईई 5 एप्लिकेशन सर्वर
  • जोसो 2 – एट्रीकोर का खुला स्रोत मानक-आधारित पहचान और पहुंच प्रबंधन प्लेटफ़ॉर्म
  • लाइफ़रे – ओपन सोर्स और वाणिज्यिक उद्यम पोर्टल प्लेटफ़ॉर्म संस्करण 7.x से OSGi का उपयोग करते हैं
  • लूसी 5 – खुला स्रोत सीएफएमएल वेब एप्लिकेशन सर्वर
  • NetBeans – ओपन सोर्स आईडीई और रिच क्लाइंट प्लेटफ़ॉर्म
  • नक्सियो – ओपन सोर्स उद्यम सामग्री प्रबंधन सर्विस प्लेटफॉर्म
  • डेलाइट प्रोजेक्ट खोलेंसॉफ़्टवेयर-परिभाषित नेटवर्किंग को अपनाने में तेजी लाने के लक्ष्य के साथ परियोजना
  • ओपनईजेबी – ओपन सोर्स ओएसजीआई-सक्षम ईजेबी 3.0 कंटेनर जिसे स्टैंडअलोन या एम्बेडेड मोड दोनों में चलाया जा सकता है
  • ओपनएचएबी – ओपन सोर्स होम ऑटोमेशन सॉफ्टवेयर
  • ओपनवर्म – कैनोर्हाडाइटिस एलिगेंस|सी का ओपन सोर्स सॉफ्टवेयर सिमुलेशन। एलिगेंस, समर्पित गेपेट्टो मॉड्यूलर प्लेटफॉर्म के माध्यम से
  • अकना – अकाना से एपीआई गेटवे, पोर्टल और एनालिटिक्स सर्वर (पूर्व में एसओए सॉफ्टवेयर)
  • वेबलॉजिक – ओरेकल वेबलॉजिक एप्लिकेशन सर्वर
  • वेबस्फेयर – आईबीएम वेबस्फीयर जेईई एप्लिकेशन सर्वर
  • वेबमेथड्स – सॉफ्टवेयरएजी वेबमेथड्स
  • WSO2 कार्बन – WSO2 के एंटरप्राइज़-ग्रेड ओपन सोर्स मिडलवेयर स्टैक के लिए बेस प्लेटफ़ॉर्म
  • पेंटाहो - व्यापारिक सूचना (बीआई) सॉफ्टवेयर जो डेटा एकीकरण, ओएलएपी, प्रतिवेदन , डैशबोर्ड (प्रबंधन सूचना प्रणाली), डेटा खनन और एक्सट्रैक्ट, ट्रांसफॉर्म, लोड (ईटीएल) क्षमताएं प्रदान करता है।

वर्तमान रूपरेखा कार्यान्वयन

Name License
Apache Felix Open source
Apache Karaf Open source
Concierge OSGi Open source
Equinox OSGi Open source
Eclipse Gemini Open Source
Knopflerfish Open Source

यह भी देखें

  • ओएसजीआई विशिष्टता कार्यान्वयन

संदर्भ

  1. "OSGi Alliance | Specifications / HomePage". osgi.org. 2020. Retrieved October 3, 2022.
  2. "Announcement of Transition to Eclipse Foundation".
  3. "ओएसजीआई विशिष्टता लाइसेंस". Archived from the original on 2015-09-14. Retrieved 2012-05-10.
  4. "OSGi Alliance | Markets / Certified". Archived from the original on 2008-09-25. Retrieved 2017-06-23.
  5. Creating OSGi bundles by Costin Leau
  6. OSGi Alliance | About / Members
  7. "OSGi Core Release 8 is now final and published".
  8. "फॉरेस्टर ने वेब सामग्री प्रबंधन नेताओं के नाम बताए". CMSWire. 2018-11-16. Retrieved 5 December 2018.
  9. "Adempiere Branch_GlobalQSS_361". adempiere.com/. Retrieved 27 September 2014.

अग्रिम पठन

Template:अग्रिम पठन cleanup

बाहरी संबंध