BIOS – UEFI

Det första som händer när du startar en dator är att maskinens komponenter måste väckas till liv och identifieras, till exempel hårddisk, grafikkort och andra enheter. Därefter kan operativsystemet laddas till RAM-minnet och startas. Merparten av det här arbetet hanteras av BIOS.

Bild 1: Legacy BIOS

BIOS är en boot firmware som är avsedd att vara den första mjukvaran som körs när datorn slås på.

BIOS finns normalt i ett ROM (numera flash-ROM) på moderkortet. Minnet är av den typen att dess innehåll inte raderas trots att strömmen stängs av, och mjukvaran är specialanpassad för just det aktuella moderkortets kretsuppsättning och övriga komponenter. Även om BIOS innehåll inte raderas när strömkontakten dras ur väggen kan det ändå suddas ut på manuell sätt.

Första gången som termen BIOS kom på tal var i samband med att operativsystemet CP/M utvecklades på 1970-talet. CP/M var avsett för datorer baserade på Intelprocessorerna 8080 och 8085, och inkluderade en startfunktion som hade till uppgift att ha direktkontakt med hårdvaran.

 Så fungerar BIOS – UEFI

I BIOS finns en uppsättning med enklare funktioner som tar emot kommandon från annan mjukvara och förmedlar dessa vidare både till datorns interna komponenter och externa tillbehör. Traditionellt sett hanterades all kommunikation mellan hårdvara och mjukvara på det här sättet (i till exempel MS-DOS), men numera har operativsystemen direktkontakt med mjukvaran via egna drivrutiner. BIOS betydelse har med andra ord minskat genom åren och i dagsläget får det mer eller mindre nöja sig med att genomföra vissa grundtester samt starta operativsystemet.

I dag håller BIOS i mångt och mycket på att ersättas av UEFI (Unified Extensible Firmware Interface). Även UEFI ansvarar för den inledande bootprocessen och finns lagrat på ett flashminne, men det arbetar på ett annorlunda sätt.

Föregångaren till UEFI heter EFI och initierades av Intel i mitten av 1990-talet. Det användes till en början i itanium-baserade datorer från HP. Allt sedan juni 2005 har EFI tagits in i UEFI -specifikationen som utvecklas av Unified EFI Forum, den samarbetsorganisation som marknadsför och stödjer systemet. I organisationens ledning ingår personer från elva ledande företag inom datorindustrin.

Fördelar med UEFI

Bild 2: UEFI

UEFI har flera fördelar jämfört med BIOS. Det har stöd för en modulerbar design och det kan skapa en flexibel miljö för exekvering av applikationer innan operativsystemet startar. Det har också stöd för särskilt stora diskar och arkitektur samt drivrutiner är oberoende av processortyp. Det finns dessutom en bakåtkompatibilitet med BIOS.

Vad gäller diskstöd kan UEFI hantera partitioneringsschemat GPT (Guid Partition Table) utöver det vanliga MBR (Master Boot Record). GPT klarar diskar med en storlek på hela 9,4 zettabyte, att jämföra med MBR:s gräns på blygsamma 2,2 terabyte.

Ytterligare en viktig detalj är att UEFI klarar både 32- och 64 bitars processorläge. Det sistnämnda har dessutom stöd för ”long mode” vilket innebär att applikationer som körs innan operativsystemet startar, har tillgång till hela datorns minnesmängd genom att använda 64-bitars adressering .

What is UEFI? förklars i en video från 1ENEWS

Professor Messer förklarar grunder av BIOS och UEFI:

Tveksamhet i branschen

UEFI har varit på tapeten i många år, men vissa moderkortstillverkare är fortfarande tveksamma till att använda det helt. Det beror främst på att UEFI programmeras i C++ medan det är assembler (maskinkod) som gäller för BIOS, och det finns fortfarande många programmerare anställda som är specialister på att finjustera den äldre varianten och som har svårt att gå över till att koda för UEFI. Ytterligare en detalj som fördröjer övergången är att många användare är nöjda med BIOS.

En moderkortstillverkare som verkar ha tagit UEFI till sitt hjärta är Micro-Standard International eller MSI. Asus, som är en direkt konkurrent till MSI på moderkortsmarknaden, har just nu inga planer på att kasta ut BIOS från moderkortet som är anpassade för vanliga persondatorer. Däremot experimenterar man en del med UEFI på serversidan, men Asus menar att utvecklingen av UEFI bromsas betydligt eftersom man inte jobbar med öppen källkod. De är dock övertygade om att BIOS förr eller senare måste bytas ut mot något annat i servrar, inte minst på grund av det enbart kan utföra 16-bitars beräkningar.

Processortillverkaren AMD har ingen officiell ståndpunkt när det gäller BIOS och UEFI men antagonisten Intel är desto tydligare. Deras vision är att alla datorer så småningom ska använda UEFI, men eftersom övergången i slutändan styrs av datortillverkarna så är det inget som Intel kan råda över.

UEFI är en OEM-produkt vilket innebär att den utvecklas som egen privat produkt, OEM står för Original Equipment Manofacturer. IBM utvecklade EFI sedan 1900-talet och vid 2005 blev ett samarbete mellan flera organisationer. Det är just det som kan också betyda OEM, ett nätverk av relationer mellan IT-maskinvaruförsäljare, komponenttillverkare som mikroprocessortillverkare, programvaruleverantörer och logistiks-partner som återförsäljare och distributörer.

UEFI är absolut inte det enda alternativet till BIOS, men det är utan tvekan det som har den ljusaste framtiden. Cooreboot (som tidigare kallades för Linuxbios), Openbios, Open Firmware är några av konkurrenterna på marknaden men ingen av dessa har fått någon större spridning.

Här nedan en video som förklarar skillnader mellan BIOS och UEFI: