TechnologieNastępca BIOS-u

    Następca BIOS-u

    Zanim wystartuje system operacyjny, wkracza do akcji BIOS, wykonując wstępne testy i konfigurację urządzeń. Ale ten archaiczny dziś standard ma się ku końcowi, a na horyzoncie pojawia się następca: EFI. Jaką odmienność wniesie w świat niebieskiego ekranu menu BIOS-u?

    Następca BIOS-u

    Alternatywny BIOS

    BIOS to program, który jest przeznaczony tylko do konkretnego modelu. Taka sytuacja oznacza, że nikt poza producentami kości BIOS i płyt nie wie, co dokładnie robi ten program. Podjęto więc próbę napisania open source’owych, uniwersalnych zamienników BIOS-u. Przykładami takich projektów są np. OpenBIOS (openfirmware.info) oraz CoreBoot (coreboot.org). Pierwszego w obecnej wersji można użyć głównie w maszynach wirtualnych, jak QEMU. CoreBoot obsługuje zaś ponad 200 płyt głównych. Ale są dwie przeszkody: wspierane modele to głównie stare płyty dla Pentium II/III czy w najlepszym razie Athlon 64, a instalacja nie sprowadza się do wgrania odpowiedniego pliku, lecz obejmuje uprzednią własnoręczną kompilację BIOS-u. Projekty te należy więc traktować bardziej jako inżynieryjne badania niż produkty gotowe na rynek.

    Rola BIOS-u w pececie jest nie do przecenienia. Przez kilka pierwszych sekund to od niego zależy poprawna inicjacja i konfiguracja wszystkich komponentów. Jego ustawienia można zmodyfikować przez wbudowany edytor, który kojarzy się od lat z niebieskim ekranem i mnóstwem bardzo technicznych opcji. EFI, jako następca BIOS-u, szykuje przełomowe zmiany.

    Poznaj EFI

    EFI, czyli Extensible Firmware Interface, nie jest w zasadzie niczym nowym. Prace nad tym standardem trwają już dobrych kilku lat. Bazuje on głównie na ustandaryzowanej specyfikacji, zaprojektowanej przez Intela do obsługi procesorów Itanium jeszcze w latach 90.

    W założeniach jest to nie tylko lepszy BIOS. Ten bowiem ogranicza się do bardzo okrojonej funkcjonalnie konfiguracji sprzętu. EFI ma zaś służyć jako pośrednik między firmware’em komponentów (oprogramowaniem wbudowanym w kontrolery na płytach głównych czy kartach rozszerzeń) a systemem operacyjnym. To już w założeniu bardziej skomplikowany program, przypominający bardziej minisystem operacyjny niż BIOS. EFI jest wyposażony w zestaw własnych ministerowników do sprzętu, a każdy producent może dopisać do niego własne moduły.

    Nad rozwojem specyfikacji EFI pracuje stowarzyszenie UEFI, zrzeszające największych wytwórców sprzętu i BIOS-ów na świecie, są to m.in. AMD, Apple, Intel, AMI czy Phoenix.

    EFI – wypróbuj to sam

    Nie masz płyty obsługującej EFI, a chciałbyś sam przekonać się o jego możliwościach? Wystarczy użyć VirtualBoksa – open source’owego środowiska do wirtualizacji systemów operacyjnych. Program ten pozwala tworzyć wirtualne maszyny działające w ramach uruchomionego systemu. Od wersji 3.1 (najnowsza to 3.2) oferuje także użycie EFI zamiast BIOS-u do wirtualnych pecetów. Tworząc nową maszynę, wystarczy przejść do jej opcji konfiguracyjnych i na karcie System zaznaczyć pozycję Enable EFI.

    Przewaga EFI nad BIOS-em

    BIOS to program działający w środowisku 16-bitowym, w tzw. trybie rzeczywistym procesora. Jego możliwości są więc ograniczone z racji architektury – może m.in. użyć tylko 1 MB pamięci. Program ten nie jest np. w stanie przygotować karty graficznej w rozdzielczości i trybie, który zwolniłby system operacyjny od konieczności stosowania własnej autodetekcji. EFI działa w tym samym 32-, 64-bitowym trybie co system operacyjny, a pośrednicząc między OS-em a firmware’em sprzętu, jest w stanie przejąć część ustawień na siebie. System może je przejąć, nie tracąc czasu na wykonywanie własnych procedur.

    „Świadomy” EFI jest np. menedżer startu Linuksa, GRUB2 oraz sam system. Efekty są obiecujące: na testowym pececie (MSI P45 Diamond, Celeron DualCore E1400, 2 GB RAM, Samsung F1 160 GB) Ubuntu 10.04 z GRUB-em w trybie EFI uruchamia się w ledwie 6–7 sekund. Konfiguracja systemu trwa tak krótko, że nie widać nawet ekranu startowego, a od razu pulpit.

    EFI jest rozszerzalny przez moduły. Oznacza to, że jedyne, czego potrzeba do wzbogacenia go o konkretną funkcję (np. moduł łączenia się z serwerami w sieci), to napisanie takiego pluginu i wgranie go do kości flash, na której rezyduje EFI. To możliwe, bo moduły pamięci dla EFI mają po kilkadziesiąt MB, podczas gdy typowy BIOS ma 4–8 MB.

    Obraz

    Duża ilość miejsca zarówno na kości flash dla EFI, jak i możliwość wykorzystania przezeń więcej niż 1 MB RAM-u pozwala rozszerzyć funkcje programu konfiguracyjnego PC. Przykładowo zastosować graficzne, „klikalne” interfejsy użytkownika. Nie uprości to znacząco samej konfiguracji – parametry do tuningu będą wciąż te same, ale przykładowo system pomocy i objaśnień będzie można znacznie rozbudować. Da się też tworzyć profile wyświetlania różnej szczegółowości opcji zależnie od wiedzy użytkownika. Możliwości EFI w tym zakresie są limitowane praktycznie tylko inwencją producenta.

    Następca BIOS-u może być wrażliwy na internetowy atak!

    Skoro z poziomu EFI możliwa jest łączność z internetem, to sam BIOS może zostać narażony na ataki złośliwego kodu, niewykrywalnego przez współczesne antywirusy. Skoro specyfikacja EFI będzie publicznie dostępna, produkty z nią zgodne powinny mieć relatywnie mało dziur. Sama możliwość modyfikacji kości flash, na której mieści się kod, będzie dość utrudniona. Trudno więc jednoznacznie określić, czy i jak powiększy to zagrożenie. Jeśli jednak zagrożenie się spotęguje, to ze względu na tryb dostępu do komponentów, jaki ma EFI, może to być wyjątkowo złośliwy malware. Przykładowo, zmodyfikowany kod kontroli pracy karty sieciowej może ukryć przed systemem operacyjnym wysyłanie niebezpiecznych danych przez sieć.

    Użytkownicy obawiają się też wykorzystania modułu TPM (Trusted Platform Module) do wymuszenia stosowania technologii DRM (zarządzania prawami dostępu do treści multimedialnych). W normalnych warunkach TPM (jak dotąd bardzo rzadko spotykany w PC) służy głównie do sprzętowo wspieranego szyfrowania danych na dyskach.

    Nowe funkcje

    Obecnie BIOS nie ma żadnych narzędzi do uruchamiania systemów. Po zakończeniu wstępnego testu sprzętu oczekuje na kod bootloadera w pierwszym sektorze dysku (MBR – Master Boot Record) z tablicą partycji PC/DOS, i to jemu przekazuje sterowanie pecetem.

    EFI ma wbudowane narzędzia do uruchamiania systemu. Korzysta też z nowego typu tablicy partycji – GUID (GPT). Znany sektor MBR jest tu przewidziany tylko dla zgodności z BIOS-em, ale nie przechowuje bootloadera systemu. W zamian EFI wie, do której partycji sięgnąć, by odwołać się bezpośrednio do kodu uruchamiającego system. Przyspieszy to nieco start systemu. Jest to możliwe m.in. dzięki ładowaniu przez EFI sterowników do popularnych systemów plików – w ten sposób może on sięgnąć wprost do plików bootloadera systemu operacyjnego.

    W razie, gdyby coś poszło nie tak, EFI jest wyposażony w tzw. UEFI Shell, czyli nic innego, jak tryb konsoli. Wydając odpowiednie polecenia, można za jej pomocą dokonać diagnostyki sprzętu lub naprawić problemy ze startem PC. Dla mniej obeznanych technicznie EFI to z kolei przydatne narzędzia. Może to być program do backupu czy update’u firmware’u. Dzięki temu, że EFI jest w stanie załadować sterownik do karty sieciowej i zainicjować połączenie z internetem, będzie można go aktualizować bez uruchamiania innego systemu czy korzystania z pendrive’ów.

    Powolna adaptacja

    Obraz

    Obecnie właściwie jedynie serwerowe płyty główne Intela korzystają z EFI. Wcześniej, w 2008 roku, trzy płyty na chipsecie P45 wyposażone w EFI (tzw. ClickBIOS) wydał MSI (np. P45 Platinum), jedną Asus (P5Q Deluxe). Obie nie są już jednak produkowane.

    Co powoduje tak małe zainteresowanie tym standardem? W znacznej mierze Microsoft Windows. Pełnej obsługi EFI nie ma żadna konsumencka edycja tego systemu. Vista ani XP nie zainstalują się na pececie z EFI; Seven – tak, ale tylko pod warunkiem zastosowania na dysku starej mapy partycji PC/DOS, co choć możliwe, wiąże się z utratą wielu zalet tego standardu.

    Drugą kwestią jest to, że standard EFI jest póki co wciąż rozwijany i uzupełniany. Tworzenie oprogramowania zgodnego z EFI wymaga większych nakładów pracy niż zwykłego BIOS-u. Tymczasem użytkownikom jest najczęściej wszystko jedno, czy korzystają z płyty z BIOS-em czy EFI, bo i tak nigdy ich konfiguracją się nie zajmują (a np. overclockerzy nie znajdą w EFI więcej narzędzi do podkręcania niż w BIOS-ie). To zniechęca producentów płyt do tworzenia wersji z EFI.

    EFI dziś i jutro

    Obraz

    Na EFI bazują wszystkie nowoczesne komputery firmy Apple. Bazują, bo wersja EFI stosowana przez Apple nie jest w pełni zgodna z oficjalną specyfikacją tego stnadardu (różnice tkwią jednak w szczegółach). Być może już niedługo nastąpi szybsza adaptacja tego standardu. MSI po raz kolejny zadeklarował zainteresowanie EFI, obiecując wydanie płyt wyposażonych weń do nowej serii procesorów Intela, Sandy Bridge. Obiecujące jest, że mają to być nie tylko wybrane modele, jak 2 lata temu, lecz cała seria produktów – już na początku przyszłego roku. Masowe przejście na EFI prędzej czy później nastąpi, choćby ze względu na ograniczenia mapy PC/DOS, które powodują wiele problemów z obsługą dysków większych niż 2 TB.

    Wybrane dla Ciebie