Operating system distributed over heterogeneous platforms
First Claim
1. An operating system, comprising:
- at least two instances of the operating system stored in computer readable memory and distributed among at least two different heterogeneous platforms within a computing device, the at least two different heterogeneous platforms comprising a first platform on a first substrate and a second platform on a second substrate different from the first substrate, the first platform comprising a first functionality and at least one application module configured to interact with the first platform via a first local communication path and with the second platform via a remote communication path, the second platform comprising a second functionality and at least one other application module configured to interact with the first platform via the remote communication path and with the second platform via a second local communication path, said at least two instances using single-kernel semantics, the single-kernel semantics presenting a common homogenous operating system abstraction to the at least one application module and the at least one other application module such that the first functionality and second functionality are available to the at least one application module and the at least one other application module in a manner transparent to the at least one application module, the at least one other application module, the first functionality, and the second functionality.
2 Assignments
0 Petitions
Accused Products
Abstract
An illustrative operating system distributes two or more instances of the operating system over heterogeneous platforms of a computing device. The instances of the operating system work together to provide single-kernel semantics to present a common operating system abstraction to application modules. The heterogeneous platforms may include co-processors that use different instruction set architectures and/or functionality, different NUMA domains, etc. Further, the operating system allows application modules to transparently access components using a local communication path and a remote communication path. Further, the operating system includes a policy manager module that determines the placement of components based on affinity values associated with interaction relations between components. The affinity values express the sensitivity of the interaction relations to a relative location of the components.
19 Citations
20 Claims
-
1. An operating system, comprising:
at least two instances of the operating system stored in computer readable memory and distributed among at least two different heterogeneous platforms within a computing device, the at least two different heterogeneous platforms comprising a first platform on a first substrate and a second platform on a second substrate different from the first substrate, the first platform comprising a first functionality and at least one application module configured to interact with the first platform via a first local communication path and with the second platform via a remote communication path, the second platform comprising a second functionality and at least one other application module configured to interact with the first platform via the remote communication path and with the second platform via a second local communication path, said at least two instances using single-kernel semantics, the single-kernel semantics presenting a common homogenous operating system abstraction to the at least one application module and the at least one other application module such that the first functionality and second functionality are available to the at least one application module and the at least one other application module in a manner transparent to the at least one application module, the at least one other application module, the first functionality, and the second functionality. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A computing device, comprising:
-
a first processor of a first platform executing a first operating system instance distributed on the first platform of the computing device, the first platform comprising first functionality on a first substrate; and a second processor of a second platform executing a second operating system instance distributed on the second platform of the computing device, the second platform being different from the first platform and comprising second functionality on a second substrate, the first operating system instance and the second operating system instance being configured to present a common operating system abstraction to an application resident on the first platform such that the first functionality of the first platform is available to the application via a local communication path and the second functionality of the second platform is available to the application via a remote communication path in a manner transparent to the application, the first functionality, and the second functionality. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
a first processor of a first platform on a computing device; a second processor on a second platform on the computing device, the second platform being communicatively linked with the first platform; and an operating system comprising a first operating system instance distributed on the first platform and a second operating system instance distributed on the second platform, the first operating system instance and second operating system instance being configured to present a common operating system abstraction to one or more applications resident on the first platform and configured to be implemented on the operating system such that functionality on the first platform is available to the one or more applications via a local communication path and other functionality on the second platform is available to the one or more applications via a remote communication path in a manner transparent to the one or more applications, the functionality and the other functionality. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification