Jaka jest różnica w „Boot z BIOS” i „Boot z UEFI”

118

Teraz system Windows 8 obsługuje moduł ładujący UEFI i przeczytałem, że różni się on od systemu BIOS, ale nie jest dla mnie jasne po wielu wyszukiwaniach w Google.

Oto kilka uwag: -

  • Jak wszyscy wiemy, BIOS jest ważną częścią dostępu do opcji rozruchu. Więc UEFI zrobi to teraz? W jaki sposób?

  • Skąd mam wiedzieć, że uruchamiam się z UEFI, a nie z BIOS-em?

  • Jaka jest zatem prawdziwa różnica w „rozruchu z BIOS-em” i „rozruchu z UEFI”?

avirk
źródło

Odpowiedzi:

134
  • Jak wszyscy wiemy, BIOS jest ważną częścią dostępu do opcji rozruchu. Więc teraz UEFI to zrobi? W jaki sposób?

BIOS uruchamia się, czytając pierwszy sektor na dysku twardym i uruchamiając go; ten sektor rozruchowy z kolei lokalizuje i uruchamia dodatkowy kod. System BIOS jest bardzo ograniczony ze względu na ograniczenia miejsca i ponieważ BIOS uruchamia 16-bitowy kod, podczas gdy współczesne komputery używają 32-bitowych lub 64-bitowych procesorów. Natomiast EFI (lub UEFI, który jest po prostu EFI 2.x) uruchamia się, ładując pliki programu EFI (z .efirozszerzeniami plików) z partycji na dysku twardym, znanej jako EFI System Partition (ESP). Te programy ładujące EFI mogą korzystać z usług rozruchowych EFI, np. Do odczytu plików z dysku twardego.

W praktyce, jeśli używasz systemu operacyjnego takiego jak Linux, który ma złożone programy ładujące w trybie BIOS, uruchamianie w trybie EFI prawdopodobnie będzie podobne do uruchamiania w trybie BIOS, ponieważ GRUB 2 (najpopularniejszy moduł ładujący w trybie BIOS dla Linuksa) został przeniesiony do pracy pod EFI, a wiele dystrybucji Linuksa domyślnie instaluje GRUB 2 na systemach EFI. OTOH, możesz zastąpić lub uzupełnić GRUB 2 o inne moduły ładujące EFI. Rzeczywiście, samo jądro Linuksa może być modułem ładującym EFI; dodano kod, aby to zrobić z jądrem 3.3.0. Używany w ten sposób EFI sam ładuje i uruchamia jądro Linux, lub możesz użyć zewnętrznego menedżera rozruchu, takiego jak rEFInd lub gummiboot, aby wybrać system operacyjny lub jądro, które chcesz uruchomić.

  • Skąd mam wiedzieć, że uruchamiam się z UEFI, a nie z BIOS-em?

Jak mówi root, w interfejsie użytkownika oprogramowania układowego znajdują się wskazówki; są one jednak zawodne i różnią się w zależności od komputera. Jedynym sposobem, aby się upewnić, jest sprawdzenie, jak komputer się uruchomił. Na przykład w Linuksie obecność katalogu o nazwie /sys/firmware/efidiagnostycznej. Jeśli jest obecny, uruchomiłeś się w trybie EFI; jeśli nie jest obecny, prawdopodobnie uruchomiłeś się w trybie BIOS. (W niektórych okolicznościach ten katalog może być nieobecny podczas rozruchu w trybie EFI.) Dane dmesgwyjściowe odnoszące się do EFI są również diagnostyczne dla rozruchu w trybie EFI. W systemie Windows tablica partycji dysku rozruchowego jest diagnostyczna; jeśli jest to GPT, uruchomiłeś się w trybie EFI, a jeśli to MBR, uruchomiłeś się w trybie BIOS.

  • Czym zatem różni się „rozruch z BIOSem” i „rozruch z UEFI”?

EFI może być szybszy, ale nie jest to pewne. Największa różnica prędkości dotyczy inicjalizacji sprzętowej na wczesnym etapie procesu. W moich systemach jest to ułamek całkowitego czasu uruchamiania, więc skrócenie czasu inicjalizacji sprzętu, choć dobre, nie robi aż tak dużej różnicy. W końcu to nie tak, że uruchamiam się ponownie co dziesięć minut.

UEFI obsługuje funkcję o nazwie Bezpieczny rozruchma to, jak sama nazwa wskazuje, poprawić bezpieczeństwo. Robi to, wymagając cyfrowej „sygnatury” programów ładujących, co z kolei powinno wymagać podpisania jąder i tak dalej. Powinno to utrudnić autorom złośliwego oprogramowania wstawianie kodu do procesu przed uruchomieniem, zwiększając w ten sposób bezpieczeństwo. Brzmi to dobrze, ale komplikuje również konfiguracje podwójnego rozruchu, ponieważ kod taki jak GRUB i jądro Linuksa muszą być podpisane. Główni dostawcy dystrybucji Linuksa pracują nad sposobami, aby te wymagania były mniej obciążające dla przeciętnych użytkowników Linuksa, i przygotowali kilka wstępnych rzeczy. W tej chwili wyłączenie Bezpiecznego rozruchu jest najłatwiejszym sposobem na poradzenie sobie z tym. Jest to praktyczny problem głównie dla nowych komputerów, które są dostarczane z systemem Windows 8, ponieważ Microsoft wymaga włączenia bezpiecznego rozruchu, aby uzyskać certyfikat Windows 8. Niektóre osoby mylą UEFI i Secure Boot (ta ostatnia jest tylko jedną z wcześniejszych funkcji), ale zasługuje na wzmiankę o różnicy między BIOS i UEFI, ponieważ powoduje pewne problemy dla nowych komputerów z systemem Windows 8. Jeśli masz starszy system lub masz wystarczającą wygodę dzięki narzędziom do konfiguracji oprogramowania układowego, aby wyłączyć Bezpieczny rozruch, nie musi to stanowić poważnego problemu.

Microsoft wiąże typ tabeli partycji dysku rozruchowego z typem oprogramowania układowego (MBR do BIOS; GPT do UEFI). Ponieważ MBR osiąga najwyższy poziom 2TiB (przy założeniu standardowych rozmiarów sektorów), oznacza to, że UEFI jest praktyczną koniecznością uruchamiania systemu Windows na dyskach ponad 2TiB. Nadal możesz jednak używać tak dużych dysków, jak dyski danych w systemie Windows, i możesz uruchamiać niektóre systemy operacyjne inne niż Microsoft (takie jak Linux i FreeBSD) na dużych dyskach, używając GPT w BIOS-ie.

Praktycznie, jeśli martwisz się o UEFI lub jesteś nią zainteresowany, największym problemem jest po prostu to, że UEFI jest na tyle nowy, że jego obsługa jest nieco nierówna, szczególnie w niektórych starszych i bardziej egzotycznych systemach operacyjnych. Sam UEFI jest na tyle nowy, że większość jego implementacji jest błędna, a te, które nie różnią się między sobą na tyle, że ogólnie trudno jest opisać różne rzeczy. Zatem użycie UEFI może być wyzwaniem. OTOH, UEFI to przyszłość. Ma kilka skromnych zalet, z których niektóre staną się ważniejsze z czasem (np. Limit dysku rozruchowego 2TiB w systemie Windows). Przejście na rozruch UEFI zmieni kilka szczegółów procesu rozruchu, ale ogólne wrażenia z pracy komputera nie zmienią się aż tak bardzo, jak tylko uda się rozwiązać problemy z uruchomieniem, które mogą wystąpić.


EDYTOWAĆ:

Czy możesz rozwinąć ustawienia OpRom (Option Rom). Wydaje się, że umożliwiają wybór między uruchamianiem UEFI lub uruchamianiem „Legacy” i dotyczą karty graficznej, karty sieciowej i różnych innych urządzeń PCI.

Wiele kart wtyczek zapewnia oprogramowanie wewnętrzne, które współpracuje z oprogramowaniem na płycie głównej. Dwa rodzaje oprogramowania układowego muszą być w stanie „rozmawiać”, jeśli oprogramowanie układowe karty ma przynieść jakieś korzyści. Jest to konieczne, aby użyć karty przed uruchomieniem systemu operacyjnego - na przykład, aby wyświetlić opcje oprogramowania układowego lub menu menedżera rozruchu na karcie graficznej, wykonać rozruch sieciowy za pomocą karty sieciowej lub rozruch z dysku twardego podłączonego do karta kontrolera dysku.

Podobnie jak w przypadku programów ładujących, kod w oprogramowaniu wewnętrznym urządzenia wtyczki jest zapisywany w interfejsie z BIOS-em lub EFI (chociaż karty wtyczek mogą obsługiwać oba, jeśli się nie mylę). Niektóre EFI zapewniają opcje włączania lub wyłączania tego wsparcia w sposób szczegółowy, jak zauważyłeś. W niektórych przypadkach EFI może korzystać z obsługi trybu BIOS karty, aby umożliwić jej działanie w trybie EFI poprzez „tłumaczenie” połączeń. (Jest to na przykład powszechne w przypadku kart graficznych; często można podłączyć starą kartę wideo z obsługą BIOS-u w oprogramowaniu układowym i nadal używać jej do uruchamiania w trybie EFI).

Nie wiem dokładnie, co robi każde z zapisanych ustawień. Na przykład nie wiem, czy „tylko BIOS” dla jednej z tych opcji sprawiłby, że karta działałaby tylko w trybie BIOS, „tłumaczył”, aby EFI mógł używać wywołań w trybie BIOS w trybie EFI, czy coś innego. W rzeczywistości, biorąc pod uwagę brak standardów w innych obszarach interfejsu użytkownika EFI, oczekiwałbym, że szczegóły będą się różnić w zależności od EFI, więc może zajść potrzeba przejrzenia dokumentacji komputera lub eksperymentu, jeśli chcesz poznać szczegóły. Widziałem niektóre komputery z bardzo podobnymi brzmieniami w dwóch różnych menu, co dodatkowo komplikuje sprawę.

Rod Smith
źródło
Jeśli twardy dysk ma zarówno partycję rozruchową systemu BIOS ORAZ partycję systemową EFI, czy to oznacza, że ​​ten dysk twardy można uruchomić w trybie BIOS i trybie EFI? Czyli dysk twardy jest „tryb rozruchowy” agnostyczny? W tutorialu gdisk widziałem, że konfiguruje partycję rozruchową systemu BIOS i partycję systemową EFI. Również w innych przypadkach niektórzy mówili, że możesz potrzebować /bootna innej partycji (głównie dlatego, że próbuję użyć ZFS). Jak pogodzić RAIDED /bootz partycją rozruchową systemu BIOS i partycją systemową EFI?
CMCDragonkai
Dysk może mieć zarówno partycję ESP, jak i BIOS Boot Partition. Ten ostatni jest używany tylko przez GRUB, więc dysk może być bootowalny zarówno w EFI, jak i BIOS-ie, nawet bez tego drugiego, w zależności od używanego programu ładującego. Oddzielna /bootpartycja Linux zwykle istnieje poza macierzą RAID. Bez względu na tryb uruchamiania moduł ładujący musi być w stanie odczytać jądro, a większość programów ładujących nie obsługuje programowego RAID. (GRUB podobno może to zrobić, ale niewiele osób nawet próbuje.)
Rod Smith
Muszę użyć miękkiego RAID, /bootponieważ ZFS nie może go mieć /boot. Zapytałem na liście mailingowej ZFS na Linuksie.
CMCDragonkai
1
BIOS nie ma nawet zdalnego odpowiednika Bezpiecznego rozruchu.
Rod Smith,
1
Obsługa UEFI jest całkiem dobra w najpopularniejszych systemach operacyjnych głównego nurtu - szczególnie w Windows 7 i późniejszych oraz w większości obecnych dystrybucji Linuksa. Jeśli przeprowadzisz się poza tę dziedzinę, powinieneś zbadać obsługę UEFI swojego systemu operacyjnego. Podczas ostatniego sprawdzania, na przykład ReactOS, Haiku i FreeDOS, brakowało obsługi UEFI; minęło jednak trochę czasu, odkąd sprawdziłem którykolwiek z nich, więc możliwe jest, że jeden lub więcej z nich ma teraz obsługę UEFI.
Rod Smith
21
  • Jak wszyscy wiemy, BIOS jest ważną częścią dostępu do opcji rozruchu. Więc teraz UEFI to zrobi? W jaki sposób?

UEFI to wieloplatformowy interfejs oprogramowania układowego, który zastępuje specyficzny dla x86 standard oprogramowania układowego o nazwie BIOS. Wiele implementacji UEFI obejmuje również tryb zgodności z BIOSem / tryb „starszego”, aby umożliwić rozruch z MBR-ów i prezentować interfejs podobny do BIOS-u dla systemów operacyjnych; nie jest to jednak wymagane przez standard.

  • Skąd mam wiedzieć, że uruchamiam się z UEFI, a nie z BIOS-em?

Jeśli masz płytę główną zgodną z UEFI, która oferuje kompatybilność / starsze uruchamianie systemu BIOS, to menu oprogramowania układowego zapewni opcje, takie jak ustawienie domyślnego trybu uruchamiania, a nawet uruchamianie pojedynczych urządzeń w trybie UEFI lub BIOS: W przeciwnym razie może nie być łatwo sposób, aby powiedzieć, bez np. sondowania oprogramowania układowego za pomocą systemu operacyjnego.

  • Czym zatem różni się „rozruch z BIOSem” i „rozruch z UEFI”?

Istnieje wiele różnic:

  • UEFI definiuje podobny interfejs oprogramowania układowego systemu operacyjnego, jak BIOS, ale nie jest specyficzny dla żadnej architektury procesora. BIOS jest specyficzny dla architektury procesorów Intel x86, ponieważ opiera się na 16-bitowym interfejsie „trybu rzeczywistego” obsługiwanym przez procesory x86.
  • UEFI można skonfigurować w celu przyspieszenia różnych części procesu uruchamiania, na przykład UEFI na Gigabyte GA-EP45-DS3 inicjuje się w 11 sekund w porównaniu z BIOSem w 19 sekund .
  • Tryb UEFI może przedstawiać inne funkcje oprogramowania / sprzętu dla tego samego zainstalowanego systemu operacyjnego niż tryb BIOS.

Zobacz więcej informacji o UEFI .

Elmo
źródło
1
Nie zawsze jest możliwe określenie rzeczywistego trybu rozruchu na podstawie samych ustawień oprogramowania układowego, ponieważ większość plików EFI opiera się na czynnikach dyskowych, a także na ustawieniach oprogramowania układowego, aby określić tryb rozruchu. Takie czynniki dyskowe obejmują typ tablicy partycji, ustawienia flagi „boot / active” w MBR, obecność / brak partycji systemowej EFI lub plików w niej i tak dalej. Jedynym sposobem, aby się upewnić, jest sprawdzenie, czy w uruchomionym systemie operacyjnym nie ma oznak rozruchu w trybie EFI lub BIOS-u, a te znaki są specyficzne dla systemu operacyjnego.
Rod Smith
1
Nie, UEFI nigdy nie jest „wdrażany na tradycyjnym systemie BIOS”. UEFI to rodzaj oprogramowania układowego, które zastępuje starszy typ o nazwie BIOS. Może zawierać tryb zgodności / starszej wersji, który umożliwia rozruch z MBR-a w stylu BIOS-u i prezentowanie interfejsu równoważnego z BIOSem dla systemów operacyjnych, które go potrzebują, ale to nie znaczy, że ma pod nim BIOS.
underscore_d
1
Co oznacza P0 / P1 / P2 w twoim obrazie?
CMCDragonkai
Link do obrazu jest zepsuty
Dan Dascalescu,
1
@underscore_d, tam implementions EFI, które działają na wierzchu tradycyjnego BIOS. Pisałem o jednym, Gigabyte „Hybrid EFI” tutaj. Moje doświadczenie z tym było dość negatywne. Istnieją również Clover i DUET, które działają jak programy ładujące na standardowych komputerach z systemem BIOS, aby umożliwić im uruchamianie programów ładujących i systemów operacyjnych w trybie EFI. Clover i DUET nie są technicznie oprogramowaniem układowym, więc nie jestem pewien, czy naprawdę się liczą.
Rod Smith
8

P: Jak wszyscy wiemy, BIOS jest ważną częścią dostępu do opcji rozruchu. Więc teraz UEFI to zrobi? W jaki sposób?

Odp .: To zamieszanie związane z warunkami. Np. „Wprowadź BIOS, aby zmienić blabla”. Politycznie poprawnym terminem jest „narzędzie do konfiguracji oprogramowania układowego” dla tego, co wprowadzasz. Jeśli mówimy o „BIOS” kontrastującym go z „UEFI”, oznacza to coś innego, a mianowicie: środowisko wykonywania rozruchu.

Jeśli więc masz na myśli to narzędzie instalacyjne, a) nie nazywaj go UEFI i b) jest to w zasadzie to samo, co w dawnych czasach.

Sposób, w jaki narzędzie instalacyjne komunikuje się ze sprzętem i jego trwałym magazynowaniem, jest prywatne dla oprogramowania układowego. Nic też się tam nie zmieniło.

P: Czym zatem różni się „rozruch z BIOSem” i „rozruch z UEFI”?

Odp .: Środowisko, w którym znajdują się programy ładujące, jest inne. A dzięki UEFI środowisko to jest bardziej precyzyjne, o wiele bardziej nowoczesne i bogate w funkcje.

Robert Siemer
źródło