Il "flag di avvio" è necessario nelle distribuzioni odierne? In caso contrario, perché è ancora negli installatori? Che cosa è esattamente?
Il "flag di avvio" è necessario nelle distribuzioni odierne? In caso contrario, perché è ancora negli installatori? Che cosa è esattamente?
Risposte:
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
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.
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, ...
No Operating System
se 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.