Method and apparatus for booting a computer system without loading a device driver into memory
First Claim
1. In a computer system comprising a central processing unit (CPU), a boot device, a boot prom and a main memory, the CPU being coupled to the boot device, the boot prom and the memory, a method for booting said computer system to a root executable segment of an operating system without requiring loading of a device driver for the boot device into the main memory, said method comprising the steps of:
- during system start up, giving to the CPU a start address of a bootstrap program residing in the boot prom;
the CPU fetching an initial instruction of the bootstrap program from the start address and thereby beginning execution of the bootstrap program;
the bootstrap program initializing a boot prom interface in said memory by setting a pointer in said boot prom interface to point to a device driver residing in said boot prom;
the bootstrap program loading a boot program from said boot device into said memory using said device driver;
the bootstrap program transferring control to said loaded boot program;
said loaded boot program using said device driver pointed to by said pointer in said boot prom interface to load the root executable segment from said boot device into said memory, said boot program having a file subsystem reader interface for said root executable segment of said operating system to load other relocatable segments of said operating system; and
said loaded boot program transferring control to said loaded root executable segment of said operating system, said root executable segment using said boot program to load said other relocatable segments until a root file subsystem and a root device driver is loaded.
0 Assignments
0 Petitions
Accused Products
Abstract
In a computer system, a system boot prom having a bootstrap program is provided for booting the computer system from a boot device having a boot program and an operating system. The bootstrap program is designed to create a boot prom interface through which the boot program uses to locate the device driver for loading the operating system from the boot device. As a result, the device driver for the boot device may be provided in the system boot prom or a third party boot prom, thereby allowing the computer system to be booted from either a standard or a third party boot device without requiring rebuilding of the system boot prom. Additionally, a boot program interface and stand-alone I/O library routines are provided to the boot program for a root executable segment of an operating system without the root file system and root device driver to use the boot program to load other relocatable segments of the operating system on an as needed basis until the root file system and root device driver are loaded, thereby allowing the computer system to be booted with such basic root executable segment of an operating system.
112 Citations
24 Claims
-
1. In a computer system comprising a central processing unit (CPU), a boot device, a boot prom and a main memory, the CPU being coupled to the boot device, the boot prom and the memory, a method for booting said computer system to a root executable segment of an operating system without requiring loading of a device driver for the boot device into the main memory, said method comprising the steps of:
-
during system start up, giving to the CPU a start address of a bootstrap program residing in the boot prom; the CPU fetching an initial instruction of the bootstrap program from the start address and thereby beginning execution of the bootstrap program; the bootstrap program initializing a boot prom interface in said memory by setting a pointer in said boot prom interface to point to a device driver residing in said boot prom; the bootstrap program loading a boot program from said boot device into said memory using said device driver;
the bootstrap program transferring control to said loaded boot program;said loaded boot program using said device driver pointed to by said pointer in said boot prom interface to load the root executable segment from said boot device into said memory, said boot program having a file subsystem reader interface for said root executable segment of said operating system to load other relocatable segments of said operating system; and said loaded boot program transferring control to said loaded root executable segment of said operating system, said root executable segment using said boot program to load said other relocatable segments until a root file subsystem and a root device driver is loaded. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. In a computer system comprising a central processing unit (CPU) coupled to a main memory, an apparatus for booting said computer system
said boot device coupled to said CPU, said boot device having said boot program and said operating system, said operating system having at least said root executable segment, said boot program being located in a predetermined location of said boot device and having a file subsystem reader interface for said root executable segment of said operating system to load other relocatable segments of said operating system; -
a boot prom coupled to said CPU, the boot prom having the device driver and a bootstrap program resident; and an input device coupled to said CPU for providing to the CPU a start address of a bootstrap program during system start up, the CPU fetching an initial instruction of the bootstrap program from the start address and thereby beginning execution of the bootstrap program, the bootstrap program initializing a boot prom interface in said memory by setting a pointer in said boot prom interface to point to said device driver, the bootstrap program loading said boot program from said boot device into said memory using said device driver, the bootstrap program transferring control to said loaded boot program, said loaded boot program using said device driver pointed to by said pointer in said boot prom interface to load the root executable segment from said boot device into said memory, and said loaded boot program transferring control to said loaded root executable segment of said operating system, said root executable segment using said boot program to load said other relocatable segments until a root file subsystem and a root device driver is loaded. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. In a computer system comprising a central processing unit (CPU), a boot device, a boot prom, a device driver prom and a main memory, the CPU being coupled to the boot device, the boot prom, the device driver prom and the memory, a method for booting said computer system to a root executable segment of an operating system without requiring loading of a device driver for the boot device into the main memory, said method comprising the steps of:
-
during system start up, giving to the CPU a start address of a bootstrap program residing in the boot prom; the CPU fetching an initial instruction of the bootstrap program from the start address and thereby beginning execution of the bootstrap program; the bootstrap program initializing a boot prom interface in said memory by setting a pointer in said boot prom interface to point to a device driver residing in said device driver prom; the bootstrap program loading a boot program from said boot device into said memory using said device driver; the bootstrap program transferring control to said loaded boot program; said loaded boot program using said device driver pointed to by said pointer in said boot prom interface to load the root executable segment from said boot device into said memory, said boot program having a file subsystem reader interface for said root executable segment of said operating system to load other relocatable segments of said operating system; and said loaded boot program transferring control to said loaded root executable segment of said operating system, said root executable segment using said boot program to load said other relocatable segments until a root file subsystem and a root device driver is loaded. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. In a computer system comprising a central processing unit (CPU) coupled to a main memory, an apparatus for booting said computer system to a root executable segment of an operating system without requiring loading of a device driver for a boot device into the main memory, said apparatus comprising:
-
said boot device coupled to said CPU, said boot device having said boot program and said operating system, said operating system having at least said root executable segment, said boot program being located in a predetermined location of said boot device and having a file subsystem reader interface for said root executable segment of said operating system to load other relocatable segments of said operating system; a device driver prom coupled to said CPU, said device driver prom having the device driver resident; a boot prom coupled to said CPU, the boot prom having a bootstrap program resident; and an input device coupled to said CPU for providing to the CPU a start address of the bootstrap program during system start up, the CPU fetching an initial instruction of the bootstrap program from the start address and thereby beginning execution of the bootstrap program, the bootstrap program initializing a boot prom interface in said memory by setting a pointer in said boot prom interface to point to said device driver, the bootstrap program loading said boot program from said boot device into said memory using said device driver, the bootstrap program transferring control to said loaded boot program, said loaded boot program using said device driver pointed to by said pointer in said boot prom interface to load the root executable segment from said boot device into said memory, and said loaded boot program transferring control to said loaded root executable segment of said operating system, said root executable segment using said boot program to load said other relocatable segments until a root file subsystem and a root device driver is loaded. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification