摘要 |
A system and method is described that takes an existing operating system (OS) level driver and transforms it into a firmware extension, in one embodiment, for the extensible firmware interface (EFI). In one embodiment, an existing driver is stored in flash memory, without modification. When initializing the system, a mapping driver examines this image. Based on a determined image format and subtype, it is known whether the existing driver is compatible with Linux, Windows, fcode, or another type. Based on the type, the mapping driver either fills in the blanks and maps directly to the EFI services, or rewrites some of the flash with binary (in memory). The driver is typically compressed when in flash memory. Once the OS is booted, the OS uses its own driver.
|