Patent ID: 8533696
Filing Date: 2013-09-10
Classification: G06F

Abstract:
1. A method for running a plurality of software instances on an embedded computer system without requiring substantial modifications to each software instance, comprising: running a first instance of the plurality of instances on a first CPU of a plurality of CPUs of the computer system; running a second instance of the plurality of instances on a second CPU of the plurality of CPUs of the computer system, wherein the first instance and the second instance are run according to an instance scheduler; storing context information relating to the first instance, wherein each of the first instance and the second instance comprises a set of independent threads of execution, an operating system, and a thread scheduler that performs scheduling or swapping of threads among the set of independent threads internal to each instance; providing page tables that map virtual addresses and physical addresses and are used to swap instances; choosing the second instance from among the plurality of instances, wherein the choosing is performed by the instance scheduler; and swapping the second instance for the first instance, wherein the swapping is performed using the instance scheduler and the page tables, wherein the second instance is configured to run on the first CPU and the second CPU, wherein the second instance is running on the second CPU and is then swapped to run on the first CPU.