Che cos'è l'opzione "Flag di avvio" durante l'installazione di una distribuzione?


Risposte:


32

Il flag di avvio risale ai tempi antichi, in cui è possibile indicare un record di partizione MBR come avviabile, quindi è possibile indicare dove risiedeva il boot loader .

Sui sistemi operativi moderni questo è ampiamente inutilizzato, poiché l'MBR è costituito da un caricatore di fase minimo che si avvia nella propria partizione o passa a un'altra area del disco in cui viene conservato il codice del caricatore di avvio. (Un MBR può contenere codice eseguibile o tabella delle partizioni di avvio tra le altre cose. Vedi anche questo link a un articolo sull'MBR ).

Ad esempio, GRUB è scritto nell'MBR e avvia qualsiasi partizione scelta.

Vedi anche questa (abbastanza piccola) pagina di Wikipedia sulla bandiera di avvio: en.wikipedia.org/wiki/Boot_flag


Tuttavia, GRUB non deve essere scritto nell'MBR e può essere caricato dall'MBR legacy.
Ignacio Vazquez-Abrams,

@ IgnacioVazquez-Abrams Corretto, tutto ciò che serve è un caricatore del settore di avvio di qualsiasi partizione. Non volevo immergermi troppo nella funzionalità di GRUB, dato che questa domanda riguardava flag di avvio e MBR e non di per sé GRUB.
polemon,

4

All'inizio ho pensato che fosse un bug in grub2. Alcuni BIOS sembrano testare se almeno una partizione è contrassegnata come avviabile. Dopo una lunga ricerca l'ho notato, perché non c'era modo di avviarsi da hdd o chiavetta USB. Ciò significa che anche se i byte magici alla fine di mbr sono corretti e il codice di avvio in mbr è valido, il BIOS ignorerà quel dispositivo e lo salterà in sequenza di avvio fino a quando non verrà impostato il flag di avvio per almeno una partizione. Testato su Fujitsu P772 e HP Probook 6570b.


1

Ogni sistema operativo che utilizza un tipo di hardware derivato dal PC deve essere avviato.

Questo inizia con un'antica ricerca bootstrap indipendente dal sistema operativo che viene avviata dal BIOS (sistema di input input output) del PC o del server.

Quel pezzo di codice BIOS tenta di caricare l'MBR dal primo dispositivo di avvio adatto. L'ordine di ricerca per il dispositivo di avvio è configurabile nella configurazione del BIOS: quale dispositivo (disco) per primo, quale successivo e così via.

L'MBR "legacy" tenta di trovare la prima partizione primaria contrassegnata come avviabile e verifica se esiste un breve codice esadecimale magico su quella partizione.

Se viene trovato il codice esadecimale, il resto (il bootstrap loader) viene eseguito dal BIOS. Qui inizia l'avvio del sistema operativo - può essere DOS, Windows, Linux, ...


1
-1. Non è il BIOS che controlla se una partizione è avviabile.
Ignacio Vazquez-Abrams,

Il BIOS tenta di caricare l'MBR (visualizzando No Operating Systemse non viene trovato il numero magico corretto), quindi l'MBR lo prende da lì. L'MBR legacy cerca la partizione primaria attiva, ma altri MBR (grub, lilo, ecc.) Possono scegliere di agire in modo diverso.
Ignacio Vazquez-Abrams,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.