Tuesday, 22 October 2013

UEFI

UEFI
The Unified Extensible Firmware Interface (UEFI) is a specification that defines a software interface between an operating system and platform firmware. UEFI is a more secure replacement for the older BIOS firmware interface, present in all IBM PC-compatible personal computers, which is vulnerable to bootkit malware.

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. UEFI is a community effort by many companies in the personal-computer industry to modernize the booting process. UEFI capable systems are already shipping, and many more are in preparation. During the transition to UEFI, most platform firmware will continue to support legacy (BIOS) booting as well, to accommodate legacy-only operating systems.

               The UEFI specification defines a new model for the interface between personal-computer operating systems and platform firmware. The interface consists of data tables that contain platform-related information, plus boot and runtime service calls that are available to the operating system and its loader. Together, these provide a standard environment for booting an operating system and running pre-boot applications. 


Extensible Firmware Interface's position in the software stack

It all has begun when Intel decided to develop 64-bit CPU. They made decision which was very good logically, but unfortunately not as good market-wise: to get rid of all ancient x86 features, drop entire x86 backward portability, and create completely new CPU architecture, named Itanium (IA64). That also meant that old BIOSes won't be running on it, and so opportunity opened for new standard interface between OS and hardware/firmware. This is how first steps took place in the half of 90s, to replace BIOS by new standard, called Extended Firmware Interface (EFI).


Later, AMD created its own 64-bit architecture called AMD64, which unlike Itanium was backward compatible with x86. Intel called it EM64T or IA32e, later Intel 64, Microsoft calls it x64, usually it is called x86-64. Support for this architecture was included in UEFI 2.0 standard. In April 2008, ARM joined Unified EFI Forum, so we expect support these CPUs coming too. latest version of standard is UEFI 2.1, which has few minor changes and features compared to UEFI 2.0. But overall, all versions of standard are very backwards compatible, so software and drivers written for very first version of EFI still run on latest boards.


UEFI Specifications Update

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)
·         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 (ACPI) and System Management BIOS (SMBIOS), are also present in EFI, as they do not rely on a 16-bit runtime interface. The Unified EFI Forum is a non-profit collaborative trade organization formed to promote and manage the UEFI standard. As an evolving standard, the UEFI specification is driven by contributions and support from member companies of the UEFI Forum.

The UEFI Forum board of directors include representatives from the following eleven leading companies:
·         AMD
·         American Megatrends Inc.
·         Apple Computer, Inc.
·         Dell
·         Hewlett Packard
·         IBM
·         Insyde
·         Intel
·         Lenovo
·         Microsoft
·         Phoenix Technologies


1 comment:

  1. Nice info bro.. very informative.. Thanks for sharing

    ReplyDelete