W systemie z podwójnym rozruchem, w jaki sposób BIOS wybiera uruchamiany bootloader?

21

Mam podwójne uruchamianie systemu Windows i Ubuntu. Kiedy włączam komputer, BIOS wykonuje POST, a po nim uruchamia się bootloader.

Chcę zrozumieć, w jaki sposób BIOS wybiera, który bootloader ma działać. Chciałbym wiedzieć, jak przebiega proces między BIOSem a bootloaderem na komputerze z podwójnym bootowaniem.

    
zadawane Prashant Singh 29.11.2017, 10:58
źródło

3 odpowiedzi

36

Oprogramowanie układowe BIOS właściwie nie wybiera bootloadera. Ładuje kod z sektora 0 dysku i wykonuje go. Cokolwiek tam jest, zostanie wykonane. Mam nadzieję, że jest to bootloader (lub coś, co ładuje bootloader), ale nie musi tak być. We wczesnych dniach na PC mieliśmy gry na dyskietkach, które po prostu uruchamiały się i działały bez systemu operacyjnego - teraz nazywa się je "bootami".

Oprogramowanie układowe UEFI w rzeczywistości rozumie partycje i systemy plików oraz skanuje dyski dla typu partycji systemowej UEFI. Ponieważ jest to system plików, można w nim umieścić wiele programów rozruchowych. Oprogramowanie układowe UEFI ma zapewniać menu lub inny sposób wybrania, który program ładujący jest używany.

Wiele systemów UEFI uruchamia się w "trybie starszym" - gdzie UEFI ładuje "moduł usługi zgodności" - coś, co sprawia, że ​​wygląda jak BIOS - i faktycznie działa jak BIOS.

GRUB to popularny bootloader typu open-source, który może albo uruchomić system Linux, albo "chainload" (dać kontrolę) bootloaderowi Windows (zazwyczaj winload.exe w folderze Boot partycji Windows). GRUB daje ci możliwość podjęcia decyzji. GRUB może odczytywać pliki konfiguracyjne i wybierać z nich domyślny wybór.

Przeczytaj ten , jeśli chcesz mieć obfite, krwawe szczegóły.

    
odpowiedział LawrenceC 29.11.2017, 15:22
źródło
10

Ten diagram pokazuje, w jaki sposób kontrola przechodzi z oprogramowania układowego (BIOS lub UEFI) do bootloadera i od bootloadera do systemu operacyjnego w Ubuntu.


BIOS vs. UEFI

Jeśli systemy operacyjne zostały zainstalowane w różnych trybach (BIOS i UEFI), podwójne uruchamianie systemu Windows i systemu Ubuntu nie działa.

  • Przejrzyj link w sekcji Konwersja Ubuntu na tryb UEFI .

  • Program rozruchowy grub może być również konwertowany w przeciwnym kierunku z UEFI na BIOS. Linux może ładować się z dysku GPT w trybie BIOS. Zobacz tę odpowiedź: Konwertuj z EFI na BIOS-owy

odpowiedział karel 29.11.2017, 12:37
źródło
7

W trybie starszym (rozruch systemu BIOS, a nie UEFI) BIOS kontroluje kolejność dysku. Dawno temu było to kontrolowane przez kable; ale zmiana ustawień BIOSu bije otwarcie okna & amp; zmiana kabli.

BIOS ładuje (do pamięci) pierwszy sektor (512 bajtów dysku o nazwie MBR lub główny rekord rozruchowy) pierwszego dysku (lub kolejności dysków kontrolowanych przez BIOS), a następnie przekazuje (CPU) kontrolę do tego "bootloadera". W ten sposób BIOS zakończył swoje zadanie, a kod w pierwszym sektorze działa.

    
odpowiedział guiverc 29.11.2017, 11:15
źródło

Przeczytaj inne pytania na temat tagów