concept OSGi service registry in category osgi

This is an excerpt from Manning's book OSGi in Depth.
We’ll also cover the OSGi service registry and several less common, albeit still essential, APIs of the framework, such as the event listener interfaces.
We register a service into the OSGi service registry by using the BundleContext class provided in the BundleActivator, as shown in the following listing. We should register the Printer service when the helloworld bundle is started and unregister the service when the bundle is stopped.

This is an excerpt from Manning's book OSGi in Action: Creating Modular Applications in Java.
The NetBeans platform has a lot in common with OSGi. It defines a fairly sophisticated module layer and also promotes interface-based programming using a lookup pattern that is similar to the OSGi service registry. Whereas OSGi focused on embedded devices and dynamism, the NetBeans platform was originally an implementation layer for the IDE. Eventually, the platform was promoted as a separate tool in its own right, but it focused on being a complete GUI application platform with abstractions for file systems, windowing systems, and much more. NetBeans has never been seen as comparable to OSGi, even though it is; perhaps OSGi’s more narrow focus is an asset in this case.
Table 12.1. Blueprint component container managers