Electrical computers and digital processing systems: support – Digital data processing system initialization or configuration – Loading initialization program
Reexamination Certificate
2000-02-17
2003-03-11
Heckler, Thomas M. (Department: 2183)
Electrical computers and digital processing systems: support
Digital data processing system initialization or configuration
Loading initialization program
C709S222000
Reexamination Certificate
active
06532538
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates generally to an improved data processing system and in particular to a method and an apparatus for supporting multiple operating systems. Still more particularly, the present invention provides a method to allow multiple operating systems resident on the same physical disk to run on different computers at the same time.
2. Description of Related Art
Loading and running an operating system (OS) is accomplished by using a bootstrap program. Normally, starting the operating system is a two step process involving a “simple” boot program that determines which operating system to load and a more complex boot program that actually loads the selected operating system. The simple boot program, usually stored in nonvolatile system RAM (NVRAM), is used to perform system resource initialization. Specifically, the simple boot program initializes registers in the Central Processing Unit (CPU) and initializes device controllers, such as controllers for the system disk and memory. The simple boot program can read and write to memory and can load from a boot block on the system disk. The boot block contains the master boot record (MBR) and is located at sector 0 of the system disk drive.
The master boot record (MBR) is loaded from the system disk and contains a partition table and some executable code. The master boot record executable code scans the partition table for a single active partition, loads the first sector from the active partition into memory, and executes this code, which is the boot code for the selected operating system. This operating system boot code loads the operating system that is being booted and starts the operating system in a defined manner.
If a hard disk contains, for example, an MS-DOS partition, a LINUX partition, a Windows NT partition, and an IBM OS/2 partition, a user can change which of these systems will be started by changing the active partition. The active partition may be set by storing this information in nonvolatile system RAM (NVRAM). Normally the last operating system installed on the system disk drive updates the NVRAM so that this operating system will be booted. But an operating system can provide a utility program that allows a different operating system to be designated as the active partition in NVRAM. This then allows the next reboot to boot to a different operating system.
Although the above method allow the user to select an operating system to be booted at system startup, this method does not allow two or more operating systems on different machines to run at the same time from the same system disk. Thus, any machine making use of a shared system disk having, for example, an OS/2 partition as the active partition must itself run under the OS/2 operating system. This limits the versatility of the system and places restrictions on the system resources, such as the type of file system, that can be accessed. Therefore, it would be advantageous to have a method and a system for accessing a shared system resource, such as a system disk drive, so that different machines may run different operating systems and access appropriate system resources at the same time.
SUMMARY OF THE INVENTION
The present invention provides a method and system for running, on different computers at the same time, multiple operating systems from the same shared system resource. This is accomplished, for example, by using persistent elemental disk reservations. Each machine reads the master boot record without reservation to determine the partition of the operating system to be booted. Each machine then makes an elemental exclusive write persistent reservation for accessing the operating system boot partition. This is followed by each machine making another elemental exclusive write persistent reservation for accessing the operating system partition itself. Each machine is assigned a different operating system partition even if they are running the same operating system. The unique reservation key for these reservations is created from at least on of a Processor ID, a Cluster ID, a Multiple Processor partition ID, a Non-Uniform Memory Access complex ID, and/or a Non-Uniform Memory Access node ID.
REFERENCES:
patent: 4747040 (1988-05-01), Blanset et al.
patent: 5278973 (1994-01-01), O'Brien et al.
patent: 5828888 (1998-10-01), Kozaki et al.
patent: 5870554 (1999-02-01), Grossman et al.
patent: 5960175 (1999-09-01), Grossman et al.
patent: 6178503 (2001-01-01), Madden et al.
patent: 6330669 (2001-12-01), McKeeth
patent: 2293675 (1996-04-01), None
Cronk Matthew Slade
McBrearty Gerald Francis
Mullen Shawn Patrick
Shieh Johnny Meng-Han
Heckler Thomas M.
International Business Machines - Corporation
LandOfFree
Method and system for supporting multiple operating systems... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for supporting multiple operating systems..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for supporting multiple operating systems... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3004985