Dentro il Sistema |
AREA COMUNICAZIONE BIOS 2/3 [6 di 52] |
|
Le 4 variabili di sistema
poste da
0000:0478H contengono valori significativi
nel contesto di rapporti tra porta
parallela e stampante:
|
|
Il problema del TimeOut è legato alla capacità della stampante di accettare dati; se sorge qualche problema (per esempio mancanza di carta) l'attesa del computer potrebbe essere protratta all'infinito. Tutti i programmi che gestiscono una stampante devono eseguire un controllo di TimeOut, per fissare un tempo massimo d'attesa. | |
Nel progetto dei tempi di attesa non bisogna dimenticare che la stampante è una periferica lenta, per cui bisogna lasciarle il tempo di scaricare tutti i suoi dati sulla carta prima di interrompere il collegamento. |
|
Il valore numerico presente in queste locazioni rappresenta, per ciascuna delle porte parallele presenti nel sistema, un numero proporzionale ai tentativi di invio dati da eseguire in attesa che la stampante si renda disponibile prima di decidere che non c'è più niente da fare... |
|
Subito dopo l'accensione del computer la procedura POST scrive in queste locazioni il valore 20; nei primi computer (PC XT) tale numero poteva essere ancora inteso come tempo in secondi da attendere (ritenendo di consumare circa un secondo per ogni tentativo) | |
L'avvento di computer veloci (AT, ATX) ha ridicolizzato questo numero per cui, per poter disporre di un tempo paragonabile ai 20 secondi, è stato necessario moltiplicarlo per una costante piuttosto grande. |
|
Questo compito è assolto dal BIOS che moltiplica il numero 20 per una costante pari a n volte il numero massimo contenibile in un registro a 16 bit, cioè 65535; è facile rendersi conto che questa costante dovrà essere tanto più grande quanto più veloci sono i microprocessori. | |
Il BIOS è in grado di valutare il fattore moltiplicativo n in funzione della velocità del processore con cui collaborerà;con n=4 la costante è uguale a 262140; con n=8 (adatto ai nostri ATX veloci) la costante vale il doppio, 524280. |
|
La scelta di modificare a livello BIOS questa costante invece di aumentare il numero 20 contenuto nelle variabili di sistema, è facile da capire se si considera che la dimensione di byte delle locazioni che ospitano il numero 20 ne consentirebbe l'aumento solo fino a 255, del tutto inadeguato a soddisfare la folle corsa delle velocità dei processori. |
|
In conclusione, con una costante pari a 262140 il processore esegue più di 5 milioni di tentativi di scrittura prima di desistere, segnalando l'errore. |
|
In caso di difficoltà di collegamento il
processore ripete ad intervalli regolari il tentativo di trasmissione di
caratteri fino a quando il bit0
del
Registro di Stato
assume il valore 1 (errore di TimeOut);
in questo caso può risalire alle
cause del mancato successo analizzando gli altri bit del medesimo registro;
in particolare:
|
|
Stampanti | AREA COMUNICAZIONE BIOS 2/3 | |||||||
6 di 52 |
|
|
Home |
|
|||||||
|
Motore Ricerca |
|