Bootloader: tutte le informazioni sul boot manager

Affinché un processore possa eseguire le applicazioni, accede ai servizi di memoria, nota anche come memoria centrale. A tale scopo, i dati richiesti vengono caricati nella memoria, motivo per cui la sua capacità, la velocità di trasferimento e la velocità di accesso hanno un’influenza decisiva anche sul livello delle prestazioni generali del computer.

Uno dei programmi più importanti, i cui dati sono memorizzati nella memoria, è il sistema operativo. Windows, macOS &Co., dotati di una funzione di gestione processi, regolano, tra le varie cose, l’accesso del processore alla memoria centrale. Di conseguenza, i dati rilevanti del software di sistema devono essere caricati nella memoria centrale già all’avvio del dispositivo, per essere disponibili durante l’intero runtime. Ciò è reso possibile da un cosiddetto bootloader, integrato di serie nella maggior parte dei sistemi operativi moderni.

Che cos’è un bootloader?

Un bootloader è un software speciale che carica nella memoria il sistema operativo installato su un computer. A questo scopo, un bootloader viene di solito eseguito subito dopo l’avvio di un dispositivo, tramite un supporto di avvio come un disco rigido, un CD/DVD o una chiavetta USB. Le informazioni in merito alla posizione del bootloader si trovano nel supporto di avvio del firmware del computer (ad es. nel BIOS). L’intero processo è comunemente chiamato “boot”, “booting” o “bootstrap”.

N.B.

Il termine “bootloader” è la forma abbreviata delle due parole inglesi “bootstrap loader”, espressione che deriva dal detto inglese “to lift oneself by one’s own bootstrap” che significa letteralmente “tirarsi su per le fibbie degli stivali” e allude, dunque, al ruolo di supporto decisivo che il boot manager svolge nel processo di avvio del computer.

Come funziona un bootloader?

Quando si preme il pulsante Start su un computer, la prima cosa che si vede sullo schermo sono alcune informazioni relative all’hardware integrato. Il software responsabile di questo messaggio è prima di tutto il già citato firmware del dispositivo, che di solito viene implementato dai produttori in una memoria flash sulla scheda madre del computer. La maggior parte dei PC desktop e notebook utilizzano il già collaudato BIOS (Basic Input/Output System) o il più moderno UEFI (Unified Extensible Firmware Interface). Entrambe le applicazioni raccolgono vari dati hardware e creano un elenco completo di tutte le unità disponibili del dispositivo.

Una volta completato il processo, il firmware esamina i supporti dati trovati uno dopo l’altro per cercare un bootloader, più precisamente per individuare una firma speciale, la cosiddetta firma di avvio (chiamata anche “boot record”). La ricerca viene eseguita inizialmente sui supporti rimovibili collegati o inseriti (CD/DVD, chiavette USB, dischi rigidi esterni, ecc.), poi sui dischi rigidi installati in modo permanente. In quest’ultimo caso, il bootloader o la sua firma si trovano solitamente nel Master Boot Record (MBR), che contiene anche le tabelle delle partizioni del supporto dati. Una volta identificato un bootloader, questo viene caricato e il sistema viene avviato. Se la ricerca non ha esito positivo, il firmware emette un messaggio di errore.

Consiglio

Dopo aver installato correttamente un sistema operativo, questo si avvierà con un bootloader situato solitamente sulla partizione principale. Tuttavia, se il sistema è danneggiato e desiderate fare una nuova installazione, dovete avvalervi del supporto di avvio rimovibile già menzionato; questo vale, naturalmente, anche se non è ancora presente un sistema operativo. La nostra guida vi informa su come convertire una chiavetta USB in un supporto di avvio completamente funzionale.

Dove sono memorizzati esattamente i bootloader?

Per quanto riguarda la posizione dei bootloader, ci sono essenzialmente due possibilità:

  1. Il bootloader è memorizzato nel primo blocco del supporto di avvio.
  2. Il bootloader è memorizzato in una partizione specifica del supporto di avvio.

La prima possibilità è strettamente legata al principio dei Master Boot Record, che contengono non solo il riferimento al bootloader richiesto dal firmware, ma anche il software di avvio stesso. Il primo blocco di memoria disponibile o settore del supporto è sempre riservato al record, indicato come blocco di avvio o settore di avvio a causa di questa importante funzione.

Nel secondo caso, il sistema operativo utilizza una partizione selezionata, per cui il file system sottostante e le tabelle delle partizioni utilizzate possono essere molto diverse. Il fattore decisivo è sempre il firmware, che in questo modello di memoria di bootloader fornisce anche un formato di file specifico per il boot manager. I dispositivi con UEFI, ad esempio, utilizzano il formato PE/COFF (Portable Executable / Common Object File Format).

N.B.

I bootloader possono anche essere distribuiti su più livelli consecutivi. I multistage bootloader comprendono fino a tre diversi livelli, che vengono eseguiti uno dopo l’altro. Sono tipicamente usati quando il programma di avvio è troppo grande per il settore di avvio.

I compiti di un bootloader in sintesi

I bootloader fungono da intermediari tra l’hardware e il sistema operativo. Non appena un bootloader è stato inizializzato dal rispettivo firmware, ha la responsabilitàdi sistema di avviare il booting. Il primo compito è quello di caricare la memoria centrale, fondamentale per la funzionalità del processore.

Nel secondo passaggio, il bootloader carica il kernel del sistema operativo, cioè il componente di base del software di sistema che controlla tutti gli accessi alla memoria e al processore e contiene tutti i driver più importanti. Inoltre, il bootloader elabora vari compiti e comandi di routine, come l’integrazione dell’archivio di dati. Alcuni bootloader eseguono compiti che vanno oltre lo scopo effettivo del software di avvio, ad esempio:

  • Riconoscere e avviare ulteriori bootloader disponibili
  • Eseguire programmi applicativi (utilizzati negli anni '80 per eseguire giochi per computer direttamente dal dischetto)
  • Correggere funzioni errate o mancanti e input nel firmware
  • Caricare un firmware alternativo

Dopo aver completato con successo tutti i compiti, il bootloader passa infine la responsabilità di sistema al kernel.

Quali tipi di bootloader esistono?

Abbiamo riassunto gli aspetti più importanti sui bootloader. La seguente tabella elenca quali sono i bootloader più noti e più importanti:

Nome del bootloader Descrizione
Bootmgr Programma di boot dei sistemi Microsoft da Windows Vista e Windows Server 2008
NT-Loader (NTLDR) Programma di boot dei sistemi Microsoft fino a Windows XP e Windows Server 2003
barebox Bootloader per sistemi integrati in stampanti, macchine fotografiche, auto, aerei, ecc.
boot.efi Bootloader EFI, in uso su dispositivi Mac dal 2006
BootX Ex-bootloader di sistemi operativi Mac
Grand Unified Bootloader (GRUB) Programma di boot gratuito per sistemi operativi unix like, come Linux
ARM Core Bootloader Bootloader per microcontrollori (usato ad esempio in iPhone)
OpenBIOS Boot manager gratuito e portatile con licenza GNU-GPL

Insieme ce la faremo. Noi di IONOS
#siamoquiperte
L'emergenza coronavirus è una sfida che dobbiamo vincere insieme.
In questo momento di incertezza vogliamo aiutarti a mandare
avanti la tua attività.
3 mesi omaggio
E-commerce
Crea il tuo negozio online.