Średnia UEFI (angielskiego Unified Extensible Firmware Interface , co oznacza w języku francuskim : "Unified Extensible Firmware Interface") definiuje interfejs pomiędzy oprogramowaniem ( firmware ) i systemu operacyjnego (OS) z komputerem . Ten interfejs przejmuje od BIOSu na niektórych płytach głównych .
UEFI jest następcą EFI ( Extensible Firmware Interface ), zaprojektowanego przez firmę Intel dla procesorów Itanium .
AMD , American Megatrends , Apple , Dell , HP , Intel , IBM , Insyde Software, Microsoft i Phoenix Technologies są promotorami UEFI Forum, które wyznacza standardy dla tej technologii.
UEFI Forum pracuje nad specyfikacją UEFI od 2005 roku i opublikował pierwsze oficjalne specyfikacje UEFI 2.0 na początku 2006 r UEFI nie jest więc norma , ale standard techniczny wynikający z porozumienia z grupą przemysłowców.
UEFI zapewnia BIOSowi wiele korzyści: standardowe funkcje sieciowe, dobrą rozdzielczość GUI, zintegrowane zarządzanie wieloma instalacjami systemów operacyjnych i ogranicza liczbę dysków pocztowych do 2,2 TB .
BIOS napisany w języku asemblera , ograniczone modyfikacje i / lub zamienniki, gwarancja bezpieczeństwa i ochrony operacyjnej.
Interfejs UEFI jest napisany w języku C , dzięki czemu jego konserwacja jest bardziej elastyczna i pozostaje akceptowalna ze względu na malejące koszty pamięci. Opracowany w celu zapewnienia niezależności między systemem operacyjnym a platformą sprzętową, na której działa, UEFI jest dostępny na platformach Itanium (IA-64), x86 ( 32 i 64 bity ) oraz ARM .
Jedną z funkcji UEFI jest uruchamianie systemu operacyjnego, wcześniej zapewnianego przez BIOS.
Specyfikacje UEFI definiują menedżera rozruchu, którego rolą jest przechowywanie sterowników i programu ładującego system operacyjny wymaganych do rozruchu. Ten program ładujący jest klasą aplikacji UEFI przechowywanych jako pliki w systemie plików dostępnym dla oprogramowania układowego. Obsługiwane systemy plików to FAT32, FAT16 i FAT12 (ale nie exFAT lub NTFS). Obsługiwane tabele partycji obejmują formaty MBR i GPT . W przeciwieństwie do systemu BIOS, UEFI nie wymaga, aby sektor rozruchowy znajdował się w określonej lokalizacji.
Wiele płyt głównych nadal opiera się na hybrydowym oprogramowaniu układowym opartym na pakiecie CSM ( Compatiblity Support Module ) , dzięki czemu stare przerwania BIOS-u mogą być używane dla niektórych usług.
Oficjalna terminologia UEFI dzieli sześć odrębnych stanów w procesach uruchamiania systemu operacyjnego:
Oprócz klasycznego partycjonowania przez MBR (ograniczone do 2,2 TB ), UEFI zarządza dyskami, nowym systemem partycjonowania zwanym GPT ( globalnie unikalna tablica partycji ). GPT pozwala na 128 partycji podstawowych na nośnikach o pojemności do 9,4BB (zettabajt, miliard terabajtów). W ten sposób UEFI umożliwia uruchamianie z dysków o pojemności 2,2 TB i większej.
Dzięki zarządzaniu dyskami niskiego poziomu klonowanie dysków jest możliwe bez przechodzenia przez system operacyjny , co znacznie ułatwia kopiowanie dysków obsługujących wiele systemów operacyjnych.
UEFI zapewnia środowisko powłoki podobne do tego, które można znaleźć w powłoce systemu Unix . Może być używany do uruchamiania innych aplikacji UEFI, w tym programów ładujących UEFI . Możliwe jest uzyskanie szerokiej gamy informacji o systemie i oprogramowaniu , modyfikowanie zmiennych lub edycja plików tekstowych, a także pisanie lub uruchamianie plików skryptowych z rozszerzeniem .nsh.
Metody uruchamiania powłoki UEFI zależą od producenta i modelu płyty głównej. Najczęściej oprogramowanie układowe umożliwia bezpośrednie uruchomienie. W przypadku wersji skompilowanych dla x86-64 potrzebny jest plik <EFI_SYSTEM_PARTITION>/SHELLX64.EFI. Musisz użyć polecenia, bcfgaby zmodyfikować skojarzoną powłokę.
W większości poleceń nie jest rozróżniana wielkość liter, ale nie zawsze ścieżki i nazwy plików, w zależności od typu używanego systemu plików. Użycie polecenia help -bumożliwia wyświetlanie pomocy strona po stronie. Opcja -bznajduje się w większości poleceń, aby wyświetlać stronę po stronie. Znaku >można użyć do przekierowania strumienia wyjściowego polecenia do pliku tekstowego. Na przykład polecenie help > aide.txtzapisuje pomoc w pliku aide.txt.
Kod źródłowy powłoki UEFI można pobrać ze strony projektu TianoCore.
Od wersji 2.3.1 UEFI zawiera funkcję, która umożliwia uruchamianie tylko w rozpoznawanych systemach operacyjnych. Ta funkcja ma na celu zablokowanie uruchamiania systemu operacyjnego uszkodzonego w szczególności przez wirusa lub rootkita . Kiedy została wydana, ta funkcja powodowała problemy z niektórymi dystrybucjami Linuksa, które nie były kompatybilne.
W trybie „ bezpiecznego rozruchu ” UEFI wykorzystuje mechanizm weryfikacji podpisu cyfrowego . Oprogramowanie układowe zabrania ładowania sterownika lub jądra, którego sygnatura nie odpowiada tej zapisanej w pamięci ROM.
Bezpieczny rozruch i bezpłatne oprogramowanieW wolnym oprogramowaniem świata The EFR i Linus Torvalds wypowiedzą jak nienormalnym tej funkcji „ utrudniających instalację i korzystanie z dowolnym systemem operacyjnym konkurującego z Windows ”, Torvalds krytykuje kompromisów zaakceptowane przez Red Hat i Canonical dla móc zainstalować Linux na maszynach gdzie bezpieczny rozruch jest aktywowany (zakup klucza bezpieczeństwa).
Do połowy 2012 roku nie wszystkie dystrybucje przyjęły sygnaturę systemu operacyjnego , a niektóre z nich nie mogły jej przyjąć ze względu na swój status.
Od początku 2013 r. Istniały dwa programy ładujące podpisane przez Microsoft, a zatem rozpoznawane przez komputery z certyfikatem Windows 8 : Shim i Linux Foundation Secure Boot System .
Dystrybucja | Bezpieczna pozycja rozruchowa |
---|---|
Ubuntu | Obsługiwane od wersji 12.10 i 12.04.2 LTS |
Fedora | Obsługiwane od wersji 18 |
openSUSE | Obsługiwane od wersji 12.3 |
RHEL | Obsługiwane od wersji 7 |
Debian | Obsługiwane od wersji 10 |
OpenBSD | Z powodu braku współpracy z firmą Microsoft ta funkcja nie jest obsługiwana. |
Microsoft Windows 8 opcjonalnie obsługuje bezpieczny rozruch dzięki podpisowi cyfrowemu wysyłanemu do producentów płyt głównych.
Zgodnie z programem certyfikacji systemu Windows urządzenia inne niż ARM muszą obowiązkowo oferować dwa bezpieczne tryby rozruchu , „Standardowy” i „Niestandardowy”, w których użytkownik może nie tylko dodawać lub usuwać dodatkowe podpisy, ale także dezaktywować bezpieczny rozruch (wymagana fizyczna obecność użytkownika ).
Wręcz przeciwnie, na urządzeniach ARM Microsoft zabrania producentom dezaktywacji bezpiecznego rozruchu .
Sprawa UbuntuForum Ubuntu przedstawia dwa sposoby uruchomienia tej dystrybucji:
Pierwsze rozwiązanie w zasadzie może działać, ponieważ omija UEFI z inną dystrybucją Linuksa, zainstalowaną na dysku SSD podłączonym na przykład przez USB3, eSATA lub USB2. To postanowienie zezwalające na nieautoryzowany dostęp (prawdopodobnie złośliwy) będzie wymagało monitorowanego lub zablokowanego dostępu fizycznego lub szyfrowania informacji na dysku za pomocą na przykład VeraCrypt lub równoważnego, wraz z rygorystycznymi kopiami zapasowymi.
Nie wszystkie systemy operacyjne obsługują bezpieczny rozruch .
Jeśli użytkownik nie wyłączy bezpiecznego rozruchu w UEFI, może to uniemożliwić korzystanie z niektórych bezpłatnych lub alternatywnych systemów operacyjnych .
W świecie wolnego oprogramowania pojawia się kilka głosów, które potępiają fakt, że podpis pochodzi głównie lub nawet wyłącznie od firmy Microsoft , a nie od innych wydawców oprogramowania .
John SullivanJohn Sullivan ( dyrektor wykonawczy FSF ) nie wierzył, że głównym powodem „ bezpiecznego rozruchu ”, który raczej nazywa wyłącznym rozruchem , jest bezpieczeństwo, ale utrudnienie instalacji konkurencyjnych systemów operacyjnych (bez podpisu lub bez podpisu zaakceptowanego przez producent sprzętu) i wywołał kontrowersje.
Microsoft i Intel powiedzieli, że zarówno użytkownicy, jak i producenci mogą wyłączyć tę funkcję na komputerach z interfejsem UEFI, które na to pozwolą.
Linus TorvaldsZ drugiej strony Linus Torvalds początkowo powiedział, że sam zakup certyfikatu cyfrowego za 99 dolarów na pokrycie całej dystrybucji nie wydawał mu się „wielką transakcją”.