Il
master boot record (MBR)
(
lett.
"
settore di avvio principale
"), in
informatica
ed
elettronica
, nell'ambito dell'
architettura dei personal computer
, e quel settore del
disco rigido
di un
computer
composto dai primi 512
byte
(mezzo
chilobyte
) del disco, che contiene la sequenza di comandi/
istruzioni
necessarie all'avvio (
boot
) del
sistema operativo
, tipicamente il
boot manager
/
boot loader
del sistema e la tabella delle
partizioni
dei
file system
presenti nel disco.
[1]
[2]
E un elemento fondamentale dell'
architettura software
o
piattaforma
operativa ed un suo malfunzionamento provoca l'inavviabilita del sistema.
Il processo d'avvio e diverso a seconda che il disco sia
partizionato
o meno. In entrambi i casi pero il
firmware
di avvio contenuto nella
ROM
del
BIOS
carica ed esegue inizialmente il master boot record dopo averlo letto in memoria trasferendogli il controllo del disco.
Di solito l'MBR include la tabella delle
partizioni
, che e usata dal PC per caricare ed avviare il settore di avvio della partizione scelta dall'utente attraverso il
boot manager
. Questo permette al BIOS di caricare qualunque sistema operativo senza bisogno di sapere esattamente dove si trovi il rispettivo settore di avvio all'interno della partizione dedicata poiche questo potrebbe non coincidere con il primo settore fisico della partizione.
Il settore di avvio (che, fisicamente, corrisponde al primo blocco) di una partizione avviabile si chiama
partition boot record
(
PBR
) e, a volte
[3]
,
volume boot record
(
VBR
). Nel PBR sono contenute le istruzioni per eseguire lo specifico boot loader (specifico del sistema operativo installato sulla partizione avviabile). Il settore di avvio di qualsiasi partizione (marcata nella tavola delle partizioni come avviabile) si chiama
boot sector
. Avviabile significa "volume di sistema" o "volume di avvio" (un ambiente di ripristino e anch'esso un volume di avvio).
Dunque se il disco e partizionato l'MBR contiene il codice di selezione della partizione selezionata che a sua volta carica il settore di avvio della partizione stessa, attraverso il
boot loader
, trasferendogli il controllo del disco; altrimenti, se non ha partizioni, e il settore di avvio stesso che, sempre attraverso il boot loader, carica l'unica partizione segnata come
attiva
avviando il sistema operativo.
In estrema sintesi e semplificando di molto complessi tecnicismi, sono questi i passaggi del processo di boot:
[4]
[5]
- l'
UEFI
cede il controllo al MBR (grazie all'identificazione dell'indirizzo del gestore di avvio contenuto nel settore principale del disco, il MBR appunto, nonche all'istruzione contenuta); il settore di avvio principale e uno "speciale" settore di avvio: e il "master" appunto, quello che presiede tutti gli altri (avviabili, mediante il PBR, e non avviabili);
- il MBR carica il gestore di avvio attivo;
- il gestore legge, dalla tavola delle partizioni contenuta nel MBR, la mappa delle partizioni
[6]
; in particolare, analizza quali sono i volumi avviabili (in parole povere, le partizioni ove e installato un sistema operativo o un ambiente di ripristino o comunque un sistema con un settore di boot);
- tramite l'indirizzo contenuto nel PBR di ciascuna partizione, il gestore identifica i settori del disco ove si trovano fisicamente i caricatori di avvio di ogni partizione avviabile;
- a seconda di come si e configurato il boot, il gestore lancia in automatico il sistema prescelto (attivo) oppure presenta un menu di scelta e/o le opzioni di avvio
[7]
. Il volume (se esistente) non solo contrassegnato "di sistema" e di "avvio" ma anche "attivo" e quello che contiene il sistema operativo (di avvio) predefinito.
Per i
processori
Intel x86
la sequenza di comandi
assembly
del master boot record opera in
modalita reale
, anche quando il sistema operativo da caricare lavora (la maggior parte del tempo) in
modalita protetta
.
Poiche il MBR e letto quasi subito all'avvio del computer, molti
virus
, creati prima che gli
antivirus
fossero diffusi, operavano cambiando il codice del MBR rendendo impossibile l'avvio del sistema.
Con l'avvento del firmware di tipo
UEFI
, alcune funzioni del boot manager sono, per cosi dire, incorporate e anticipate da questa interfaccia/strato.
MBP
(
Master Boot Program
) e un
codice eseguibile
che si trova nei primi 446
byte
del Master Boot Record. Viene avviato dal BIOS con un
interrupt
19H, subito dopo le operazioni di
POST
. Si occupa di scansionare le partizioni, trovare e avviare il rispettivo boot loader che deve essere eseguito.
MBT
(
Master Boot Table
) e una tabella che si trova subito dopo l'MBP. La sua dimensione e 64
byte
. Contiene informazioni sulle partizioni (tipologia, bootable, CHS iniziale, CHS finale,
LBA
del primo settore, numero di settori della partizione).
[8]
Nel caso dell'esistenza delle partizioni estese sul disco, verra allocato un nuovo record (
EBR
,
Extended Boot Record
) nel primo settore di ogni partizione logica. La struttura e identica all'MBR, ma lo spazio riservato al Master Boot Program risulta inutilizzato. L'EBR contiene il settore di inizio della partizione logica e il
puntatore
alla prossima partizione logica.
Gli ultimi 2
byte
sono riservati al
magic number
dell'MBR, che identifica la fine dello stesso. E normalmente 55 AA.
[9]
- ^
Master Boot Record
, su
wiki.archlinux.org
.
URL consultato il 25 maggio 2020
.
- ^
2.1.2 Il MBR - Master Boot Record
, su
autistici.org
, 26 settembre 2006.
URL consultato il 25 maggio 2020
.
- ^
Sebbene la partizione sia una cosa e il volume un'altra
- ^
Master boot record e Tabella delle Partizioni
, su
wintricks.it
.
URL consultato il 25 maggio 2020
.
- ^
Il processo di Boot
, su
itimarconi.ct.it
.
URL consultato il 25 maggio 2020
.
- ^
Tenere presente che esistono anche partizioni o volumi contenenti solo dati, nascoste, riservate al sistema o comunque non avviabili
- ^
Da questa rapida descrizione, si comprende bene come sia importante conservare il file di backup del MBR del disco nonche quello dei PBR
- ^
Cosa e l MBR
, su
oldwildweb.com
.
URL consultato il 25 maggio 2020
.
- ^
(
EN
)
Chapter 7. Booting and Boot Managers
, su
novell.com
.
URL consultato il 25 maggio 2020
.