3.2. Architecture

The residential gateway software architecture is depicted in Figure 3.1. It usually consists of several layers. The operating system and the Java platform,[1] usually supplied by gateway vendors, make up the foundation of the execution environment. The OSGi software runs on top of the Java runtime environment. It consists of

[1] The service gateways are high-end devices, but they are resource-constrained devices nonetheless. The Java Embedded Server product supports two types of the Java platform that target this class of applications: PersonalJava™ and Connected Device Configuration Foundation Profiles; the latter is part of the Java™ 2 Micro Edition (J2ME™) [58].

Figure 3.1. The service gateway software architecture. The standard bundles are shaded. The framework and the bundles are software written in a way that is compliant with the OSGi specification.


  • The framework,[2] which serves as the underpinning common environment for hosting a set of bundles

    [2] This colorless but agreeable term is the term used in the OSGi specification. The counterpart in the Java Embedded Server version 1.x products that predate the OSGi was ServiceSpace. The term is no longer in use in version 2.0 of the product.

  • The bundles, which are the software components plugged into the framework. A bundle may provide zero, one, or multiple services.

    - The OSGi defines two standard services: the Log service and the HTTP service. It also specifies the DA architecture. Only the Log service is mandatory; the HTTP service and the DA are optional for an OSGi 1.0-based implementation.

    - Service providers are expected to develop bundles to extend the functionality of the gateway.

In this paradigm, new bundles can be developed separately from the framework or any other existing bundles. They can then be deployed to the framework at run-time. Consequently, the “purpose” of the gateway is determined by the combined functionality of the active bundles, which can come and go over time. Like a versatile actor, it can be cast into drastically different roles.

Next we explain what a service and a bundle are; then we describe how they interact in the framework.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.148.144.228