Extensible Firmware Interface
Encyclopedia
The Unified Extensible Firmware Interface (UEFI) is a specification that defines a software interface
Interface (computer science)
In the field of computer science, an interface is a tool and concept that refers to a point of interaction between components, and is applicable at the level of both hardware and software...

 between an operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

 and platform firmware
Firmware
In electronic systems and computing, firmware is a term often used to denote the fixed, usually rather small, programs and/or data structures that internally control various electronic devices...

. UEFI is a more secure replacement for the older BIOS
BIOS
In IBM PC compatible computers, the basic input/output system , also known as the System BIOS or ROM BIOS , is a de facto standard defining a firmware interface....

 firmware interface, present in all IBM PC-compatible
IBM PC compatible
IBM PC compatible computers are those generally similar to the original IBM PC, XT, and AT. Such computers used to be referred to as PC clones, or IBM clones since they almost exactly duplicated all the significant features of the PC architecture, facilitated by various manufacturers' ability to...

 personal computer
Personal computer
A personal computer is any general-purpose computer whose size, capabilities, and original sales price make it useful for individuals, and which is intended to be operated directly by an end-user with no intervening computer operator...

s, which is vulnerable to bootkit malware
Malware
Malware, short for malicious software, consists of programming that is designed to disrupt or deny operation, gather information that leads to loss of privacy or exploitation, or gain unauthorized access to system resources, or that otherwise exhibits abusive behavior...

.

The original EFI (Extensible Firmware Interface) specification was developed by Intel. In 2005, development of the EFI specification ceased in favour of UEFI, which had evolved from EFI 1.10. The UEFI specification is being developed by the industry-wide organization Unified EFI Forum.

UEFI is not restricted to any specific processor architecture and can run on top of, or instead of, older BIOS implementations.

History

The original motivation for EFI came during early development of the first Intel–HP Itanium
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

 systems in the mid-1990s. PC BIOS limitations (16-bit processor mode, 1 MB addressable space, PC AT hardware dependencies, etc.) were seen as unacceptable for the larger server platforms Itanium was targeting. The effort to address these concerns was initially called Intel Boot Initiative, which began in 1998 and was later renamed EFI.

In July 2005 Intel ceased development of the EFI spec at version 1.10, and contributed it to the Unified EFI Forum, which has evolved the specification as the Unified Extensible Firmware Interface (UEFI). The original EFI spec remains owned by Intel, which exclusively provides licenses for EFI-based products, but the UEFI specification is owned by the Forum.

Version 2.1 of the UEFI (Unified Extensible Firmware Interface) specification was released on January 7, 2007. It added cryptography
Cryptography
Cryptography is the practice and study of techniques for secure communication in the presence of third parties...

, network authentication and the User Interface
User interface
The user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...

 Architecture (Human Interface Infrastructure in UEFI). The current UEFI specification, version 2.3.1, was approved in April 2011.

An overview of late 2011 usages of UEFI by independent by hardware, BIOS, and software vendors.

Contents

The interface defined by the EFI specification includes data tables that contain platform information, and boot and runtime services that are available to the OS loader and OS. UEFI firmware provides several technical advantages:
  • Ability to boot from large disks (over 2 TiB
    Tebibyte
    The tebibyte is a standards-based binary multiple of the byte, a unit of digital information storage. The tebibyte unit symbol is TiB....

    )
  • Faster boot-up
  • CPU-independent architecture
  • CPU-independent drivers
  • Flexible pre-OS environment, including network capability
  • Modular design


Some existing enhancements to PC BIOS, such as the Advanced Configuration and Power Interface
Advanced Configuration and Power Interface
In computing, the Advanced Configuration and Power Interface specification provides an open standard for device configuration and power management by the operating system....

 (ACPI) and System Management BIOS
SMBIOS
In computing, the System Management BIOS specification defines data structures in a BIOS which allows a user or application to store and retrieve information specifically about the computer in question. Circa 1999, it became part of the domain of the Distributed Management Task Force...

 (SMBIOS), are also present in EFI, as they do not rely on a 16-bit runtime interface.

Disk device compatibility

In addition to the standard PC disk partition scheme, which uses a master boot record
Master boot record
A master boot record is a type of boot sector popularized by the IBM Personal Computer. It consists of a sequence of 512 bytes located at the first sector of a data storage device such as a hard disk...

 (MBR), EFI works with a new partitioning scheme: GUID Partition Table
GUID Partition Table
In computer hardware, GUID Partition Table is a standard for the layout of the partition table on a physical hard disk. Although it forms a part of the Extensible Firmware Interface standard , it is also used on some BIOS systems because of the limitations of MBR partition tables, which restrict...

 (GPT). GPT is free from many of the limitations of DOS MBR. In particular, the DOS MBR limits on the number and size of disk partitions (up to 4 partitions per disk, up to 2.2 TB
Terabyte
The terabyte is a multiple of the unit byte for digital information. The prefix tera means 1012 in the International System of Units , and therefore 1 terabyte is , or 1 trillion bytes, or 1000 gigabytes. 1 terabyte in binary prefixes is 0.9095 tebibytes, or 931.32 gibibytes...

 (241 byte
Byte
The byte is a unit of digital information in computing and telecommunications that most commonly consists of eight bits. Historically, a byte was the number of bits used to encode a single character of text in a computer and for this reason it is the basic addressable element in many computer...

s) per disk) are relaxed. GPT allows for a maximum disk and partition size of 9.4 ZB
Zettabyte
A zettabyte is a unit of information or computer storage equal to one sextillion bytes....

 (273 bytes). The EFI specification does not prescribe any particular file system
File system
A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...

. The only Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 versions that can boot from disks larger than 2.2 TB are 64-bit versions of Windows Vista
Windows Vista
Windows Vista is an operating system released in several variations developed by Microsoft for use on personal computers, including home and business desktops, laptops, tablet PCs, and media center PCs...

 and later client operating systems, Windows Server 2008 and later, and the Itanium versions of Windows Server 2003 and Windows XP.

Processor compatibility

As of version 2.3, processor bindings exist for Itanium, x86, x86_64 and ARM.

The BIOS is limited to a 16-bit processor mode and 1 MB of addressable space due to the design being based on the IBM 5150 which used the 16-bit Intel 8088
Intel 8088
The Intel 8088 microprocessor was a variant of the Intel 8086 and was introduced on July 1, 1979. It had an 8-bit external data bus instead of the 16-bit bus of the 8086. The 16-bit registers and the one megabyte address range were unchanged, however...

. In comparison, the UEFI processor mode can be either 32-bit (x86-32, ARM) or 64-bit (x86-64
X86-64
x86-64 is an extension of the x86 instruction set. It supports vastly larger virtual and physical address spaces than are possible on x86, thereby allowing programmers to conveniently work with much larger data sets. x86-64 also provides 64-bit general purpose registers and numerous other...

 and Itanium). 64-bit UEFI understands long mode
Long mode
In the x86-64 computer architecture, long mode is the mode where a 64-bit application can access 64-bit instructions and registers...

 which allows applications in the pre-boot execution environment to have direct access to all of the memory using 64-bit addressing.

UEFI requires the firmware and operating system to be size-matched; i.e. a 64-bit UEFI implementation can only boot a 64-bit UEFI operating system.

Services

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.

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
Device driver
In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device....

 environment, called EFI Byte Code or EBC. System firmware is required by the UEFI specification to carry an interpreter for any EBC images that reside in or are loaded into the environment. In that sense, EBC is similar to Open Firmware
Open Firmware
Open Firmware, or OpenBoot in Sun Microsystems parlance, is a standard defining the interfaces of a computer firmware system, formerly endorsed by the Institute of Electrical and Electronics Engineers . It originated at Sun, and has been used by Sun, Apple, IBM, and most other non-x86 PCI chipset...

, the hardware-independent firmware used in PowerPC
PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...

-based Apple Macintosh and Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

 SPARC
SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....

 computers, among others.

Some architecture-specific (non-EBC) EFI device driver types can have interfaces for use from the operating system. This allows the OS to rely on EFI for basic graphics and network functions until OS specific drivers are loaded.

Booting

UEFI does not rely on a working boot sector
Boot sector
A boot sector or boot block is a region of a hard disk, floppy disk, optical disc, or other data storage device that contains machine code to be loaded into random-access memory by a computer system's built-in firmware...

 only, but needs a special partition table referring to a special partition containing a specially located file with a standardized name depending on the actual architecture to boot (\EFI\BOOT\boot[architecture name].efi).

Boot loaders are a class of UEFI applications. As such, they are stored as files on a file system
File system
A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...

 that can be accessed by the firmware. Boot variables, stored in NVRAM, indicate the paths to the loaders. Boot loaders can also be auto-detected by firmware, for instance to enable booting on removable devices.

It is common for UEFI firmware to include a boot manager, to allow the user to select and load the operating system among the possible options.

The EFI shell

EFI provides a shell environment
Shell (computing)
A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...

. The shell can be used to execute other EFI applications.

Extensions

Extensions to EFI can be loaded from virtually any non-volatile
Non-volatile memory
Non-volatile memory, nonvolatile memory, NVM or non-volatile storage, in the most basic sense, is computer memory that can retain the stored information even when not powered. Examples of non-volatile memory include read-only memory, flash memory, ferroelectric RAM, most types of magnetic computer...

 storage device attached to the computer. For example, an original equipment manufacturer
Original Equipment Manufacturer
An original equipment manufacturer, or OEM, manufactures products or components that are purchased by a company and retailed under that purchasing company's brand name. OEM refers to the company that originally manufactured the product. When referring to automotive parts, OEM designates a...

 (OEM) can distribute systems with an EFI partition on the hard drive, which would add additional functions to the standard EFI firmware stored on the motherboard's ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

.

Intel EFI

Intel's implementation of EFI is the Intel Platform Innovation Framework, codenamed "Tiano." Tiano runs on Intel's XScale
XScale
The XScale, a microprocessor core, is Intel's and Marvell's implementation of the ARMv5 architecture, and consists of several distinct families: IXP, IXC, IOP, PXA and CE . Intel sold the PXA family to Marvell Technology Group in June 2006....

, Itanium
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

 and IA-32
IA-32
IA-32 , also known as x86-32, i386 or x86, is the CISC instruction-set architecture of Intel's most commercially successful microprocessors, and was first implemented in the Intel 80386 as a 32-bit extension of x86 architecture...

 processors, and is proprietary software, although a portion of the code has been released under the BSD license or Eclipse Public License
Eclipse Public License
The Eclipse Public License is an open source software license used by the Eclipse Foundation for its software. It replaces the Common Public License and removes certain terms relating to litigations related to patents....

 (EPL) as the "TianoCore project." TianoCore can be used as a payload for coreboot .

Phoenix Technologies currently sells Phoenix SecureCore Tiano and Phoenix MicroCore Bios implementing UEFI.

Aptio or Aptio 4 is American Megatrend's next-generation BIOS firmware based on UEFI and the Intel Platform Innovation Framework for UEFI/EFI.

InsydeH2O is Insyde Software's implementation of the Intel Platform Innovation Framework for UEFI/EFI.

Platforms using EFI/UEFI

Intel's first Itanium
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

 workstations and servers, released in 2000, implemented EFI 1.02.

Hewlett-Packard
Hewlett-Packard
Hewlett-Packard Company or HP is an American multinational information technology corporation headquartered in Palo Alto, California, USA that provides products, technologies, softwares, solutions and services to consumers, small- and medium-sized businesses and large enterprises, including...

's first Itanium 2 systems, released in 2002, implemented EFI 1.10; they were able to boot Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

 and HP-UX
HP-UX
HP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...

; OpenVMS
OpenVMS
OpenVMS , previously known as VAX-11/VMS, VAX/VMS or VMS, is a computer server operating system that runs on VAX, Alpha and Itanium-based families of computers. Contrary to what its name suggests, OpenVMS is not open source software; however, the source listings are available for purchase...

 added UEFI capability in June, 2003.

In January 2006, Apple Inc. shipped its first Intel-based Macintosh computers. These systems used EFI instead of Open Firmware
Open Firmware
Open Firmware, or OpenBoot in Sun Microsystems parlance, is a standard defining the interfaces of a computer firmware system, formerly endorsed by the Institute of Electrical and Electronics Engineers . It originated at Sun, and has been used by Sun, Apple, IBM, and most other non-x86 PCI chipset...

, which had been used on its previous PowerPC-based systems. On April 5, 2006, Apple first released Boot Camp, which produces a Windows drivers disk and a non-destructive partitioning tool to allow the installation of Windows XP or Vista without requiring a reinstallation of Mac OS X. A firmware update was also released that added BIOS compatibility to its EFI implementation. Subsequent Macintosh models shipped with the newer firmware.

During 2005, more than one million Intel systems shipped with the Framework. New mobile, desktop and server products, using the Framework, started shipping in 2006. For instance, boards that use the Intel 945 chipset series use the Framework.

Since 2005, EFI has also been implemented on non-PC architectures, such as embedded system
Embedded system
An embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...

s based on XScale
XScale
The XScale, a microprocessor core, is Intel's and Marvell's implementation of the ARMv5 architecture, and consists of several distinct families: IXP, IXC, IOP, PXA and CE . Intel sold the PXA family to Marvell Technology Group in June 2006....

 cores.

The EDK (EFI Developer Kit) includes an NT32 target, which allows EFI firmware and EFI applications to run within a Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 application. But no direct hardware access is allowed by EDK NT32. This means only a subset of EFI application and drivers can be executed at the EDK NT32 target.

In 2008, more x86-64 systems have adopted UEFI. While many of these systems still allow booting only the BIOS-based OSes via the Compatibility Support Module (CSM) (thus does not appear to the user that the system is UEFI-based), other systems started to allow booting UEFI-based OSes. For example, IBM x3450 server, MSI
Micro-Star International
Micro-Star International Co., Ltd is a Taiwan-based electronics company and one of the world's largest motherboard and video card manufacturers.-Overview:MSI is one of the top three motherboard and video card manufacturers worldwide...

 motherboards with ClickBIOS, all HP EliteBook Notebook and Tablet PCs, newer HP Compaq Notebook PCs (e.g., 6730b, 6735b, etc.).

In 2009, IBM shipped System x
IBM System x
The IBM System x computers form a sub-brand of International Business Machines System brand servers...

 machines (x3550 M2, x3650 M2, iDataPlex dx360 M2) and BladeCenter
IBM BladeCenter
The IBM BladeCenter is IBM's blade server architecture.-History:Originally introduced in 2002, based on engineering work started in 1999, the IBM BladeCenter was a relative late comer to the blade market. But, it differed from prior offerings in that it supported the full range of high powered x86...

 HS22 with UEFI capability. Dell shipped PowerEdge T610, R610, R710, M610 and M710 servers with UEFI capability. More commercially available systems are mentioned in a UEFI whitepaper. Many Sandy Bridge
Sandy Bridge (microarchitecture)
Sandy Bridge is the codename for a microarchitecture developed by Intel beginning in 2005 for central processing units in computers to replace the Nehalem microarchitecture...

 PC
IBM PC compatible
IBM PC compatible computers are those generally similar to the original IBM PC, XT, and AT. Such computers used to be referred to as PC clones, or IBM clones since they almost exactly duplicated all the significant features of the PC architecture, facilitated by various manufacturers' ability to...

 platforms use UEFI.

Operating systems

An operating system that can be booted from a (U)EFI is called a (U)EFI-aware OS, defined by (U)EFI specification. Here the term booted from a (U)EFI means directly booting the system using a (U)EFI OS loader stored on any storage device. The default location for the OS loader is \EFI\BOOT\boot[architecture name].efi, where the architecture name can be e.g. IA32, X64 or IA64. Some OS vendors may have their own OS loader. They may also change the default boot location.
  • Linux
    Linux kernel
    The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

     has been able to use EFI at boot time since early 2000, using the elilo EFI boot loader or, more recently, EFI versions of GRUB.
  • HP-UX
    HP-UX
    HP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...

     has used (U)EFI as its boot mechanism on IA-64 systems since 2002.
  • HP OpenVMS
    OpenVMS
    OpenVMS , previously known as VAX-11/VMS, VAX/VMS or VMS, is a computer server operating system that runs on VAX, Alpha and Itanium-based families of computers. Contrary to what its name suggests, OpenVMS is not open source software; however, the source listings are available for purchase...

     has used (U)EFI on IA-64 since its initial evaluation release in December 2003, and for production releases since January 2005.
  • Apple uses EFI for its line of Intel-based Macs. Mac OS X v10.4
    Mac OS X v10.4
    Mac OS X v10.4 Tiger is the fifth major release of Mac OS X, Apple's desktop and server operating system for Macintosh computers. Tiger was released to the public on 29 April 2005 for US$129.95 as the successor to Mac OS X Panther , which had been released 18 months earlier...

     Tiger for Intel and Mac OS X v10.5
    Mac OS X v10.5
    Mac OS X Leopard is the sixth major release of Mac OS X, Apple's desktop and server operating system for Macintosh computers. Leopard was released on 26 October 2007 as the successor of Tiger , and is available in two variants: a desktop version suitable for personal computers, and a...

     Leopard implement EFI v1.10 in 32-bit mode, even on 64-bit CPUs (newer Macs have 64-bit EFI).
  • The Itanium
    Itanium
    Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

     versions of Windows 2000
    Windows 2000
    Windows 2000 is a line of operating systems produced by Microsoft for use on personal computers, business desktops, laptops, and servers. Windows 2000 was released to manufacturing on 15 December 1999 and launched to retail on 17 February 2000. It is the successor to Windows NT 4.0, and is the...

     (Advanced Server Limited Edition and Datacenter Server Limited Edition) implemented EFI 1.10 in 2002. MS Windows Server 2003
    Windows Server 2003
    Windows Server 2003 is a server operating system produced by Microsoft, introduced on 24 April 2003. An updated version, Windows Server 2003 R2, was released to manufacturing on 6 December 2005...

     for IA-64, MS Windows XP 64-bit Edition and Windows 2000
    Windows 2000
    Windows 2000 is a line of operating systems produced by Microsoft for use on personal computers, business desktops, laptops, and servers. Windows 2000 was released to manufacturing on 15 December 1999 and launched to retail on 17 February 2000. It is the successor to Windows NT 4.0, and is the...

     Advanced Server Limited Edition, all of which are for the Intel Itanium
    Itanium
    Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

     family of processors, implement EFI, a requirement of the platform through the DIG64
    DIG64
    DIG64 or Developers' Interface Guide for 64-bit Intel Architecture Servers is an alliance between several leading technology companies including Groupe Bull, Fujitsu Siemens, Hitachi, HP, Intel, NEC, and Unisys....

     specification.
  • Microsoft introduced UEFI for x86-64 Windows operating systems with Windows Server 2008 and Windows Vista Service Pack 1, so the 64-bit versions of Windows 7 are compatible with EFI. Microsoft does not implement 32-bit UEFI since vendors did not have any interest in producing native 32-bit UEFI firmware because of the mainstream status of 64-bit computing. Microsoft has released a video with Andrew Ritz and Jamie Schwartz explaining Pre-OS UEFI functions on Windows Vista and Windows Server 2008.
  • Microsoft will require computers with the "Designed for Windows 8" logo to use UEFI with secure boot (which will only allow signed software to run on the device) enabled by default. Red Hat
    Red Hat
    Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....

     developer Matthew Garrett raised concerns over the requirement for secure booting to be enabled by default and Microsoft responded by saying that there was no mandate from Microsoft that prevents secure booting from being disabled in firmware or that keys could not be updated and managed.

Use of UEFI with virtualization

  • HP Integrity Virtual Machines
    HP Integrity Virtual Machines
    Integrity Virtual Machines is software from Hewlett-Packard that allows multiple virtual machines to run concurrently on any Itanium server running HP-UX, notably the HP Integrity line...

     provides UEFI boot on HP Integrity Servers. It also provides a virtualized UEFI environment for the guest UEFI-aware OSes.
  • Intel hosts an Open Virtual Machine Firmware project on Sourceforge.
  • VMware Fusion
    VMware Fusion
    VMware Fusion is a virtual machine software product developed by VMware for Macintosh computers with Intel processors. Fusion allows Intel-based Macs to run x86 and x86-64 "guest" operating systems, such as Microsoft Windows, Linux, NetWare and Solaris as virtual machines simultaneously with Mac OS...

     3 software for Mac OS X can boot Mac OS X Server virtual machines using EFI.
  • VirtualBox
    VirtualBox
    Oracle VM VirtualBox is an x86 virtualization software package, originally created by software company Innotek GmbH, purchased by Sun Microsystems, and now developed by Oracle Corporation as part of its family of virtualization products...

     has implemented UEFI since 3.1, but limited to Unix/Linux operating systems (doesn't work with Windows Vista x64 and Windows 7 x64).
  • Qemu
    QEMU
    QEMU is a processor emulator that relies on dynamic binary translation to achieve a reasonable speed while being easy to port on new host CPU architectures....

     can be used with an EFI bios.
  • The VMware ESXi version 5 hypervisor, part of VMware
    VMware
    VMware, Inc. is a company providing virtualization software founded in 1998 and based in Palo Alto, California, USA. The company was acquired by EMC Corporation in 2004, and operates as a separate software subsidiary ....

     vSphere, supports virtualized EFI as an alternative to BIOS inside a virtual machine.

Consumer market

In 2011 ASRock
ASRock
ASRock Inc. is a manufacturer of motherboards, netbooks, and HTPCs, based in Taiwan and chaired by Ted Hsuu. It was established on May 10th, 2002 and invested by and subordinated to Asus.- History :...

, ASUSTeK, Gigabyte
Gigabyte
The gigabyte is a multiple of the unit byte for digital information storage. The prefix giga means 109 in the International System of Units , therefore 1 gigabyte is...

 and MSI
Micro-Star International
Micro-Star International Co., Ltd is a Taiwan-based electronics company and one of the world's largest motherboard and video card manufacturers.-Overview:MSI is one of the top three motherboard and video card manufacturers worldwide...

 launched several consumer-based motherboards using the Intel 6-series LGA 1155
LGA 1155
LGA 1155, also called Socket H2, is an Intel microprocessor compatible socket which supports Intel Sandy Bridge and the up-coming Ivy Bridge microprocessors....

 chipset and AMD 9 Series Chipset for Upcoming AM3+ AMD FX (Bulldozer) and AMD Fusion
AMD Fusion
AMD Fusion is the marketing name for a series of APUs by AMD. There are two flavors of Fusion currently available, one with its CPU logic based on the Bobcat core and the other its CPU logic based on the 10h core. In both cases the GPU logic is HD6xxx, which itself is based on the mobile variant of...

 Processors with EFI.

Graphics features

EFI provides graphical menus and features, such as is implemented on Aptio or Great Wall UEFI.

There are two graphics output protocols defined by EFI specifications. The first one is UGA, which stands for Universal Graphic Adapters. The second one is GOP, which stands for Graphic Output Protocol. The two are similar. UGA works only at EFI 1.1 or older. EFI does not define a user interface. This depends fully on the implementation by BIOS vendors. Currently most EFI-enabled machines only have a legacy BIOS-like text mode UI.

Criticism

Ronald G. Minnich, a co-author of coreboot, has criticized EFI as an attempt to preserve intellectual property. It does not solve any of the BIOS's long standing problems of requiring two different drivers — one for the firmware and one for the operating system — for most hardware.

TianoCore, an open-source project which provides the tools to make a fully free firmware based on UEFI, lacks the specialized drivers that initialize chipset functions, thus requiring additional features from the chipset vendor. TianoCore is a payload option for coreboot, which includes chipset initialization code.

Because UEFI can allow for more flexible remote network booting than older BIOS technology, there are concerns over the security provisions in the standard.

Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....

 developer Matthew Garrett in his article "UEFI secure booting" raised a concern that UEFI "secure boot" feature may impact Linux (machines with the Windows 8 logo with secure boot enabled that ships with only OEM and Microsoft keys will not boot a generic copy of Linux) In response, Microsoft stated that customers may be able to disable the secure boot feature in the BIOS. Concern remains that some OEMs might omit that capability in their computers.

Josh Gay of the Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...

 (FSF) raised concerns on "secure boot" implementation to UEFI and FSF declared a public statement open for signing which states:


We, the undersigned, urge all computer makers implementing UEFI's so-called "Secure Boot" to do it in a way that allows free software operating systems to be installed. To respect user freedom and truly protect user security, manufacturers must either allow computer owners to disable the boot restrictions, or provide a sure-fire way for them to install and run a free software operating system of their choice. We commit that we will neither purchase nor recommend computers that strip users of this critical freedom, and we will actively urge people in our communities to avoid such jailed systems.

See also

  • Platform Initialization Specification
    Platform Initialization Specification
    The Platform Initialization Specification is a specification published by the Unified EFI Forum that describes the internal interfaces between different parts of computer platform firmware. This allows for more interoperability between firmware components from different sources...

  • Advanced Configuration and Power Interface
    Advanced Configuration and Power Interface
    In computing, the Advanced Configuration and Power Interface specification provides an open standard for device configuration and power management by the operating system....

     (ACPI)
  • Basic Input/Output System
    BIOS
    In IBM PC compatible computers, the basic input/output system , also known as the System BIOS or ROM BIOS , is a de facto standard defining a firmware interface....

     (BIOS)
  • Booting
    Booting
    In computing, booting is a process that begins when a user turns on a computer system and prepares the computer to perform its normal operations. On modern computers, this typically involves loading and starting an operating system. The boot sequence is the initial set of operations that the...

  • Coreboot
  • Functional specification
    Functional specification
    A functional specification in systems engineering and software development is the documentation that describes the requested behavior of an engineering system...

  • Open Firmware
    Open Firmware
    Open Firmware, or OpenBoot in Sun Microsystems parlance, is a standard defining the interfaces of a computer firmware system, formerly endorsed by the Institute of Electrical and Electronics Engineers . It originated at Sun, and has been used by Sun, Apple, IBM, and most other non-x86 PCI chipset...

  • OpenBIOS
    OpenBIOS
    OpenBIOS is a project aiming to provide free and open source implementations of Open Firmware. It is also the name of such an implementation.Most of the implementations provided by OpenBIOS rely on an additional lower-level firmware for hardware initialization, such as coreboot or Das U-Boot.- Open...

  • System Management BIOS (SMBIOS)
  • System Management Mode
    System Management Mode
    System Management Mode is an operating mode in which all normal execution is suspended, and special separate software is executed in high-privilege mode. It was first released with the Intel 386SL...

     (SMM)
  • Unified EFI Forum
  • Trusted Platform Module
    Trusted Platform Module
    In computing, Trusted Platform Module is both the name of a published specification detailing a secure cryptoprocessor that can store cryptographic keys that protect information, as well as the general name of implementations of that specification, often called the "TPM chip" or "TPM Security...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK