Patent ID: 8484452

Claim:
A multi-OS booting apparatus which boots at least two operating systems (operating system hereinafter called an OS) of a first OS and a second OS, comprising: (1) a primary storage unit having a memory area with respect to which a memory space is defined; (2) a secondary storage unit for storing a second boot loader and the second OS; (3) an OS execution unit for causing a first boot loader to perform loading the second boot loader and the second OS from the secondary storage unit into the memory area of the primary storage unit, which is defined as a first memory space managed by the first OS with respect to the primary storage device by a first context, wherein the loading is performed by running the first boot loader, which is to run under the first OS that operates in the first context being a context indicating control information for a CPU (Central Processing Unit) and being a context for the first OS, under the first OS operating in the first context; and (4) a loader execution unit for causing the second boot loader to generate a context for the second boot loader, which defines a third memory space with respect to the primary storage unit, wherein the third memory space includes a memory area defined as a second memory space managed by the second OS and a memory area where the second boot loader and the second OS have been loaded, and to perform switching from the first context to the context generated for the second boot loader, by executing the second boot loader, which has been loaded into the memory area defined as the first memory space, under the first OS operating in the first context, for causing the second boot loader to load the second OS, which has been loaded into the memory area of the primary storage unit by the first boot loader, into the memory area of the primary storage unit defined as the second memory space included in the third memory space, and to generate a context for the second OS, by executing the second boot loader in the context for the second boot loader, and for causing the second boot loader to perform switching from the context for the second loader to the context generated for the second OS, and to boot the second OS in the context for the second OS.