Operating systems are executed on common program and interrupt service routine of low priority OS is modified to response to interrupts from common program only
First Claim
1. A method of enabling multiple different operating systems to run concurrently on the same computer, comprising:
- selecting a first operating system to have a high priority;
selecting at least one second operating system to have a lower priority than the first operating system;
providing a common program arranged to switch between said first and second operating systems under predetermined conditions; and
modifying said first and second operating systems to allow them to be controlled by said common program,wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts.
4 Assignments
0 Petitions
Accused Products
Abstract
A method of enabling multiple different operating systems to run concurrently on the same computer, comprising selecting a first operating system to have a relatively high priority (the realtime operating system. such as C5); selecting at least one secondary operating system to have a relatively lower priority (the general purpose operating system, such as Linux); providing a common program (a hardware resource dispatcher similar to a nanokernel) arranged to switch between said operating systems under predetermined conditions; and providing modifications to said first and second operating systems to allow them to be controlled by said common program.
56 Citations
35 Claims
-
1. A method of enabling multiple different operating systems to run concurrently on the same computer, comprising:
-
selecting a first operating system to have a high priority; selecting at least one second operating system to have a lower priority than the first operating system; providing a common program arranged to switch between said first and second operating systems under predetermined conditions; and modifying said first and second operating systems to allow them to be controlled by said common program, wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A computer system comprising a CPU, memory devices and input/output devices, having executing thereon computer code comprising:
-
a first operating system having a relatively high priority; a second operating system having a relatively lower priority; and a common program arranged to run said first and second operating systems concurrently by switching between said operating systems under predetermined conditions; wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts. - View Dependent Claims (32)
-
-
33. A development kit computer program product stored in a memory and comprising code that, when executed by a processor performs the steps of:
-
selecting a first operating system having a relatively high priority; selecting a second operating system having a relatively lower priority;
providing a common program arranged to run said first and second operating systems concurrently by switching between said first and second operating systems under predetermined conditions; andmodifying said first and second operating systems to allow them to be controlled by said common program, wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts.
-
-
34. A computer program product stored in a memory and comprising code that, when executed thereon by a processor comprising code combining:
-
a first operating system having a relatively high priority; a second operating system having a relatively lower priority; and a common program arranged to run said first and second operating systems concurrently by switching between said first and second operating systems under predetermined conditions; wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts.
-
-
35. An embedded computer system comprising a CPU, memory devices and input/output devices, having stored on persistent memory therein programs embedded comprising:
-
a first operating system having a relatively high priority; a second operating system having a relatively lower priority; and a common program arranged to run said first and second operating systems concurrently by switching between said first and second operating systems under predetermined conditions; wherein the second operating system is modified to replace hardware interrupt service routines responsive to hardware interrupts with virtual interrupt service routines each of which is responsive to a respective virtual interrupt, wherein hardware interrupt masking is removed from the second operating system, and wherein the second operating system is adapted to respond to interrupt events from the common program instead of hardware interrupts.
-
Specification