Professional Documents
Culture Documents
Bios and The Uefi
Bios and The Uefi
Bios and The Uefi
Vocabulary
BIOS
Instructions used to start the computer from a cold
start. (power off to power on).
The BIOS instructions are written on non-volatile
RAM.
BIOS
POST
BIOS Completion
Memory count
Search for the OS Boot device
Optical drive
USB device
Network device
HDD
Partition Table
BIOS/UEFI
UEFI
GPT
UEFI Boot
UEFI Features
EFI defines two types of services: boot services and runtime services.
Boot services are only available while the firmware owns the
platform (before the ExitBootServices call). Boot services include text
and graphical consoles on various devices, and bus, block and file
services. Runtime services are still accessible while the operating
system is running; they include services such as date, time and
NVRAM access.
UEFI variables provide a way to store data, in particular non-volatile
data, that is shared between platform firmware and operating
systems or UEFI applications. Variable namespaces are identified by
GUIDs, and variables are key/value pairs.
UEFI provides device-independent time services. Time services
include support for timezone and daylight saving fields, which allow
the hardware real-time clock to be set to local time or UTC.
UEFI Features
Protocols
EFI defines protocols as set of software interfaces used for communication between
two binary modules. All EFI drivers must provide services to others via protocols.
Device drivers
In addition to standard architecture-specific device drivers, the EFI specification
provides for a processor-independent device driver environment, called EFI Byte
Code or EBC.
OS can rely on EFI for basic graphics and network functions until OS specific drivers
are loaded.
Graphics features
The EFI specification defined a UGA (Universal Graphic Adapter) protocol as a way to
support device-independent graphics.
UEFI 2.1 defined a "Human Interface Infrastructure" (HII) to manage user input,
localized strings, fonts, and forms (in the HTML sense). These enable OEMs or IBVs to
design graphical interfaces for pre-boot configuration. UEFI itself does not define a
user interface.
Most early UEFI implementations were console-based, but as early as 2007 some
implementations featured a graphical user interface
UEFI Booting
CSM booting
For backwards compatibility, most of the UEFI implementations on PC-class machines
also support booting in legacy BIOS mode from MBR-partitioned disks, through the
Compatibility Support Module (CSM)
Network booting
UEFI specification includes support for booting over network through the Preboot
eXecution Environment (PXE). Underlying network protocols include Internet
Protocol (IPv4 and IPv6), User Datagram Protocol (UDP), Dynamic Host Configuration
Protocol (DHCP) and Trivial File Transfer Protocol (TFTP).
Included is also support for boot images remotely stored on storage area networks
(SANs), with Internet Small Computer System Interface (iSCSI) and Fibre Channel over
Ethernet (FCoE)
Secure boot
The UEFI 2.2 specification adds a protocol known as Secure boot, which can secure
the boot process by preventing the loading of drivers or OS loaders that are not
signed with an acceptable digital signature. Secure boot is supported by Windows 8,
Windows Server 2012, and selected Linux distributions.
UEFI booting
The UEFI specification defines a "boot manager", a firmware policy engine
that is in charge of loading the operating system loader and all necessary
drivers.
The boot configuration is controlled by a set of global NVRAM variables,
including boot variables that indicate the paths to the loaders.
Operating system loaders are a class of the UEFI applications. As such, they
are stored as files on a file system that can be accessed by the firmware,
called EFI System partition (ESP).
UEFI does not rely on a boot sector, although ESP provides space for it as
part of the backwards compatibility.[28]
UEFI booting from GPT disks is commonly called UEFI-GPT.
Boot loaders can also be automatically detected by the UEFI firmwares, to
enable booting from removable devices.]
It is common for UEFI firmware to include a user interface to the boot
manager, to allow the user to select and load the operating system among
the possible options.
POST
OS Initialization
Service &
App Init
Interface
Legacy BIOS
UEFI
Agnostic
Mode
32/64 bit
Boot Partition
Runtime Services
No
Yes
Driver model
No
Yes
POST Graphics
VGA
Architecture
* A zettabyte is equal to 1B terabytes. The total amount of global data was expected to pass 1.2 ZB sometime during 2010.