|
Capitolo – 8
Funzioni ed interruzioni di Disc-ESSERE VIVENTE che maneggiano con la C
Introduzione
In questo capitolo discuteremo le funzioni importanti di Disc-ESSERE VIVENTE ed altre funzioni importanti che ci danno la libertà agli usi e maneggiano le interruzioni nel nostro programma con la C, con il metodo facile e corto. Queste funzioni sono la parte posteriore - osso del recupero di dati e della programmazione d'analisi guasti del disc. Queste sono le funzioni che rendono al linguaggio C "un linguaggio Assembler ad alto livello".
funzioni del _bios_disk e del biosdisk
Queste due funzioni sono la funzione più importante per il nostro scopo del recupero di dati e di programmazione d'analisi guasti del disc. Useremo queste funzioni più del tempo.
Questi due sono i servizi dell'azionatore del disco di ESSERE VIVENTE e sono stati definiti in bios.h dove il biosdisk funziona sotto il livello delle lime sui settori grezzi. Se queste funzioni sono usate anche in una mancanza piccola della punta di cura, può distruggere il soddisfare e gli indici della lima su un disco rigido. Sia funzioni del _bios_disk che del biosdisk, interruzione 0x13 di uso per pubblicare i funzionamenti del disc direttamente all'ESSERE VIVENTE. La funzione del _bios_disk è dichiarata nel programma nel seguente modo:
unsigned _bios_disk(unsigned cmd, struct diskinfo_t *dinfo);
E la dichiarazione per la funzione del disc di essere vivente è come segue:
int biosdisk(int cmd, int drive, int head, int track,
int sector, int nsects, void *buffer);
Il significato di questi parametri è stato descritto nella seguente tabella:
Parametro |
Funzione |
Che cosa è o che cosa |
cmd |
Entrambi |
Indica il funzionamento per effettuare come colto, scrivono, verificano ecc. (vedere la descrizione di cmd, data dopo) |
dinfo |
_bios_disk |
I punti ad un diskinfo_t strutturano che contiene il restante
Parametri richiesti tramite il funzionamento. (vedere la descrizione della struttura del diskinfo_t, data dopo) |
guidare |
biosdisk |
Specifica quale azionatore del disco deve essere usato (0 per la a: , 1for b: e 0x80 per il primo disco rigido fisico, 0x81 per il secondo e così via.) |
testa
pista
settore |
biosdisk
|
Questi specificano la posizione di settore cominciante da cui
Il funzionamento deve essere cominciato. |
nsects |
biosdisk |
Il numero di settori da leggere, scrive, verifica ecc. |
amplificatore |
biosdisk |
Indirizzo di memoria dove i dati devono essere letti o scritti |
|
|