BIOS a EFI - duše pro notebooky
30. 4. 2008 07:00 Rubrika: Technologie Autor: Jakub Doležal
Z BIOSu na EFI aneb 'král je mrtev, ať žije král'. I takto by se dala označit evoluce v oblasti základních systémů, bez kterých by nemohl fungovat počítač, natož pak operační systém a nebo programy. V tomto článku se dočtete o vývoji rozhraní BIOS, k čemu slouží a jeho novém nástupci, se kterým se velmi brzy setkáme i mezi PC notebooky.
Tajemný BIOS
Dříve než zde začnu s popisem samotných funkcí, asi by se slušelo vysvětlit tu záhadnou zkratku BIOS. Je to složenina z anglických slov, tedy BIOS = Basic Input/Output System. Stručně řečeno se jedná o základní nastavení vstupů a výstupů v počítači (nejenom těch vzadu jako je USB). O existenci tohoto rozhraní nemá většina běžných uživatelů ani tušení - což je na druhou stranu dobře. Závažnější a neuvážené změny BIOSu mají za následek kolosální následky a pak nepomůže ani legendární všelék, "format c:". Výrobci, vědomi si této zranitelnosti, limitují možnosti nastavení v BIOSu (především notebooky jsou na tom s možnostmi nastavení velmi bledě), což má za následek lepší ochranu, avšak zkušenější uživatelé, kteří by rádi něco „poladili“, jsou buď bezmocní, nebo musí riskovat a flashovat BIOS jinou neoficiální verzí. Doufám, že po přečtení tohoto článku budete mít alespoň základní povědomí o vlastnostech a možnostech BIOSu a jeho spuštění nebude znamenat konec funkčnosti vašeho notebooku.
Historie vývoje
Přesné datum prvního použití BIOSu se říci nedá. Jisté je jen to, že je tu s námi už více než 20 let. Hlavní rozmach zaznamenal s příchodem IBM PC. První verze BIOSu se ukládaly do paměti ROM, což mělo za následek nemožnost upgradu na novější verzi. Tento způsob byl změněn roku 1990, kdy se začaly používat paměti flash, které se daly přepisovat. Výrobci tak mohli plynule opravovat vzniklé chyby (nedokonalosti) či přidávat podporu nového hardwaru. Trend aktualizací se uchytil a v dnešní době má občas za následek vydávání nehotových BIOSů, které se ladí až na základě stížností uživatelů. S možností aktualizací se kromě pozitiv objevilo také jedno negativum. BIOS je totiž zpravidla uložen na jedné přepisovatelné paměti a pokud se aktualizace nepovedla (výpadek proudu, ...), tak se mohla v horším případě daná základní deska (nebo de facto celý notebook) vyhodit do koše, v lepším případě odnést do servisu nebo k někomu, kdo má možnost přímého programování EEPROM. Proces přepisování se tak bez nadsázky rovnal napínavé scéně z akčního filmu a valná většina uživatelů jej raději vynechávala.
Výrobci proto někde přišli s novým řešením tzv. DualBIOS. Jak již z názvu vypovídá, přibyl na desce další BIOS, který lze použít v případě nepovedené aktualizace. Tato funkce je však výsadou stolních PC. Jistá firma tento trend zahnala do extrému svým QUAD-BIOSem.
Pro uchování nastavení zvolených v BIOSu se dnes standardně používá CMOS čip, který je jednoduše přepisovatelný - tak jako třeba paměť RAM. Jedná se o čip s velmi nízkou spotřebou elektrické energie, avšak musí být neustále pod proudem, jinak ztrácí veškeré uložené informace. K napájení během nečinnosti je použita většinou lithiová baterie typu CR2032. Životnost této baterie se pohybuje okolo pěti až deseti let.
Bootování
Zapnout notebook zvládne snad každý. Po stisku onoho tlačítka párkrát problikne obrazovka a naskočí boot operačního systému. Takto by to viděl běžný uživatel. Pro ty zvědavější se tu pokusím nastínit co se během těch „probliknutí“ odehrává. Jak sem již nastínil v úvodu, BIOS má na starosti základní nastavení celého systému. Při startu tedy osahá jednotlivá nastavení a hardware. Pokud se zjištěné hodnoty shodují nastavenými, proběhne boot a předá se řízení operačnímu systému. Přesněji to vypadá asi takto: spustí se generátor hodinových impulsů (dle něj se ovíjí frekvence jednotlivých komponent, jako je CPU nebo RAM). V návaznosti na tento generátor se poté spustí procesor, čipset a operační paměť (RAM). Po načtení BIOSu do paměti RAM jej začne procesor provádět (BIOS je v podstatě jen jednoduchý obslužný program). Pokud BIOS jednotlivé základní komponenty rozezná a odsouhlasí nastavení, pokračuje se v kontrole ostatních komponent, jako jsou zařízení komunikující přes rozhraní PCI (detekce grafického adaptéru,...). Následuje kontrola řadičů IDE a SATA, respektive jsou vyhledány a zkontrolovány veškeré pevné disky. Jako poslední jsou vyhledány I/O ovladače, tedy klávesnice, myš a jsou proskenovány USB porty. Celý tento proces se odborně nazývá POST (power-on self-test). Pokud všechno „klapne“ a BIOS má 100% úspěšnost, předá ovládání počítače dál, tedy zavaděči operačního systému. Pak už jen úspěšný start OS a je hotovo. Celý proces „sebe kontroly“ trvá několik sekund.
Jak dovnitř...
Většinou si BIOS při startu PC osahává komponenty a nastaví jim nejvhodnější parametry. Pokud se Vám toto nastavení nelíbí, lze si ho upravit. Množství nastavitelných parametrů je závislé na výrobci BIOSu, potažmo notebooku. O výrobu BIOSu se stará například firma American Megatrends (AMI).
Chtěl upozornit všechny „tunery“, že nastavování BIOSu je velmi choulostivá záležitost a neuvážený zásah by Vás mohl v nejhorším případě připravit o základní desku či CPU. Pokud se tedy opravdu chcete dostat do BIOSu, lze tak učinit v rozmezí po POSTu a před nastartováním zavaděče. Je tedy zbytečné od startu PC zběsile mačkat tlačítko DEL, F1, F2 či F8 (či jinou klávesu dle výrobce). Počkejte, až se dokončí POST a poté se ve spodní části obrazovky většinou objeví možnost vstupu do BIOSu. V případě, že stihnete v daném časovém úseku stisknout danou klávesu (zase závislé dle výrobce, většinou F2) spustí se rozhraní BIOSu. Uvítací obrazovka obsahuje výčet jednotlivých oblastí a vy si tak můžete zvolit, kam chcete jít. Většina notebooků končí na nastavení data/času a pořadí bootovacích zařízení či jednoduchém hesle pro start notebooku či pevného disku. Výrobci pečlivě nastavují NTB jako celek a zásahy do BIOSu by se pak mohly negativně projevit třeba na výdrži baterie nebo by se mohl celý systém začít přehřívat. Upravování hodnot u NTB je tak spíše „kosmetická“ záležitost.
Jsou však i výjimky, kde se můžeme dočkat alespoň náznaků nastavení srovnatelných s desktopovými základními deskami. V těchto nastaveních jde již většinou do „tuhého“ a uživatel může měnit nastavení v čipsetu, taktovat RAM či CPU, měnit voltáže u PCI sběrnic.
EFI: nový král?
Extensible Firmware Interface, zkráceně EFI, si již pomalu začíná objevovat v nových počítačích. Cílem tohoto projektu je zaujmout dominantní pozici na trhu a sesadit či zcela nahradit stávající a principiálně zastaralý BIOS. Hlavním tahounem tohoto soukolí je firma Intel. Ze všech zainteresovaných firem má také největší důvod. S nástupem složitějších serverových platforem jako je Itanium se ukázaly slabší stránky BIOSu (16-bit mód procesoru, závislost na hardwaru se starým AT standardem, 1 MB adresovatelného prostoru), které se v těchto serverech stal spíše brzdou než pomocníkem. EFI je vyvíjeno zhruba 10 let a má za sebou mnoho úspěchů i neúspěchů. Původní název byl Intel Boot Initiative, avšak jméno bylo záhy změněno na EFI - nejspíše z marketingových důvodů. Představa základní desky od AMD s čipem od Intelu, potažmo logem při bootu asi není moc reálná. Postupem času se tento projekt stal mezinárodním a na jeho vývoji se podílí velikáni jako AMD, American Megatrends, Apple, Dell, HP, IBM, Insyde Software, Intel, Lenovo, Microsoft, Phoenix Technologies. Takto silné zázemí naznačuje, že k masivnímu nástupu EFI do všech sfér v oblasti počítačů není daleko. Intel plánuje větší nasazení nového „BIOSu“ v nastupující platformě Centrino 2 - Montevina.
Důležitá je také podpora jednotlivých operačních systémů. U běžných (ne Itanium) Windows je podpora EFI zabudována až od Vista SP1 x64, u Windows XP či 32-bit verzí Visty podpora EFI není a Microsoft dle svého tvrzení dodávat nebude. Apple používá EFI od nástupu MacBooků (Pro) a ani Lunuxu není toto rozhraní neznámé.
Porovnání vlastností
Struktura EFI je v porovnání s BIOSem o mnoho složitější. Pokud měl BIOS vyhrazeny určité mantinely v oblasti možností a práv, EFI se vydává cestou co největší otevřenosti. Plánuje se například funkce připojení na internet a vyhledání technické pomoci. „Dosluhující“ BIOS je popravdě graficky velmi strohý a nepředpokládá se jeho interakce s běžným uživatelem. Jeho nástupce tak bude nejen na pohled o mnoho líbivější. Nejdůležitější vlastností EFI je způsob spolupráce se zbytkem počítače. EFI je definováno jako prostředí, které stojí mezi operačním systémem a firmwarovou platformou. Obsahuje data a nastavení obou stran. Lze tak pohodlně upravovat různá nastavení, popřípadě řešit vzniklé problémy a to vše z přívětivějšího grafického rozhraní. Jeho samostatnost na zbytku hardware by právě v případě problémů se startem PC mohla být klíčová. Podobné systémy se používají například u PowerPC, nebo u Sun Microsystems. Tyto výhody jsou zejména ocenitelné v případě velkých počítačových sítí. Další možností je oprava či ovládání notebooku či PC "zvenku", která se u BIOSů běžných PC a notebooků objevuje až v posledních letech a jen velmi těžkopádně.
Kdo je tedy lepší?
Pokud si tedy shrneme jednotlivé vlastnosti obou řešení, vyjde nám přibližně toto. BIOS je jednoduchý avšak funkční a robustní systém. Jeho síla pramení právě z jeho jednoduchosti a nenáročnosti. Pokud se však pokusíme vytvořit pohodlné prostředí s množstvím funkcí (nastavení, možnosti online stáhnout potřebné ovladače) a potřebujeme se oprostit od základních standardů z dob začátků standardu IBM PC, narazíme na prakticky neřešitelný problém. Oproti tomu EFI dle svých papírových předpokladů nabízí prostředí s téměř neomezenými možnostmi. Důležitá je jeho nezávislost na ostatním hardware. Přidejme opravdu silné vývojové zázemí a zdá se že dostaneme více než důstojného nástupce.
Závěrem bych chtěl říci, že mě osobně se myšlenka EFI zamlouvá. Napadá mě pouze, zda-li se přílišná „velkolepost“ a velké množství funkcí nestane známou Achillovou patou...
Zdroje:
www.intel.com, www.microsoft.com, www.wikipedia.com, www.uefi.org