IP Library Granted Patent US 8,365,191
Granted Patent B2
US 8,365,191 · App. 12/211,319 · Granted Jan 29, 2013

Container for disparate software components

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,365,191
App. No.
12/211,319
Granted
Jan 29, 2013
Kind
B2
Abstract

A computer readable medium embodying instructions executable by a processor to perform a method for hosting components implemented in different computer readable languages within one process. The method includes instantiating a container within a single process, creating a hosting environment for each of a plurality of components, and wherein loading the components by respective environments and wherein the hosting environments are objects instantiated within the container and within the one process, and wherein the plurality of components are implemented in respective a computer readable language, and instantiating a container communication framework object within the container and the one process for processing serialized messages of the components, wherein specific language adapters convert data types of the components to a common implementation, wherein the messages of the plurality of components are processed within the container.

Claims (51)

1. A non-transitory computer readable medium embodying instructions executable by a processor to perform a method for hosting components implemented in different computer readable languages within one process, the method steps comprising:

instantiating a container within one process;

creating a hosting environment for each of a plurality of components,

wherein the hosting environments are objects instantiated within the container and within the one process, and

wherein the plurality of components are implemented in a respective computer readable language; and

instantiating a container communication framework object within the container and the one process for processing serialized messages of the components,

wherein specific language adapters convert data types of the components to a common implementation,

wherein the messages of the plurality of components are processed within the container, and

wherein instantiating the container comprises:

maintaining, by a lifecycle manager, a list of services, service components and shared components of the plurality of components;

creating a service manager object for each service of the list of services; and

associating the plurality of components with respective ones of the services.

2. The computer readable medium of claim 1 , wherein the method further comprises storing a component instance configuration including resource information for each of the plurality of components.

3. The computer readable medium of claim 1 , wherein instantiating the container further comprises:

providing a generic framework to host the plurality of components; and

hiding component implementation specifics.

4. The computer readable medium of claim 1 , wherein the method further comprises:

serializing the messages to the plurality of components, wherein an interface is defined for applications and services enabling interaction with the plurality of components; and

deserializing replies to the messages to a respective hosting environment.

5. The computer readable medium of claim 1 , wherein the method further comprises copying data to a shared memory buffer for inter-component communication.

6. A method for creating a device for hosting components implemented in different computer readable languages comprising:

instantiating a container within one process executing on a processor;

creating a hosting environment for each computer readable language,

wherein the hosting environments are objects instantiated within the container, and

wherein each hosting environment supports at least one component within the one process;

loading the components by respective hosting environments and instantiating the components within the container; and

instantiating a container communication framework object within the container for processing serialized messages of the components,

wherein specific language adapters convert data types of the components to a common implementation within the container,

wherein the container manages the components through the container communication framework object, and

wherein instantiating the container comprises:

maintaining, by a lifecycle manager, a list of services, service components and shared components of a plurality of components, the plurality of components implemented in the respective computer readable language;

creating a service manager object for each service of the list of services; and

associating the plurality of components with respective ones of the services.

7. The method of claim 6 , further comprising storing a component instance configuration including resource information for each of the plurality of components.

8. The method of claim 6 , wherein the container is a generic framework to host the components and hides component implementation specifics between components for inter component communication.

9. The method of claim 6 , further comprising:

serializing the messages to the components, wherein an interface is defined for applications and services enabling interaction with the components; and

deserializing replies to the messages to the respective hosting environment.

10. The method of claim 6 , further comprising copying data to a shared memory buffer for inter-component communication.

11. A non-transitory computer readable medium embodying instructions executable by a processor to perform a method for hosting components implemented in different computer readable languages within one process, the method steps comprising:

instantiating a container within one process;

creating a hosting environment for each of a plurality of components,

wherein the hosting environments are objects instantiated within the container and within the one process, and

wherein the plurality of components are implemented in a respective computer readable language; and

instantiating a container communication framework object within the container and the one process for processing messages of the components,

wherein language adapters associated with respective hosting environments convert messages of the components to a common implementation for inter-component communication,

wherein the conversion of the messages includes serializing the messages passed to the container communication framework object and deserializing replies to the messages received from the container communication framework object, and

wherein instantiating the container comprises:

maintaining, by a lifecycle manager, a list of services, service components and shared components of a plurality of components;

creating a service manager object for each service of the list of services; and

associating the plurality of components with respective ones of the services.

Assignments (2)
MERGER Recorded Apr 12, 2010
From: SIEMENS CORPORATE RESEARCH, INC.
To: SIEMENS CORPORATION
Reel/Frame 024216/0434 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2008
From: GRUENEWALD, THOMAS; LUDWIG, HARTMUT; MUENZEL, GEORG
To: SIEMENS CORPORATE RESEARCH, INC.
Reel/Frame 022017/0716 →