Appunti di Informatica: Boot, Bios, Partizione

Appunti di Informatica: Boot, Bios, Partizione
Il Boot
Il termine di origine inglese boot (o bootstrap, o più raramente booting) indica, in generale, i
processi che vengono eseguiti da un computer durante la fase di avvio, dall'accensione fino al
completato caricamento del sistema operativo.
Il termine originale inglese è bootstrap (lacci degli stivali), da cui la contrazione boot (e termini
derivati come booting e reboot), e fa riferimento alla leggenda del Barone di Münchhausen e alla
sua capacità di sollevarsi in aria "tirandosi per gli stivali". Il modo di dire inglese è pulling yourself
up by your bootstraps.
L'analogia è con il fatto (solo apparentemente paradossale) che, durante il bootstrap, il computer
esegue un determinato processo allo scopo di mettersi in condizione di operare (eseguire processi).
In italiano si può rendere questo concetto anche come "avvio" ("riavvio"), sebbene questi termini
(come i loro corrispondenti diretti inglese "start" e "restart") abbiano generalmente una
connotazione meno tecnica.
Dalle espressioni boot e bootstrap anche in italiano sono derivati alcuni termini di gergo
informatico come il verbo bootare (o boottare) o l'aggettivo bootabile (o boottabile) che si riferisce
a un supporto di memorizzazione (per esempio un CD o un altro genere di disco) dal quale sia
possibile caricare il sistema operativo all'avvio del computer (e quindi completare il boot).
L'esecuzione corretta del booting è subordinata ad un buon funzionamento del firmware.
All'accensione di un computer il processore resta inizialmente sospeso nello stato di RESET
dall'hardware, che tiene attivo il corrispondente ingresso della CPU finché le tensioni di
alimentazione non sono stabili. Appena il segnale di RESET viene disattivato il processore carica la
sua prima istruzione da una locazione fissa del suo spazio di memoria, a cui di solito corrisponde
una ROM o altra memoria non volatile. Si tratta quasi sempre di una istruzione di salto
incondizionato (JMP) che porta l'esecuzione al vero inizio del programma di firmware (o del BIOS,
se si tratta di un personal IBM compatibile) che poi prende il controllo del computer.
Nel caso di dispositivi embedded dotati di semplice firmware, le procedure di bootstrap sono
estremamente variabili da caso a caso, e non è possibile darne una descrizione esauriente. Nei
personal computer IBM compatibili il firmware è costituito dal BIOS, che compie una serie di
operazioni ben definite prima di caricare il sistema operativo e trasferire ad esso il controllo.
Il boot loader
Talvolta il codice nel primo settore di un disco non è quello del sistema operativo ma quello di un
particolare programma, detto boot loader, il cui compito è di mostrare a video un menu da cui
l'utente può scegliere quale, fra più sistemi operativi installati, far partire: una volta fatta la scelta il
boot loader carica il codice del primo settore del sistema operativo scelto, che inizia l'esecuzione
come fosse stato lanciato dallo stesso BIOS.
Alcuni sistemi operativi possono ricevere dei parametri di boot, il boot loader può permettere di
definire questi parametri sia in un file di configurazione che al momento del boot.
Appunti di informatica: Boot, Bios, Partizione
1
Molte schede di rete ethernet dispongono di una funzionalità denominata Preboot Execution
Environment (PXE), che permette di caricare un sistema operativo (o più spesso un boot loader)
dalla rete invece che da un disco locale.
Il Reboot
L'espressione derivata 'Reboot' (analoga a "riavviare") si riferisce alla sequenza di spegnimento e
riavvio del computer, di solito per installazioni di software di sistema o per riparare a gravi errori
hardware o software che hanno compromesso la stabilità o le prestazioni della macchina.
Il reboot può essere effettuato in tre modi:
•
•
•
spegnimento e riaccensione fisici (interruzione e ripristino della alimentazione elettrica).
Chiamato hard reboot, è pericoloso sia per l'integrità dei dati che per quella dell'hardware e
non dovrebbe mai essere effettuato se non in casi estremi;
(per i PC che ne sono dotati) pressione del tasto di reset, che attiva il segnale di reset della
CPU. Anche questo è un hard reboot ed anche questa è una operazione sconsigliabile,
perché può creare perdite di dati, ma non presenta rischi per l'hardware. L'intera sequenza di
operazioni di bootstrap del BIOS e del sistema operativo riparte da capo, tuttavia è possibile
che alcuni dispositivi già in condizioni di errore prima del reset non rispondano al BIOS
durante l'inizializzazione, costringendo ad uno spegnimento fisico della macchina.
riavvio con combinazioni di tasti (p.e. su PC, nella piattaforma di Windows, attraverso la
combinazione dei tasti Ctrl+Alt+Del, o nei sistemi UNIX Ctrl+Alt+SysReq+B) chiamato
soft reboot: a differenza del boot completo, nel soft reboot non viene eseguito il POST e la
ricerca di tastiera e video, ma il processo riparte circa dal passo 6 del paragrafo precedente
(inventario dell'hardware).
Il BIOS
In informatica, il Basic Input-Output System o BIOS è il primo codice che viene eseguito da un
personal Computer IBM compatibile dopo l'accensione, ed ha tre funzioni principali:
•
•
•
Eseguire una serie di test diagnostici per controllare lo stato di funzionamento
dell'hardware e segnalare eventuali guasti rilevati tramite un codice sonoro
(beep code);
Localizzare il sistema operativo e caricarlo nella RAM;
Fornire una interfaccia software per l'accesso alle periferiche e all'hardware
del PC.
Nei primi PC IBM il BIOS supportava tutte le periferiche e il DOS faceva completo affidamento su
di esso per le operazioni a basso livello, ma con l'evoluzione tecnologica successiva le capacità
offerte dalle routine di gestione del BIOS (all'epoca non aggiornabili, perché scritte in ROM)
divennero rapidamente insufficienti. Attualmente i moderni sistemi operativi (Microsoft Windows e
Linux) non usano più il BIOS per le loro operazioni di I/O ma accedono direttamente all'hardware.
Il BIOS è scritto di solito nel linguaggio assembler nativo della famiglia di CPU utilizzata.
Attualmente il BIOS dei PC è scritto su memorie EEPROM riscrivibili, quindi può essere
modificato e aggiornato: generalmente i costruttori mettono a disposizione nuove versioni di BIOS
per correggere difetti o aggiungere supporto a periferiche hardware non previste inizialmente.
Appunti di informatica: Boot, Bios, Partizione
2
Tuttavia non è consigliabile aggiornare il BIOS di un PC senza un motivo ben preciso, perché
l'operazione di aggiornamento, se non va a buon fine, può rendere il PC inutilizzabile.
Il termine apparve per la prima volta con il sistema operativo CP/M e descriveva quella parte di
CP/M che veniva caricata all'avvio e che si interfacciava direttamente con l'hardware. I computer
che utilizzavano il CP/M avevano infatti solo un semplicissimo boot loader nella ROM. Anche le
successive versioni del DOS avevano un file chiamato IBMBIO.COM o IO.SYS del tutto analogo.
Pur essendo il termine BIOS un acronimo, c'è un richiamo alla parola greca
(bios) vita.
A partire dall'introduzione dei primi IBM PC XT e compatibili nell'agosto del 1981, è il BIOS che
ha il compito di dare i primi comandi al sistema durante la fase di avvio, detta boot process. In
questa fase, dopo i controlli preliminari sulla funzionalità dei componenti fondamentali (interrupt,
RAM, tastiera, dischi, porte), il BIOS si interfaccia con la memoria CMOS, una memoria non
volatile capace di mantenere anche a computer spento i parametri di configurazione che possono
essere oggetto di modifica. In questa memoria, il BIOS è in grado di scrivere per memorizzare le
necessarie modifiche alla configurazione e di leggere per stabilire dove si trova il sistema operativo
da caricare per l'avvio.
Nelle moderne implementazioni del BIOS possono essere selezionati i più diversi tipi di supporto
per l'avvio e sono presenti numerose funzioni per la diagnostica e la personalizzazione di importanti
funzioni relative all'utilizzo della RAM, alle opzioni per l'overclocking e sono presenti segnali di
allarme in caso di malfunzionamenti delle ventole o eccessivi aumenti della temperatura..
Il BIOS a volte viene anche chiamato firmware, dal momento che è una parte integrante
dell'hardware, pur essendo composto da istruzioni software. Prima del 1990 il BIOS veniva
memorizzato su una o più ROM, chiaramente non riprogrammabili. Man mano che la complessità è
aumentata, di pari passo con la necessità di aggiornamenti, si è diffusa la memorizzazione del
firmware BIOS prima su EPROM, poi su EEPROM o flash memory così da permettere un rapido
aggiornamento anche da parte dell'utente finale. La presenza di BIOS aggiornabili anche dall'utente,
permette di ottenere ad esempio il supporto per CPU più aggiornate o dischi fissi più capienti. Per
effettuare tali operazioni è indispensabile consultare il manuale d'uso della scheda madre e/o il sito
web del produttore. Dal momento che eventuali errori nell'aggiornamento del BIOS rendono il
computer inservibile, alcune schede madri sono dotate di un doppio BIOS. Sono noti alcuni virus
che sono in grado di sovrascrivere il BIOS, tuttavia la maggior parte dei sistemi è dotata di
un'opzione nel BIOS stesso per disabilitare le funzioni di scrittura e - spesso - di un ponticello che
disabilita le tensioni di programmazione necessarie per l'alterazione della EEPROM.
Per accedere al menu di modifica del BIOS è necessario premere all'avvio dell'elaboratore (dopo
alcuni secondi che si è premuto il tasto di accensione) un tasto o un combinazione di tasti. Se
l'elaboratore ha iniziato a caricare il sistema operativo non è più possibile (eccetto alcuni casi)
variare le impostazioni del BIOS.
Questi i tasti più usati:Canc oppure Del
•
•
•
F2
F10
Alt-F1
Una volta entrati nel menu di impostazione del BIOS è sufficiente seguire le indicazioni.
Appunti di informatica: Boot, Bios, Partizione
3
Il bios è normalmente in grado di caricare un sistema operativo da diversi dispositivi di
memorizzazione di massa, come dischi fissi, floppy, CD-ROM, memorie USB, e spesso anche di
eseguire un boot da rete attraverso PXE.
Questo permette di caricare un sistema operativo diverso da quello previsto dall'amministratore di
sistema, e quindi di eludere qualsiasi politica di sicurezza basata sul sistema operativo. Per questa
ragione, se si suppone che persone non di fiducia possano avere accesso fisico al calcolatore, è
opportuno configurare il bios per non consentire il boot da dispositivi diversi da quello previsto, e
proteggere questa configurazione con una password.
Tuttavia, avendo accesso fisico al calcolatore e la possibilità di aprirlo, è normalmente possibile
azzerare le impostazioni del bios, tra cui la password. Quindi possono essere opportune anche
misure per prevenire l'apertura del calcolatore.
La Partizione
La partizione in informatica consiste nella suddivisione di un'unità fisica (per esempio un hard
disk) in più unità logiche. Le singole unità logiche vengono viste del sistema operativo come unità
separate e possono essere formattate e gestite in modo indipendente.
La partizione di un hard disk può essere effettuata per una serie di motivi, i principali sono:
• Recuperare
spazio utile
In questo caso si suddivide l'hard disk dato che alcuni file system (tipo il FAT) sono estremamente
inefficienti nel gestire hard disk di elevate capacità dato che sprecano moltissimo spazio utile nella
memorizzazione di file di piccole dimensioni. Questo problema viene attenuato dalla partizione
dato che il file system si trova a gestire unità logiche di capacità inferiore a quella dell'hard disk e
quindi a sprecare meno spazio utile.
• Installare più
sistemi operativi
Se l'utente ha la necessità di utilizzare più sistemi operativi sul medesimo computer deve
necessariamente suddividere l'hard disk in più partizioni in modo da poter assegnare a ogni sistema
operativo almeno una partizione da gestire. Ovviamente se l'utente ha più hard disk non è costretto a
partizionare dato che può assegnare un intero hard disk a ogni sistema operativo.
• Suddividere
logicamente i dati
Suddividere l'hard disk in più partizioni permette di suddividere logicamente anche i dati. Per
esempio si potrebbe realizzare una partizione per i dati e una per il sistema operativo e le
applicazioni. Con questa suddivisione logica in caso di malfunzionamento software del computer,
l'utente potrà formattare la partizione con il sistema operativo e le applicazioni senza perdere i dati
presenti nell'altra partizione.
Le partizioni vengono normalmente gestite tramite apposite utility fornite assieme al sistema
operativo, queste permettono di impostare e cancellare le partizioni e di modificarne alcuni
parametri ma non permettono di modificarne le dimensioni senza perdere il contenuto. Per questa
operazione è necessario utilizzare dei programmi appositi, il più conosciuto dei quali è Partition
Magic attualmente commercializzato da Symantec. Esistono comunque alternative freeware e free
software come GParted e QtParted.
Appunti di informatica: Boot, Bios, Partizione
4