[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]


Capitolo 87.   Introduzione al BIOS

Il firmware degli elaboratori x86 e derivati è noto con il nome BIOS (Basic input output system). Originariamente il suo scopo era soltanto quello di fornire delle funzioni essenziali, in modo da consentire a «sistemi operativi» da microelaboratore, come il Dos, di avviarsi e di funzionare.

Nel tempo, il BIOS si è evoluto e spesso costituisce un piccolo sistema di gestione dell'hardware, indipendente da altro software. In particolare, diventa il modo normale attraverso cui si configurano le varie componenti fisiche che sono incorporate nella scheda madre (utilizzando per conservare la configurazione una piccola memoria C/MOS, sostenuta da una batteria).

87.1   Collocazione fisica del BIOS

Rispetto alla terminologia tradizionale, il BIOS (compresa la porzione della memoria C/MOS), costituisce la «ROM» dell'elaboratore. In questo senso (a parte la porzione «C/MOS»), il BIOS è contenuto normalmente all'interno di integrati che hanno una funzione del genere (memorie ROM vere e proprie, oppure memorie cancellabili e riprogrammabili in vario modo).

Figura 87.1. Integrato riprogrammabile tradizionale: sotto l'etichetta si intravede la finestrella per la cancellazione, che richiede l'esposizione a raggi ultravioletti. L'etichetta avrebbe anche lo scopo di proteggere la memoria da una cancellazione accidentale.

integrato riprogrammabile tradizionale

Figura 87.2. Memoria «flash», riprogrammabile senza bisogno di estrarre l'integrato dalla scheda madre.

memoria flash

Figura 87.3. Memoria «flash» compatta.

memoria flash

In base alla tradizione, come si vede nelle figure, l'integrato che contiene il BIOS dovrebbe essere estraibile, per facilitarne la sostituzione o la riprogrammazione. Tuttavia, le schede madri tendono a disporre di un BIOS contenuto in un integrato di memoria saldato.

87.2   Blocco di avvio

Quando il BIOS risulta danneggiato per qualche ragione, può darsi che il codice del blocco di avvio (bootblock) contenuto del BIOS, sia ancora integro. In tal caso, dovrebbe essere possibile avviare un sistema Dos di emergenza dall'unità a dischetti, anche se lo schermo e la tastiera possono risultare inutilizzabili. In questi casi serve un dischetto contenente il sistema operativo minimo e gli strumenti indispensabili al ripristino del BIOS.

In un'altra sezione di questo capitolo, viene descritto UniFlash per salvare e ripristinare il BIOS. A titolo di esempio, volendo usare questo programma allo scopo di ripristinare un BIOS che è in grado di eseguire solo il codice del blocco di avvio, occorre inserire nel dischetto il file UNIFLASH.EXE, la copia del BIOS da ripristinare e un file AUTOEXEC.BAT realizzato in modo da eseguire automaticamente UNIFLASH.EXE:

@UNIFLASH -E file_bios_da_ripristinare

Nel caso particolare di un BIOS AMI, il blocco di avvio dovrebbe contenere delle istruzioni speciali, attraverso le quali viene caricato automaticamente dal dischetto il file AMIBOOT.ROM (senza che il dischetto debba contenere un sistema Dos o altro), oppure un altro nome specifico nel caso di schede madri speciali. Eventualmente, può essere necessario premere la combinazione di tasti [Ctrl+Inizio] ([Ctrl+Home]) per forzare il caricamento del file all'avvio (nel caso di una scheda madre ASUS, si può trattare della combinazione [Alt F2]).

Quando si realizza un dischetto Dos con gli strumenti necessari per il ripristino del BIOS, è necessario che non venga avviato nulla di superfluo. Pertanto, è meglio sopprimere il file CONFIG.SYS e mettere nel file AUTOEXEC.BAT esclusivamente il comando o i comandi di ripristino. In particolare, non vanno avviati programmi come HIMEM.SYS o simili.

Se il BIOS è stato danneggiato, ma il blocco di avvio è integro e non si vede nulla sullo schermo, si può provare a installare una scheda VGA nel bus ISA, oppure, in mancanza di un bus ISA si può tentare con una scheda per il bus AGP.

87.3   Modifica del BIOS

A seconda del tipo di tecnologia adottato, si possono utilizzare delle tecniche differenti per la modifica del contenuto del BIOS. Nei primi elaboratori era necessario estrarre l'integrato contenente il BIOS, cancellarlo (seguendo la procedura prevista per quel tipo di componente) e riscriverlo, attraverso un'apparecchiatura appropriata. In tempi più recenti si è introdotto l'uso di memorie «flash», che consentono la riscrittura senza dover estrarre l'integrato dalla scheda madre.

La facilità attuale con cui è possibile riprogrammare la memoria del BIOS, consente di aggiornarlo, di solito per attivare funzionalità nuove, non previste originariamente per quella tale scheda madre.

Teoricamente, l'aggiornamento del BIOS dovrebbe avvenire con software realizzato appositamente per il tipo di scheda madre di cui si dispone, dal momento che non esiste una procedura unica standardizzata (si veda comunque il programma UniFlash). Tuttavia, questo software specifico è disponibile normalmente dai siti delle case produttrici, assieme alle varie versioni del BIOS esistenti per ogni scheda.

Il procedimento di riscrittura del BIOS ha un solo inconveniente: se l'operazione fallisce (di solito per un'interruzione dell'energia elettrica) o viene eseguita con un file non adatto, si rischia di non poter più avviare l'elaboratore; in pratica, si rende inutilizzabile la scheda madre.

87.4   BIOS di «marca»

Le case produttrici di elaboratori x86 completi, più conosciute, hanno utilizzato principalmente un BIOS prodotto internamente, più o meno derivato da quello originale di IBM. Al contrario, i produttori di schede madri hanno preferito affidarsi ad altre aziende specializzate, contribuendo così allo sviluppo di BIOS più raffinati e generalizzati.

Si ricordano solitamente tre nomi importanti di aziende produttrici di BIOS: AMI Phoenix e Award. Tuttavia, nel tempo le cose sono cambiate; per esempio Award è stata acquisita da Phoenix, ma anche senza avvenimenti così significativi, si può avvertire che nel tempo la configurazione di un certo tipo di BIOS cambia radicalmente.

Ogni produttore di BIOS mette a disposizione i propri strumenti per la modifica e la sostituzione del codice relativo, quando la memoria usata consente la riscrittura senza l'estrazione dalla scheda madre. Tuttavia, l'assenza di uno standard uniforme, richiede sempre una ricerca per l'acquisizione del software necessario alla versione del BIOS di cui si dispone, compatibile con la propria scheda madre.

Anche se il BIOS è realizzato in modo abbastanza generalizzato, ogni modello di scheda madre richiede delle variazioni personalizzate, che dipendono in pratica dai componenti installati effettivamente. Di conseguenza, l'aggiornamento del BIOS richiede di disporre di un file realizzato appositamente per la propria scheda madre, anche se gli strumenti di aggiornamento, eventualmente, possono essere sempre gli stessi.

Eccezionalmente, i BIOS modulari consentono la sostituzione di un certo modulo, senza interferire con il resto, ma si tratta di un'operazione delicata che richiede maggiore esperienza.

Figura 87.5. Programma di configurazione di un BIOS Award con menù semplice: menù principale.(1)

menù principale

Figura 87.6. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù principale.(1)

menù principale

Figura 87.7. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù standard.(1)

menù standard

Figura 87.8. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù avanzato.(1)

menù avanzato

Figura 87.9. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù chipset.(1)

menù chipset

Figura 87.10. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù dispositivi integrati.(1)

menù dispositivi integrati

Figura 87.11. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù alimentazione.(1)

menù allimentazione

Figura 87.12. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù Plug & Play.(1)

menù plug & play

Figura 87.13. Programma di configurazione di un BIOS Phoenix-Award con menù semplice: menù controllo della temperatura.(1)

menù controllo della temperatura

Figura 87.14. Programma di configurazione di un BIOS Phoenix-Award con menù a tendina: menù principale.(1)

menù principale

Figura 87.15. Programma di configurazione di un BIOS Phoenix-Award con menù a tendina: menù avanzato.(1)

menù avanzato

Figura 87.16. Programma di configurazione di un BIOS Phoenix-Award con menù a tendina: menù sicurezza.(1)

menù sicurezza

Figura 87.17. Programma di configurazione di un BIOS Phoenix-Award con menù a tendina: menù avvio.(1)

menù avvio

Figura 87.18. Programma di configurazione di un BIOS Phoenix-Award con menù a tendina: menù uscita.(1)

menù uscita

Figura 87.19. Programma di configurazione di un BIOS AMI con menù a tendina: menù principale.(1)

menù principale

Figura 87.20. Programma di configurazione di un BIOS AMI con menù a tendina: menù avanzato.(1)

menù avanzato

Figura 87.21. Programma di configurazione di un BIOS AMI con menù a tendina: menù sicurezza.(1)

menù sicurezza

Figura 87.22. Programma di configurazione di un BIOS AMI con menù a tendina: menù alimentazione.(1)

menù alimentazione

Figura 87.23. Programma di configurazione di un BIOS AMI con menù a tendina: menù avvio.(1)

menù avvio

Figura 87.24. Programma di configurazione di un BIOS AMI con menù a tendina: menù uscita.(1)

menù uscita

Figura 87.25. Programma di configurazione di un BIOS AMI con menù grafico: menù principale.(1)

menù principale

Figura 87.26. Programma di configurazione di un BIOS AMI con menù grafico: menù avanzato.(1)

menù avanzato

Figura 87.27. Programma di configurazione di un BIOS AMI con menù grafico: menù chipset.(1)

menù chipset

Figura 87.28. Programma di configurazione di un BIOS AMI con menù grafico: menù alimentazione.(1)

menù alimentazione

Figura 87.29. Programma di configurazione di un BIOS AMI con menù grafico: menù dispositivi integrati.(1)

menù dispositivi integrati

Figura 87.30. Programma di configurazione di un BIOS AMI con menù grafico: modifica della parola d'ordine.(1)

modifica della parola d'ordine

87.5   Salvare e riscrivere il BIOS

Per salvare e riscrivere il BIOS, ogni casa produttrice mette a disposizione i propri strumenti. Nella migliore delle ipotesi si tratta di software per sistemi Dos, che dovrebbero funzionare anche con FreeDOS (si veda il capitolo 694 a proposito di FreeDOS ed eventualmente il capitolo 411 a proposito di nanoDos). In tal caso, c'è solo la necessità di disporre di un'unità a dischetti per poter operare.

È importante che il sistema Dos installato nel dischetto, assieme al programma di servizio che si vuole usare, sia ridotto al minimo (il kernel e la shell COMMAND.COM), per garantire la massima disponibilità di memoria e per lasciare lo spazio necessario ai file temporanei.

Prima di riscrivere il BIOS, occorre accertarsi di disporre degli strumenti adatti alla propria scheda madre, perché gli strumenti generici che offrono i produttori dei BIOS potrebbero non essere adeguati. Oltre a questo occorre considerare che la riscrittura è sempre un'operazione rischiosa che, se fallisce o se viene eseguita utilizzando file inadatti, rende inutilizzabile la scheda madre. Pertanto, chi esegue una tale operazione, oltre che essere competente, deve accettare questo rischio a proprie spese.

87.5.1   BIOS Award

Tabella 87.31. Programma AwdFlash per salvare e riscrivere un BIOS Award. Questo programma si utilizza con un sistema Dos comune.

Versione Indirizzo per la ricerca
5.00 <http://www.google.com/search?q=awd500.zip>
<http://www.google.com/search?q=award+awdflash+5.00>
5.2b <http://www.google.com/search?q=awd52b.zip>
<http://www.google.com/search?q=award+awdflash+5.2b>
5.2c <http://www.google.com/search?q=awd52c.zip>
<http://www.google.com/search?q=award+awdflash+5.2c>
5.33 <http://www.google.com/search?q=awd533.zip>
<http://www.google.com/search?q=award+awdflash+5.33>
5.35 <http://www.google.com/search?q=awd535.zip>
<http://www.google.com/search?q=award+awdflash+5.35>
5.35b <http://www.google.com/search?q=awd535b.zip>
<http://www.google.com/search?q=award+awdflash+5.35b>
6.24 <http://www.google.com/search?q=awd624.zip>
<http://www.google.com/search?q=award+awdflash+6.24>
6.50d <http://www.google.com/search?q=awd650d.exe>
<http://www.google.com/search?q=award+awdflash+6.50d>
6.31 <http://www.google.com/search?q=awd631.zip>
<http://www.google.com/search?q=award+awdflash+6.31>
6.6 <http://www.google.com/search?q=awd66.zip>
<http://www.google.com/search?q=award+awdflash+6.6>
7.08 <http://www.google.com/search?q=awd708.zip>
<http://www.google.com/search?q=award+awdflash+7.08>
7.21 <http://www.google.com/search?q=awd721.zip>
<http://www.google.com/search?q=award+awdflash+7.21>
7.33 <http://www.google.com/search?q=awd733.zip>
<http://www.google.com/search?q=award+awdflash+7.33>
7.41 <http://www.google.com/search?q=awd741.zip>
<http://www.google.com/search?q=award+awdflash+7.41>
7.52 <http://www.google.com/search?q=awd752.zip>
<http://www.google.com/search?q=award+awdflash+7.52>
7.52c <http://www.google.com/search?q=awd752c.zip>
<http://www.google.com/search?q=award+awdflash+7.52c>
7.53 <http://www.google.com/search?q=awd753.zip>
<http://www.google.com/search?q=award+awdflash+7.53>
7.56 <http://www.google.com/search?q=awd756.zip>
<http://www.google.com/search?q=award+awdflash+7.56>
7.64a <http://www.google.com/search?q=awd764a.zip>
<http://www.google.com/search?q=award+awdflash+7.64a>
7.7 <http://www.google.com/search?q=awd77.zip>
<http://www.google.com/search?q=award+awdflash+7.7>
7.72 <http://www.google.com/search?q=awd772.zip>
<http://www.google.com/search?q=award+awdflash+7.72>
7.75 <http://www.google.com/search?q=awd775.zip>
<http://www.google.com/search?q=award+awdflash+7.75>
7.76a <http://www.google.com/search?q=awd776a.zip>
<http://www.google.com/search?q=award+awdflash+7.76a>
7.78 <http://www.google.com/search?q=awd778.zip>
<http://www.google.com/search?q=award+awdflash+7.78>
7.89 <http://www.google.com/search?q=awd789.zip>
<http://www.google.com/search?q=award+awdflash+7.89>
7.95 <http://www.google.com/search?q=awd795.exe>
<http://www.google.com/search?q=award+awdflash+7.95>
7.97d <http://www.google.com/search?q=awd797d.zip>
<http://www.google.com/search?q=award+awdflash+7.97d>
8.00 <http://www.google.com/search?q=awd800.zip>
<http://www.google.com/search?q=award+awdflash+8.00>
8.01 <http://www.google.com/search?q=awd801.zip>
<http://www.google.com/search?q=award+awdflash+8.01>
8.02 <http://www.google.com/search?q=awd802.zip>
<http://www.google.com/search?q=award+awdflash+8.02>
8.03 <http://www.google.com/search?q=awd803.zip>
<http://www.google.com/search?q=award+awdflash+8.03>
8.08 <http://www.google.com/search?q=awd808.zip>
<http://www.google.com/search?q=award+awdflash+8.08>
8.10 <http://www.google.com/search?q=awd810.zip>
<http://www.google.com/search?q=award+awdflash+8.10>
8.12 <http://www.google.com/search?q=awd812.zip>
<http://www.google.com/search?q=award+awdflash+8.12>
8.16 <http://www.google.com/search?q=awd816.zip>
<http://www.google.com/search?q=award+awdflash+8.16>
8.16a <http://www.google.com/search?q=awd816a.zip>
<http://www.google.com/search?q=award+awdflash+8.16a>
8.20a <http://www.google.com/search?q=awd820a.zip>
<http://www.google.com/search?q=award+awdflash+8.20a>
8.22a <http://www.google.com/search?q=awd822a.zip>
<http://www.google.com/search?q=award+awdflash+8.22a>
8.23b <http://www.google.com/search?q=awd823b.zip>
<http://www.google.com/search?q=award+awdflash+8.23b>
8.23h <http://www.google.com/search?q=awd823h.zip>
<http://www.google.com/search?q=award+awdflash+8.23h>
8.23j <http://www.google.com/search?q=awd823j.zip>
<http://www.google.com/search?q=award+awdflash+8.23j>
8.24f <http://www.google.com/search?q=awd824f.zip>
<http://www.google.com/search?q=award+awdflash+8.24f>
8.24g <http://www.google.com/search?q=awd824g.zip>
<http://www.google.com/search?q=award+awdflash+8.24g>
8.26f <http://www.google.com/search?q=awd826f.zip>
<http://www.google.com/search?q=award+awdflash+8.26f>
8.26g <http://www.google.com/search?q=awd826g.zip>
<http://www.google.com/search?q=award+awdflash+8.26g>
8.29e <http://www.google.com/search?q=awd829e.zip>
<http://www.google.com/search?q=award+awdflash+8.29e>
8.30 <http://www.google.com/search?q=awd830.zip>
<http://www.google.com/search?q=award+awdflash+8.30>
8.33 <http://www.google.com/search?q=awd833.zip>
<http://www.google.com/search?q=award+awdflash+8.33>
8.52 <http://www.google.com/search?q=awd852.zip>
<http://www.google.com/search?q=award+awdflash+8.52>
8.54b <http://www.google.com/search?q=awd854b.zip>
<http://www.google.com/search?q=award+awdflash+8.54b>

A titolo di esempio, la versione 8.22 del programma AwdFlash, può essere usata così:

Tabella 87.32. Programma Biosview per visualizzare la configurazione di un file contenente la copia di un BIOS Award. Questo programma si utilizza con un sistema Dos comune.

A titolo di esempio, la versione 2.00.00 del programma Biosview, può essere usata così:

87.5.2   BIOS AMI

Per salvare una copia del BIOS AMI in un file, si può tentare di utilizzare un programma generico, come UniFlash; a ogni modo, disponendo di un file contenente un BIOS AMI, la riscrittura della memoria «flash» contenuta nella scheda madre si ottiene semplicemente realizzando un dischetto in formato Dos-FAT, contenente esclusivamente il file AMIBOOT.ROM, che costituisce la copia del BIOS da ripristinare o da aggiornare. Con questo dischetto, si deve riavviare l'elaboratore, premendo eventualmente la combinazione [Ctrl+Inizio] ([Ctrl+Home]) per forzare l'aggiornamento.

Con le schede madri ASUS il comportamento può essere diverso: la combinazione dei tasti può essere [Alt+F2] e il nome del file dipende al modello della scheda madre (viene evidenziato durante il tentativo di caricare il file dal dischetto).

87.5.3   UniFlash

UniFlash (2) è un programma generalizzato, per salvare e memorizzare tutti o quasi tutti i tipi di BIOS (<http://www.uniflash.org/>), a partire da un sistema Dos, da avviare attraverso un dischetto.

UniFlash è costituito dal file eseguibile UNIFLASH.EXE, che può essere utilizzato in modo interattivo, oppure specificando delle opzioni nella riga di comando:

UNIFLASH [opzioni]

Se non si utilizzano argomenti nella riga di comando, il programma funziona in modo interattivo. Questa modalità di funzionamento si presta per salvare il BIOS o parte di esso, oppure per aggiornare un BIOS quando tutto funziona ancora regolarmente.

Quando il BIOS risulta danneggiato per qualche ragione, può darsi che il codice del blocco di avvio (bootblock) contenuto del BIOS, sia ancora integro. In tal caso, si deve preparare un dischetto contenente un sistema Dos essenziale, il programma UNIFLASH.EXE, la copia del BIOS da ripristinare e uno script AUTOEXEC.BAT realizzato in modo da eseguire automaticamente UNIFLASH.EXE:

@UNIFLASH -E file_bios_da_ripristinare

Figura 87.34. Il menù principale durante il funzionamento interattivo di UniFlash.(1)

uniflash menù principale

Figura 87.35. Il menù {CMOS}.

  Save CMOS data to file
Restore CMOS data from file
      Clear CMOS date
  Restore backup CMOS data
  
    « Back to main menu

Figura 87.36. Il menù {ADVANCED}.

Flash BIOS image WITHOUT bootblock
     Write boot block to file
   Flash bootblock to Flash ROM
  
       « Back to main menu

Tabella 87.37. Alcune opzioni.

Opzione Descrizione
-H
-?
Mostra la guida rapida all'uso del programma.
-E file
Sovrascrive la memoria «flash» con il contenuto del file indicato, senza fare alcuna richiesta di conferma.
-LOG
Registra le operazioni eseguite nel file UNIFLASH.LOG.
-MONO
Serve per l'uso interattivo, allo scopo di non usare i colori, nel caso lo schermo non consenta una visualizzazione soddisfacente.
-CHIPLIST
Mostra l'elenco degli integrati di memoria che sono gestiti dal programma.
-SAVE file
Salva una copia del BIOS nel file indicato.
-CMOSS file
Salva una copia della memoria CMOS nel file indicato.
-CMOSR file
Recupera una copia della memoria CMOS dal file indicato.

87.6   Recupero disperato di un BIOS

È possibile danneggiare il BIOS attraverso un'operazione di aggiornamento che fallisce, oppure sovrascrivendo dei dati errati o inadatti, ma oltre al questo, anche un virus (come qualunque altro tipo di programma malizioso) che ottenga dal sistema operativo i privilegi necessari, potrebbe cancellare o alterare la memoria del BIOS.

Danneggiare il BIOS significa perdere l'uso della scheda madre. Se ne vale la pena, a pagamento, si può chiedere aiuto al venditore per ottenere una copia del BIOS su un altro integrato, o sullo stesso integrato che è stato cancellato o modificato incautamente. Ci sono anche aziende specializzate che offrono un servizio di ripristino del BIOS a pagamento (per esempio <http://www.jumperz.de>). In alternativa, se si dispone di una scheda madre identica, si può valutare la possibilità di fare una copia in casa: attraverso gli strumenti appropriati alla scheda madre, si deve fare una copia del BIOS funzionante, quindi, con la scheda madre in funzione, occorre estrarre l'integrato buono e sostituirlo con quello da riprogrammare, per poi sovrascrivergli la copia del BIOS precedente.

Questo procedimento, noto come hot-flash, è molto rischioso, perché l'estrazione dell'integrato a scheda accesa, implica il pericolo di creare qualche corto circuito nel momento dell'intervento; inoltre, l'inserimento dell'integrato da riprogrammare, deve avvenire in modo esatto, perché invertendo l'orientamento lo si distrugge, a causa dell'alimentazione che giunge nei piedini sbagliati.

Disponendo di software appropriato, come potrebbe essere UniFlash, l'operazione di scrittura del BIOS a caldo può essere fatta anche con una scheda madre differente, purché utilizzi lo stesso integrato di memoria.

Non è il caso di elencare quali difficoltà si creano; è evidente che per una cosa del genere occorre esperienza e l'accettazione totale del rischio di danneggiare anche la scheda madre che ancora risulta funzionante. Pertanto, il procedimento viene menzionato in questa sezione, solo come idea, che però non è mai stata verificata in pratica dall'autore.

87.7   Riferimenti

Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>


1) Questa immagine è di dominio pubblico ed è stata ottenuta da Borg Number One's - BIOS Pages, <http://bnobtc.pix-art.com/>.

2) UniFlash   GNU GPL


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome introduzione_al_bios.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]

Valid ISO-HTML!

CSS validator!