|
Dentro il Sistema |
AREA COMUNICAZIONE BIOS 1/4 [7 di 189] |
|
Il Sistema Operativo e i nostri programmi sono sempre in grado di conoscere il numero di porte parallele presenti nel sistema, consultando le variabili di sistema caricate dal BIOS nelle fasi preliminari che seguono l'accensione del computer. |
|
Non appena il nostro
computer viene acceso il
processore è obbligato a saltare
alla locazione FFFF0H
posto nella memoria BIOS
ospitata dalla scheda madre; da questo indirizzo mette in esecuzione
la
procedura di POST (Power-On-Self-Test).
Il compito di questa procedura è quello di verificare lo stato del
computer, ispezionando con meticolosità ogni dispositivo disponibile (tra
cui le eventuali porte parallele) e annotando tutto in una zona
RAM riservata di grande importanza, detta
Area di Comunicazione BIOS,
di solito allocata nelle prime 260 (circa) locazioni della Ram
convenzionale, certamente a
partire dall'indirizzo 00400H . Tra l'altro la procedura POST provvede a scrivere il valore 1234H nella locazione 00472H (detta Reset State Flag) per evitare di ripetere l'indagine in caso di ripartenza a caldo (warm boot), cioè dopo un reset software prodotto dalla pressione simultanea dei tasti Ctrl-Alt-Del |
|
Naturalmente non c'è niente di magico: la procedura POST riconosce la presenza dei circuiti di una porta parallela semplicemente cercando di scrivere nei suoi Registri; è quindi necessario conoscere l'indirizzo di I/O di ciascuna di esse. | ||||||||
Il Sistema riserva, per le porte parallele,
3 intervalli di 8 indirizzi
di I/O ciascuno, cioè ne riconosce
solo fino a 3:
|
|
La procedura POST verifica la presenza delle porte parallele applicando in stretta sequenza i 3 intervalli di indirizzi di I/O della tabella; al primo gruppo trovato viene associato il numero 0, al secondo il numero 1, e così via. | |
La prova consiste nello scrivere il byte 0AAH nel primo indirizzo di ciascuna serie, leggendolo di ritorno dal medesimo indirizzo; naturalmente solo se il dato ricevuto è ancora 0AAH la porta è presente nel sistema. | |
Da notare che la particolare scelta rende minime le probabilità d'errore: 0AAH è infatti 10101010 in binario, una alternanza di bit altamente improbabile. |
|
In seguito il DOS riconosce la porta 0 come LPT1, la 1 come LPT2, e così via... |
Un tempo ormai remoto era possibile trovare una porta parallela tra i circuiti della scheda grafica; si tratta di antichissime schede monocromatiche, come la MDA (Monochrome Display Adapter) o la gloriosa HGC (Hercules Graphics Card). Alle porte di questo strano connubio sono associati gli indirizzi della prima serie, per cui 03BCH ÷ 03BFH sono address di I/O praticamente non più utilizzati. | |
Oggi la porta parallela è, di norma, integrata nella scheda madre; poiché l'indagine sul primo gruppo di indirizzi non può dare esito positivo, sarà certamente il secondo (0378H ÷ 037FH) ad essere associato alla porta0 (per il BIOS) o LPT1 (per il DOS). | |
In ogni caso possiamo notare che il primo range prevede solo 4 indirizzi, mentre gli altri 2 ne prevedono 8; ciononostante sono di norma utilizzati solo i primi 3 indirizzi di ciascun gruppo (03BCH, 03BDH, 03BEH o 0378H, 0379H, 037AH o 0278H, 0279H, 027AH). |
|
Porta Parallela | AREA COMUNICAZIONE BIOS 1/4 | |||||||
7 di 189 |
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|