Co to jest opcja „Flagi rozruchowej” podczas instalowania dystrybucji?


Odpowiedzi:


32

Flaga rozruchowa pochodzi z czasów starożytnych, w których wskazano by rekord partycji MBR jako rozruchowy, aby można było wskazać, gdzie rezyduje moduł ładujący .

W nowoczesnych systemach operacyjnych jest to powszechnie nieużywane, ponieważ MBR składa się z minimalnego programu ładującego, który ładuje się na własną partycję lub przeskakuje do innego obszaru na dysku, na którym przechowywany jest kod programu ładującego. (MBR może zawierać między innymi kod wykonywalny lub tablicę partycji rozruchowych. Zobacz także ten link do artykułu o MBR ).

Na przykład GRUB jest zapisywany w MBR i uruchamia dowolną partycję, którą wybierzesz.

Zobacz także (dość małą) stronę Wikipedii dotyczącą flagi rozruchowej: en.wikipedia.org/wiki/Boot_flag


GRUB nie musi być jednak zapisany w MBR i może zostać załadowany przez starszy MBR.
Ignacio Vazquez-Abrams

@ IgnacioVazquez-Abrams Prawidłowo, wszystko czego potrzebuje to moduł ładujący sektora rozruchowego dowolnej partycji. Nie chciałem zbytnio zagłębiać się w funkcjonalność GRUB, ponieważ to pytanie dotyczyło flag rozruchowych i MBR, a nie GRUB per se.
polemon 30.10.11

4

Na początku myślałem, że to błąd w grub2. Niektóre BIOS-y wydają się sprawdzać, czy przynajmniej jedna partycja jest oznaczona jako bootowalna. Po długich badaniach zauważyłem to, ponieważ w ogóle nie było sposobu na uruchomienie z dysku twardego lub pamięci USB. Oznacza to, że nawet jeśli bajty magiczne na końcu mbr są poprawne, a kod rozruchowy w mbr jest prawidłowy, BIOS zignoruje to urządzenie i pominie go w sekwencji rozruchowej, dopóki nie zostanie ustawiona flaga rozruchowa dla co najmniej jednej partycji. Testowane na Fujitsu P772 i HP Probook 6570b.


1

Każdy system operacyjny, który używa jakiegoś sprzętu komputerowego, musi zostać uruchomiony.

Zaczyna się to od starożytnego, niezależnego od systemu wyszukiwania rozruchu, inicjowanego przez BIOS (podstawowy system wyjściowy) komputera lub serwera.

Ten fragment kodu systemu BIOS próbuje załadować MBR z pierwszego odpowiedniego urządzenia rozruchowego. Kolejność wyszukiwania dla urządzenia rozruchowego można skonfigurować w konfiguracji BIOS-u: które urządzenie (dyskowe) jako pierwsze, które następne i tak dalej.

„Starsza” MBR próbuje znaleźć pierwszą partycję podstawową oznaczoną jako rozruchową i sprawdza, czy na tej partycji znajduje się krótki magiczny kod szesnastkowy.

Jeśli kod szesnastkowy zostanie znaleziony, reszta (moduł ładujący bootstrap) zostanie wykonana przez bios. Tutaj zaczyna się uruchamianie systemu operacyjnego - może to być DOS, Windows, Linux, ...


1
-1. To nie BIOS sprawdza, czy partycja jest bootowalna.
Ignacio Vazquez-Abrams

BIOS próbuje załadować MBR (wyświetlanie, No Operating Systemjeśli nie znaleziono właściwej magicznej liczby), a następnie MBR bierze ją stamtąd. Starsze MBR szuka aktywnej partycji podstawowej, ale inne MBR (grub, lilo itp.) Mogą działać inaczej.
Ignacio Vazquez-Abrams,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.