Dag BIOS, Welkom EFI!

38 reacties
Inhoudsopgave
  1. 1. Inleiding
  2. 2. Intel aan kop
  3. 3. Mogelijkheden
  4. 4. EFI vandaag de dag
  5. 38 reacties

Intel aan kop

Die vernieuwing werd, zoals zoveel technologieën binnen de PC, ingezet door processorfabrikant Intel. Tijdens de ontwikkeling van de Itanium serverprocessor, die van een compleet andere architectuur gebruik maakt dan alle x86 processors, liep men tegen het probleem aan dat het aloude BIOS daarvoor totaal niet geschikt was en er een vervanger nodig was. In de jaren ‘90 startte men daartoe het project met codenaam Tiano. Doelstelling was een BIOS-vervanger die zowel platform- als software-onafhankelijk is, gemaakt is in een high-level programmeertaal en volledig gespecificeerd, zodat derden eenvoudig uitbreidingen kunnen maken. Dit project heeft in 2001 geresulteerd in de zogenaamde EFI-standaard, waarbij EFI staat voor Extensible Firmware Interface.
Direct wordt de nieuwe technologie ook op de eerste generatie Itanium-servers ingezet. Om EFI een kans van slagen te geven als open standaard, richtte Intel vervolgens de Unified EFI Group op, een consortium waar inmiddels ook grote namen als AMD, AMI en Phoenix/Award aan verbonden zijn. Alle rechten op de EFI-standaard zijn inmiddels eigendom van die groep en dus kan iedereen al geruime tijd EFI-platformen ontwikkelen zonder gebonden te zijn aan Intel.

EFI-technologie

De EFI-standaard bevat dus in feite alle zaken die het aloude BIOS moet missen. Zo is er bijvoorbeeld geen noodzaak voor legacy-hardware ondersteuning meer. Sterker nog, EFI is volledig platformonafhankelijk en de nieuwe BIOS-opvolger kan zodoende met een juiste firmwarelayer op alle denkbare platformen werken, waaronder x86 en Itanium.

Die onafhankelijkheid is ook een uitkomst voor add-in kaarten, zoals bijvoorbeeld RAID-controllers of netwerkkaarten. De firmware die daar op zit moet tot nu toe communiceren met het BIOS om het mogelijk te maken om op te starten vanaf deze apparaten. Ook deze firmware-code moet gemaakt worden in assembly en is daarbij alleen geschikt voor één soort systeemarchitectuur. Dat betekent dat je een RAID-controller die is gemaakt voor x86-gebaseerde systemen normaal gesproken niet kunt plaatsen in bijvoorbeeld een Itanium systeem of een op PowerPC architectuur gebaseerde Apple machine. Omdat het EFI-platform onafhankelijk werkt kunnen uitbreidingen, zoals die op zo'n RAID-controller of netwerkkaart, op alle EFI-platformen probleemloos functioneren. Sterker nog; het is dankzij EFI zelfs mogelijk om drivers voor hardwareplatformen onafhankelijk op BIOS-niveau te laden, waarna het besturingssysteem deze hardware zonder speciale driver via de EFI-laag kan aanspreken. Ofwel; een exotische RAID-controller heeft een EFI-driver aan boord in een stukje flash-geheugen en de EFI-technologie zorgt ervoor dat het besturingssysteem deze als normale harddisk kan aanspreken. De controller is daardoor per definitie compatible met alle denkbare besturingssystemen, zonder dat er ook maar één extra driver geprogrammeerd hoeft te worden. Dit is zeker goed nieuws voor besturingssystemen als Linux, waar niet alle hardwarefabrikanten direct goede drivers voor maken.

Daarnaast is EFI ontwikkeld in de C-programmeertaal, dat de meeste programmeurs wel onder de knie hebben. Het ontwikkelen van uitbreidingen is dus relatief eenvoudig. Dat betekent dat moederbordfabrikanten veel eenvoudiger extra mogelijkheden aan BIOS'en kunnen toevoegen. Was het implementeren van speciale overclock-features of bijvoorbeeld nieuwe bootdevices tot nu toe een verzoeking, dankzij EFI is de implementatie een stuk eenvoudiger.

0
*