explanation in simpler/clearer terms? edit

To be quite honest, after reading the introduction, I'm still wondering what OSGi is. It might be nice to cut down on the buzzwords and instead try to explain it in simpler/clearer terms.

Additionally, the very first sentence is about OSGi Alliance, and not OSGi. The organization behind a specification is of course important, but I am very doubtful to it being that important. TERdON 13:25, 28 May 2007 (UTC)Reply
Some definitions or additional articles may be required. What is a "service gateway" (IBM seems to use the term "web services gateway")? There is no other article on the subject. Nitwit005 18:26, 14 August 2007 (UTC)Reply

Just a thought: it is mentioned that the OSGi framework enables installing, starting etc without a reboot, this could be made more clear, I assume that you mean that the java process does not need to be restarted in order to install new modules. A reboot seems like a computer reboot, and the link further strengthen the idea. mabac 19:39, 29 Jan 2012 (CET)

In essence it’s a fine example of the Inner-platform effect. They re-invented the wheel of small programs interacting with each other on a machine, where you can start/stop them, and they connect via ports that are bound to daemons. They just call the machine “JavaVM”, the daemons “modules”, the applications “bundles”, the ports “interfaces”, the coordinating OS “services registry”, etc. Typical enterprisey consultant FAIL. — 88.77.141.225 (talk) 17:41, 4 March 2012 (UTC)Reply

- Interesting - OSGi originated from the embedded world. First do some investigation and understanding before commenting? FAIL. — Preceding unsigned comment added by Pkriens (talkcontribs) 10:59, 17 November 2012 (UTC)Reply

Judging by the comments here the introduction is clearly not achieving its aim. I would be willing to work on a better version, but it would be good to get feedback (preferably from non-experts) so that I can see whether I'm actually doing any better. Reffik (talk) 20:16, 3 July 2012 (UTC)Reply
I would like to see a description of WHAT NEEDS that OSGi fills that was not previously available? Specifically, a description of a sample installation with the functions that OSGi provides? — Preceding unsigned comment added by 167.102.133.216 (talk) 18:40, 31 December 2015 (UTC)Reply

Why a software infobox? edit

OSGi is not a specific piece of software but rather a specification; like J2EE is a specification and WebLogic is an implementation.


In addition to the above comment, I'd like to add my concern for the fact that the infobox states Java as OSGi's operating system, which really doesn't sound right. First of all, OSGi is not bound to a specific operating system, and second, Java is not an operating system. --77.5.230.107 (talk) 09:55, 17 July 2012 (UTC)Reply

Agreed, changed it to a standardref infobox. Dcxf (talk) 12:20, 18 September 2013 (UTC)Reply

OSGi Definition edit

Can somebody explain to me what exactly is this OSGi? —Preceding unsigned comment added by Sen4u nav (talkcontribs) 05:53, 16 February 2010 (UTC)Reply


What is OSGI in a nut shell ? —Preceding unsigned comment added by 203.13.146.61 (talk) 06:26, 9 March 2010 (UTC)Reply

Once you get past all the buzzwords, it seems to be about a standard for hot-pluggable modules, but I'm still not sure ;-) 201.235.249.18 (talk) 21:14, 17 March 2010 (UTC).Reply

thanks

See my section below about the Inner-platform effect. The analogy clarifies it instantly. — 88.77.141.225 (talk) 17:47, 4 March 2012 (UTC)Reply

Comparison / Evaluation edit

There is now quite a long list of OSGi projects and platforms. It would be a very good time to establish some criteria for how these alternatives compare and relate.

For example; I was looking at getting into a FOSS project that uses Knopflerfish. In this case my purpose is to take part in an open source OSGi based project. I'd like to know, or compare Knopflerfish with one or two other FOSS OSGi alternatives like Felix, Glassfish or Equinox.

There are quite a few good models for comparing and evaluating open source on wikipedia already. I'll add my thoughts on what distinctions I'd look for when comparing something like an OSGi architecture (specification).

Evaluation edit

comparison edit

benefits comparison edit

Collate each project's benefits against both the OSGi and a specific implementation project. As well, include benefits not (yet included) in the OSGi, or for optional parts.

features comparison edit

Collate each project's feature with the OSGi and other implementation projects. This ought encompass features that are outside the (or, yet to be included) in the OSGi core and for optional OSGi parts.

interface comparison edit

Compare the interface implementation as well as the effective interchangeableness for bundles between on OSGi implementation and another. I also reckon that this area should include an evaluation for (any?) offered bundle and component repository (e.g. like the Felix repository).

interoperability and flexibility edit

How or if-ever, easily can I transfer a bundle from (say) a Glassfish base project to a Websphere?

How easily can Java evolution like JavaFX and third party community technologies like JFXtras merge with the OSGi implementation.

tool support edit

What development and project tools and frameworks support or interoperate with a particular OSGi model?

projects edit

Compare the projects themselves on the factual or basic areas like

  • licensing,
  • pros
  • cons
  • affiliates, obligation, etc

Life-cycle needs security info/link edit

The life-cycle says that all life-cycle operations are protected by security, but that text doesn't have a link to a description of the security methodology, and the toplevel article index doesn't have a section about security either. Somebody please update this article to include material and/or link. 198.144.192.45 (talk) 16:56, 28 March 2011 (UTC) Twitter.Com/CalRobert (Robert Maas)Reply

Needs section on how this is a good example of the Inner-platform effect. edit

They re-invented the wheel of small programs interacting with each other on a machine, using a OS to coordinate everything, where they run/quit, and they communicate via ports/sockets that are bound to daemons/services. They just call the machine “JavaVM”, the daemons “modules”, the applications “bundles”, the ports “interfaces”, the coordinating OS “services registry”, etc. Typical enterprisey consultant FAIL. — 88.77.141.225 (talk) 17:45, 4 March 2012 (UTC)Reply

This needs to be clarified, so people can avoid it.

I'm new to OSGi, but I think you are mistaken for several reasons, one of them being that OSGi was designed to be suitable for machines without any such OS. Rp (talk) 23:01, 22 September 2013 (UTC)Reply

That comment is pretty academiccy. "small programs interacting with each other on a machine, using a OS to coordinate everything" is good end-of-semester project. Hot-plugging a single process with stuff generated by various development subsections running in an environment where a network stack may not even exist not so much. And do you REALLY want to go through your RPC lookup registry and coordinate via horrible RPC I/O when you just want to call a function locally? I doubt it. Also, are servlet engines and their servlets a symptom of an "inner platform effect". Are threads? Maybe! (There was the article by Eric Raymond, "Threads or threats?" "use Processes". But threads have their uses.) There is a T101 in your kitchen (talk) 07:28, 13 March 2020 (UTC)Reply

I fail to see the point of this comment. I'm trying to be nice here. Architectures of completely dynamic software components aren't exactly new, aren't exactly pointless, and do need standardization, which OSGi provides. Their purpose is not to replace local function calls with RPC calls. Their purpose is to provide more flexible modularization than architectures which bind everything at compile time can provide. Take a look at some OSGi applications, e.g. Eclipse's plugin architecture, and tell us how they would be better done without OSGi. How would you reliably upgrade plugins pulled in from remote repositories? How can you upgrade an Eclipse plugin from a running Eclipse? Have you considered the scale and importance of the applications concerned? These are not student projects. Rp (talk) 15:42, 18 March 2020 (UTC)Reply