A system and method for initialization of a computer system is described.
Faster initialization of a computer system is possible by allowing
certain device driver initialization tasks to overlap with other
initialization and operating system tasks. option-ROMs resident on
hardware device drivers define the initialization tasks to be performed
prior to device driver initialization. Initial computer code for booting
the computing device, such as a BIOS, is executed. As option-ROMs for
hardware devices are scanned and executed, specific device initialization
information is accessed from the devices and placed in pre-defined buffer
areas. These accesses occur in parallel to other start up tasks. When
device drivers are loaded, some of their initialization has already
completed, thereby shortening the time necessary to boot the system.