Capacitățile programului de depanare AFD vă permit să monitorizați elementele de memorie, controlorii de dispozitiv extern și dispozitivele externe. Debuggerul include rutine care sunt executate de comenzi de debugger care pot fi folosite pentru a determina starea controlorilor de dispozitiv extern și disponibilitatea porturilor lor I / O. Cu ajutorul depanatorului puteți crea și utiliza programe, fără de care nu puteți ajunge la cauza problemei.
Pentru o muncă competentă cu depanatorul "AFD" și folosirea tuturor capabilităților sale potențiale, desigur, este necesară formarea teoretică și practică adecvată, care face obiectul părții inițiale a acestui articol. Aceste informații vor fi utile în multe situații de reparații ale calculatorului.
DMA I / O programabil
Dispozitivele externe sunt conectate la interfața sistemului prin intermediul dispozitivelor speciale - controlor (adaptor). Fiecare controler are un număr de registre programabile (cel puțin are cel puțin un registru de date, un registru de stare și un registru de control).
Fiecare controler are propriul set de comenzi. După ce a primit, prin intermediul registrelor sale, o comandă de la procesor care execută programul I / O, controlerul execută comanda autonom, controlând dispozitivul extern printr-o interfață mică între dispozitiv și controler. Controlorul, care execută comanda primită de la procesor, îi transmite comenzile, datele și citirile către dispozitivul extern de la dispozitivul de stare. În plus, controlerul poate efectua un număr de funcții hardware auxiliare inițiate de semnalele hardware sau prin scrierea de informații de control în registrul accesibil pentru software (de exemplu, "RESET" prin semnalul RESET sau activarea procesului de autodiagnosticare a discului dur). Există controale simple și controale mai complexe (inteligente) care execută funcții și comenzi hardware mai complexe.
Procesorul controlează dispozitivul extern executând programul I / O corespunzător, unde utilizează comenzi IN. OUT (port de citire, scriere în port) oferă acces la registrele accesibile de program ale controlerului. De exemplu, în registrul de control, procesorul scrie o comandă, citește informații de stare din registrul de stare din registrul de stare, scrie date în registrul de date în registrul de date sau citește datele citite din registrul de date din registrul de date.