Procesarea întrerupere

După finalizarea dispozitivului de intrare-ieșire, se întâmplă următoarele:

De îndată ce contorul de program este încărcat cu o nouă valoare, procesorul trece la următorul ciclu al echipei, începe să-l elimina din memorie. Deoarece comanda este extrasă din celulă, al cărui număr este definit de conținutul contorului de program, controlul trece la rutina de întrerupere. Executarea acestui program presupune următoarele operațiuni.

6. Conținutul programului contra program și cuvântul de stare întrerupt este deja stocat în stiva de sistem. În acest caz, nu este toate informațiile referitoare la starea programului executabil. De exemplu, necesitatea de a salva conținutul registrelor CPU, deoarece registrele pot ponuzhnobitsya handler de întrerupere. Din acest motiv, este important să se păstreze toate informațiile despre starea programului.

7. Acum, rutina de tratare a întreruperii poate începe activitatea. Procesul de întrerupere este de a verifica informațiile de stare referitoare la operațiunile de intrări-ieșiri, sau alte evenimente care au provocat întreruperea. Aceasta ar putea include, de asemenea, dispozitive de transfer IO instrucțiuni suplimentare sau mesaje de notificare.

8. După procesarea teancului de întrerupere este recuperat valori care recent înscrise în registre, reînnoindu-se astfel starea în care au fost înainte de întrerupere (Figura 1.6, b) stocat anterior.

9. Ultima etapă - restaurarea programului stivă de stare cuvânt și conținutul programului contra. Ca urmare, următoarea comandă este program întrerupt se va efectua.

Datorită faptului că subrutina de întrerupere nu este numit de la program pentru o recuperare completă este importantă pentru a păstra toate informațiile starea de program întrerupt. În acest caz, o întrerupere poate avea loc în orice moment și oriunde în programul de utilizator. Acest eveniment este imprevizibil.

a se vedea, de asemenea,

De bază ciclu de operare pe calculator, toate activitățile de calculator - este o execuție continuă a programelor, care la rândul lor pot descărca noi programe, etc. Fiecare program este format din instrucțiuni individuale ale mașinii. Fiecare instrucțiune mașină, în lucrarea sa. [Citește mai mult].

Rebobinat si de captare rebobinat dispozitiv - un mecanism care să combine funcționarea efectivă de intrare-ieșire a unui loc de muncă, cu îndeplinirea altor sarcini. Cuvântul va fi înțeles tampon mosor care conține intrare sau de ieșire dispozitiv pe care. [Citește mai mult].

întreruperi externe (hardware asincron) Întreruperi de întrerupere internă (sincron software-ul de întrerupere) programabil de întrerupere în proces, este în stare de funcționare, este necesar să se întrerupă. [Citește mai mult].

microprocesoare de tip X86 au două cereri de intrări de la hardware-ul extern întrerupe: NMI - NMI este folosit în general pentru cererile de întrerupere a puterii de întrerupere; INT - cerere de întrerupere mascat la care puteți programatic deghizare. [Citește mai mult].

întrerupere de apel are loc fie la solicitarea dispozitivul extern la una dintre intrări de întrerupere (IRQ3-0), sau în cazul unui eveniment intern, cum ar fi o stivă de preaplin, întrerupe timer, întrerupe utilizatorul. Întrerupere conduce la transmisie. [Citește mai mult].

Pentru a efectua operațiuni de sistem (de exemplu, de intrare, de ieșire), în plus față de manipularea registrele de întrerupere sunt efectuate pentru a asigura suspendarea punerii în aplicare a capului de program. În limbajul C, pentru că are următoarele caracteristici. Deoarece funcția. [Citește mai mult].

Executarea programului principal poate fi, uneori, suspendat pentru o acțiune imediată, cum ar fi cele asociate cu un raspuns la un click de mouse sau o defecțiune în circuitul de alimentare. Acest mod de funcționare, atunci când a suspendat temporar punerea în aplicare a programului principal. [Citește mai mult].

Pentru a efectua operațiuni de sistem (de exemplu, de intrare, de ieșire), în plus față de manipularea registrele de întrerupere sunt efectuate pentru a asigura suspendarea punerii în aplicare a capului de program. În limbajul C, pentru că are următoarele caracteristici. Deoarece funcția. [Citește mai mult].

Executarea programului principal poate fi, uneori, suspendat pentru o acțiune imediată, cum ar fi cele asociate cu un raspuns la un click de mouse sau o defecțiune în circuitul de alimentare. Acest mod de funcționare, atunci când a suspendat temporar punerea în aplicare a programului principal. [Citește mai mult].

procesarea întreruperii constă din trei etape: 1) Pregătirea cererii de întrerupere. Suspendarea programului principal este solicitat de software sau hardware. În cazul în care Maskable întrerupe, bitul corespunzător din steagurile înregistrați. [Citește mai mult].

articole similare