# UEFI

La Interfície de Firmware Extensible Unificada, Unified Extensible Firmware Interface (UEFI), és una especificació que defineix una interfície entre el sistema operatiu i el firmware. UEFI reemplaça l'antiga interfície del Sistema Bàsic d'Entrada i Sortida (BIOS) estàndard presentat en els computadors personals IBM PC com a IBM PC ROM BIOS.
La Interfície de firmware extensible (EFI) va ser desenvolupada inicialment per Intel en el 2002. UEFI pot proporcionar menús gràfics addicionals i fins i tot proporcionar accés remot per a la solució de problemes o manteniment.

## Història

La primera iniciativa es va produir durant les primeres fases de desenvolupament de l'Intel Itanium d'HP a mitjan anys 90. A causa que aquests processadors apuntaven alt, les especificacions del BIOS resultaven molt limitades, per això Intel va desenvolupar inicialment el que seria la IBI, de l'acrònim anglès Intel Boot Initiative, que posteriorment va ser canviat el nom a EFI.
El 25 de juliol de 2005 es va crear la fundació UEFI (Unified Extensible Firmware Interface) la labor de la qual consistia a desenvolupar i promocionar la plataforma EFI. El sistema ha estat administrat i desenvolupat des de llavors per un grup de treball transversal en la indústria incloent a Intel, AMD, Apple, Dell, Lenovo i Microsoft.
A principis de 2007, la versió 2.1 de l'especificació UEFI va veure la llum i, mesos després, va portar amb si millores com: xifrat, autenticació de xarxa i la destacable Interfície d'usuari humana.

## Avantatges

La interfície UEFI inclou bases de dades amb informació de la plataforma, inici i temps d'execució dels serveis disponibles llests per carregar el sistema operatiu.
UEFI destaca principalment per:
* Compatibilitat i emulació del BIOS per als sistemes operatius sols compatibles amb aquesta última.
* Suport complet per a la Taula de particions GUID (GPT), es poden crear fins a 128 particions per disc, amb una capacitat total de 8 ZB.
* Capacitat d'arrencada des d'unitats d'emmagatzematge grans, atès que no sofreixen de les limitacions del MBR.
* Independent de l'arquitectura i controladors de la CPU.
* Entorn amigable i flexible Pre-Sistema Operatiu, incloent capacitats de xarxa.
* Disseny modular.
La EFI hereta les noves característiques avançades del BIOS com ACPI (Interfície Avançada de Configuració i Energia) i el SMBIOS (Sistema de Gestió de BIOS), i se li poden afegir moltes altres, ja que l'entorn s'executa en 64 bits i no en 32 bits, com la seva predecessora.

## Compatibilitat
### Suport de dispositius d'emmagatzematge

La EFI comunica l'arrencada a més d'amb el ja clàssic MBR, amb el sistema GPT que soluciona les limitacions tècniques del MBR, a saber:
* Només els processadors little-endian poden ser suportats.
* MBR suporta fins a 4 particions per unitat física amb un límit de 2,2 TB, és a dir, un disc dur o un altre dispositiu d'emmagatzematge de 10 TB o més no es podria aprofitar la seva capacitat al 100%.
* GPT suporta teòricament fins a 9,4 ZB i no exigeix un sistema d'arxius concret per funcionar.
Microsoft Windows suporta GPT a partir de les versions de 64 bits de Windows Vista i posteriors.
Alguns sistemes basats en Unix utilitzen un híbrid entre MBR i GPT per arrencar.

### 32 i 64 bits

Els BIOS fan ús de maneres de 16 bits per funcionar, disseny heretat de l'Intel 8088, però a diferència d'això, la EFI funciona directament amb maneres de 32 bits i 64 bits, permetent que les aplicacions de la EFI tinguin accés complet a l'adreçament de 64 bits.

## Característiques
### Serveis

La EFI emplea 2 tipus de serveis, denominats servei d'arrencada i servei d'execució
* El servei d'arrencada inclou text i interfície gràfica orientat a una consola que s'encarrega de suportar i gestionar dispositius, busos, blocs i serveis d'arxiu.
* Els serveis d'execució són els que controlen la data, l'hora o el NVRAM.

### Protocols

La EFI defineix un conjunt de protocols d'interfície de programari utilitzat per a la comunicació entre dos mòduls binaris. Tots els controladors de la EFI han de proveir serveis als altres a través d'aquests protocols.

### Controladors/Drivers

Les especificacions de la EFI permeten oferir un controlador de dispositiu independent del processador denominat EFI Byte Code o simplement EBC. Gràcies a això, es permet suport per a la càrrega de gràfics, xarxa, so i opcions avançades del sistema, sense haver-hi precarregat el sistema operatiu en qüestió. Això era totalment impossible en el BIOS, ja que carregava funcions molt limitades i necessàries, com el suport de perifèrics, per exemple, teclat i ratolí.

### Gestor d'arrencada

Un gestor d'arrencada pròpia de la EFI permet també la selecció i càrrega directa dels sistemes operatius, eliminant la necessitat de recórrer a gestors d'arrencada.

### Interfície

La EFI porta amb si una interfície interactiva i molt amigable, que a més permet executar altres aplicacions externes a la pròpia EFI, sempre que siguin compatibles amb l'especificació.

### Extensions

Tota extensió de la EFI pot carregar-se des de qualsevol dispositiu no volàtil que estigui endollat a l'ordinador. Un fabricant OEM pot distribuir el seu sistema amb una partició EFI instal·lada en un disc dur o una Unitat d'estat sòlid.

## Adopció
### Intel EFI

El Framework d'Intel rep el nom de Tiano. Tiano s'executa en processadors XScale, Itanium i IA32 baix llicència propietària, encara que part del codi ha estat alliberat baix llicència BSD rebent el nom de Projecte TianoCore. Phoenix Tecnologies comercialitza actualment BIOS "Phoenix SecureCore Tiano" i "Phoenix MicroCore" compatibles amb la interfície UEFI

### Plataformes que utilitzen UEFI

El primer processador Itanium dirigit a estacions de treball i llançat l'any 2000 ja suportava l'especificació EFI 1.02.
En el 2002, el Itanium 2 ja suportava EFI 1.10, capaç d'arrencar Microsoft Windows, GNU/Linux, FreeBSD, HP-UX i OpenVMS.
El 2005, EFI es va implementar en arquitectures extrapolables a les de PC, com les basades en Intel XScale o sistemes encastats.
En 2006 Apple va muntar els seus ordinadors basats en l'arquitectura x86 d'Intel, i, per això, van començar a utilitzar sistemes EFI en lloc d'Open Firmware com es feia en els anteriors sistemes basats en PowerPC; posteriorment Apple va llançar Bootcamp, que permet un particionat no destructiu i suport de drivers per a la instal·lació de sistemes operatius Microsoft sense necessitat de reinstal·lar Mac US X. Es va afegir compatibilitat de BIOS a la EFI.
En el 2008, bastants sistemes basats en 64 bits han adoptat la EFI, si bé molts d'aquests sistemes només suporten l'arrencada mitjançant BIOS, gràcies al Mòdul de suport de compatibilitat; molts altres, en canvi, comencen a arrencar en sistemes UEFI, per exemple, servidors IBM, certes plaques basi MSI de suport ClickBIOS, portàtils HP Elitebook i algunes Tabletas PC HP.
En 2009, sistemes x d'IBM (x3550 M2, x3650 M2, iDataPlex dx360 M2) i Bladecenter HS22. Dell PowerEdge T610; servidors R610, R710, M610, M710.

### Sistemes operatius

* GNU/Linux ha estat capaç d'utilitzar EFI en l'arrencada des de principis de 2000 mitjançant el gestor d'arrencada LiLo o les més recents versions de GRUB.
* HP-UX ha usat (O)EFI com a mecanisme d'arrencada en sistemes IA_64 des del 2002. HP OpenVMS ha usat (O)EFI en IA-64 des del seu llançament inicial al desembre de 2003, i per a les versions de producció des de gener de 2005.
* Apple va escollir el EFI original per als seus ordinadors basats en Intel 32/64 bits (2006), i és l'utilitzat actualment en les seves computadores.
* Itanium per Windows 2000 (Advanced Server Limited Edition i Datacenter Server Limited Edition) suporta EFI 1.10 en 2002. Windows Server 2003 per IA-64, Windows XP 64 Bits i Windows 2000 Advanced Server Limited Edition, tots els quals són per a la família de processadors Itanium.
* Introduït suport EFI en els sistemes operatius x64 de Microsoft Windows, com Windows Server 2008, Windows 7 i Windows Vista Service Pack 1. Microsoft no ofereix suport UEFI als sistemes de 32 bits, com, per exemple, Windows XP.
* Windows 8 va substituir completament el BIOS per EFI, permetent diverses millores.

## Vegeu també

* BIOS
* Ordinador personal
* Coreboot
* Firmware
* IBM
* IBM PC ROM BIOS
* LinuxBIOS
* Open Firmware
* OpenBIOS

## Enllaços externs

* www.uefi.org Lloc oficial d'UEFI.

## Referències

* ↑ «Instalación». GNU GRUB. [Consulta: 25 setembre 2013].