Fast initialization of medical device system having multiple operating systems
First Claim
1. A medical device system comprising:
- a communication circuit;
a microprocessor coupled to the communication circuit, the microprocessor having registers, and the microprocessor operable to execute instruction code associated with at least a first operating system and a second operating system, where only one operating system executes at a time, a portion of the instruction code executed to communicate with a medical device;
a volatile system memory in communication with the microprocessor, the volatile system memory to store executable code, including code of an executing operating system;
a nonvolatile memory to store executable startup code;
nonvolatile image storage to store at least one captured state image, wherein the captured state image includes an image of memory and microprocessor registers in a captured state, the captured state associated with a non-executing operating system;
a system transition routine to transition the system between the executing operating system and the non-executing operating system when an application to be run on the microprocessor requires the non-executing operating system, wherein the system transition routine converts content of volatile memory and microprocessor registers to a captured state in accordance with the non-executing operating system captured state image stored in the nonvolatile image storage; and
wherein the image storage includes at least a first captured state image associated with the first operating system and at least a second captured state image associated with the second operating system, and wherein the second captured state image is stored within the first captured state image.
1 Assignment
0 Petitions
Accused Products
Abstract
A system including a communication circuit and a microprocessor operable to execute instruction code associated with at least a first operating system and a second operating system. The system also includes a volatile system memory to store executable code, a nonvolatile memory to store executable startup code, and nonvolatile image storage to store at least one captured state image. The captured state image includes an image of system memory in a captured state associated with a non-executing operating system. The system further includes a system transition routine to transition between the executing operating system and the non-executing operating system when an application to be run on the microprocessor requires the non-executing operating system. The system transition routine converts content of volatile memory and microprocessor registers to a captured state in accordance with the non-executing operating system captured state image stored in the nonvolatile image storage.
-
Citations
58 Claims
-
1. A medical device system comprising:
-
a communication circuit; a microprocessor coupled to the communication circuit, the microprocessor having registers, and the microprocessor operable to execute instruction code associated with at least a first operating system and a second operating system, where only one operating system executes at a time, a portion of the instruction code executed to communicate with a medical device; a volatile system memory in communication with the microprocessor, the volatile system memory to store executable code, including code of an executing operating system; a nonvolatile memory to store executable startup code; nonvolatile image storage to store at least one captured state image, wherein the captured state image includes an image of memory and microprocessor registers in a captured state, the captured state associated with a non-executing operating system; a system transition routine to transition the system between the executing operating system and the non-executing operating system when an application to be run on the microprocessor requires the non-executing operating system, wherein the system transition routine converts content of volatile memory and microprocessor registers to a captured state in accordance with the non-executing operating system captured state image stored in the nonvolatile image storage; and wherein the image storage includes at least a first captured state image associated with the first operating system and at least a second captured state image associated with the second operating system, and wherein the second captured state image is stored within the first captured state image. - 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. A method comprising:
-
loading a first captured state image from non-volatile memory into volatile memory, wherein the first captured state image is associated with a first operating system and includes a second captured state image within the first captured state image, wherein the second captured state image is associated with a second operating system and is loaded into volatile memory with the first captured state image; interrupting a first operating system executing on a microprocessor-based medical device system when an application associated with a second non-executing operating system is selected for execution on the system; retrieving a captured memory image and a captured state data structure associated with the second operating system from volatile image storage; and transferring system control to the second operating system. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
-
44. A system comprising:
-
a communication circuit; a microprocessor coupled to the communication circuit, the microprocessor having registers, and the microprocessor operable to execute instruction code associated with at least first and second operating systems, where only one operating system executes at a time, a portion of the executable code for communicating with a medical device; a volatile system memory in communication with the microprocessor, the volatile system memory to store executable code, including code of an executing operating system; a nonvolatile memory to store executable startup code; nonvolatile image storage to store at least a first captured state image associated with the first operating system and at least a second captured state image associated with the second operating system, wherein the second captured state image is stored within the first captured state image, and wherein a captured state image includes an image of memory and microprocessor registers in a captured state; and a system transition routine to transition between the executing and the non-executing operating systems when an application to be run on the microprocessor requires the non-executing operating system, wherein the system transition routine includes code to cause the microprocessor to execute instructions in system management mode (SMM) to convert contents of volatile memory and microprocessor registers to a captured state in accordance with the non-executing operating system captured state image. - View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53)
-
-
54. A system comprising:
-
a communication circuit; a microprocessor coupled to the communication circuit, the microprocessor having registers, and the microprocessor operable to execute instruction code associated with at least a first operating system and a second operating system, where only one operating system executes at a time, a portion of the instruction code executed to communicate with a medical device; a volatile system memory in communication with the microprocessor, the volatile system memory to store executable code, including code of an executing operating system; a nonvolatile memory to store executable startup code; nonvolatile image storage to store a plurality of captured state images, wherein a captured state image includes an image of memory and microprocessor registers in a captured state, the captured state associated with one of the plurality of operating systems; a direct memory access (DMA) controller operable to store information in the volatile system memory and retrieve information from the nonvolatile system memory, the DMA controller operable to interpret the contents of a RAM bitmap and a zero bitmap; and a system transition routine to transition the system between an executing operating system and a non-executing operating system when an application to be run on the microprocessor requires the non-executing operating system, the transition routine including; a DMA controller initialization routine to load the Ram bitmap and the zero bitmap into the DMA controller and start a DMA operation, the DMA operation to convert content of volatile memory to a captured state in accordance with the non-executing operating system captured state image stored in the nonvolatile image storage; a operating system switching routine to convert content of microprocessor registers and to transition control of the system to the non-executing operating system; and a system capture routine to create captured state images of volatile system memory and store the non-executing operating system captured state image within an executing operating system captured state image on the nonvolatile image storage. - View Dependent Claims (55, 56, 57, 58)
-
Specification