Inhaltsverzeichnis
1. Interrupt-Anforderungsphase
1.1 Interrupt-Anforderungsauslöser
1.2 Interrupt-Freigabe-Flip-Flop
Die CPU kann jeweils nur eine Anfrage von einer Interrupt-Quelle annehmen. Wenn mehrere Interrupt-Quellen gleichzeitig Interrupt-Anfragen an die CPU stellen, muss die CPU die Interrupt-Quelle finden die höchste Interrupt-Priorität. Dieser Vorgang wird als Interrupt-Arbitrierung bezeichnet.
Nachdem die CPU eine Interrupt-Anforderung erkannt hat, liest sie zunächst den Inhalt des Interrupt-Anforderungsregisters und erkennt deren Status Bit für Bit. Wenn festgestellt wird, dass ein bestimmtes Bit 1 ist, wird dies festgestellt Die entsprechende Interrupt-Quelle hat eine Interrupt-Anfrage und eine Übertragung zur Ausführung ihrer Interrupt-Service-Routine. Diejenige, die zuerst erkannt wird, hat eine höhere Priorität, diejenige, die später erkannt wird, hat eine niedrigere Priorität. Die Reihenfolge der Erkennung ist die Prioritätsreihenfolge jeder Interrupt-Quelle.
Verwenden Sie spezielle Hardware-Schaltkreise, um die Priorität von Interrupt-Quellen zu bestimmen. Es gibt zwei gängige Methoden: Daisy-Chain-Arbitrierungsschaltung und Interrupt-Controller-Arbitrierung.
3. Interrupt-Antwortphase
Die allgemeine Struktur des Unterbrechungsdienstprogramms ist:
Kehren Sie zum Haltepunkt des ursprünglichen Programms zurück, stellen Sie die Hardware-Site wieder her und führen Sie das ursprüngliche Programm weiter aus.
Heim häufiges Problem Was sind die fünf Phasen der Interrupt-Behandlung?

Was sind die fünf Phasen der Interrupt-Behandlung?

Apr 14, 2021 pm 04:06 PM

Fünf Phasen des Interrupt-Verarbeitungsprozesses: 1. Interrupt-Anforderungsphase 2. Interrupt-Arbitrierungsphase, es gibt zwei Methoden der Hardware-Arbitrierung und der Software-Arbitrierung 3. Interrupt-Antwortphase, die CPU sendet ein Interrupt-Antwortsignal an die Interrupt-Quelle 4. Unterbrechen Sie die Servicephase. 5. Unterbrechen Sie die Rückkehrphase, kehren Sie zum Haltepunkt des ursprünglichen Programms zurück, stellen Sie die Hardware-Site wieder her und führen Sie die Ausführung des ursprünglichen Programms fort.

Was sind die fünf Phasen der Interrupt-Behandlung?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.

Der grundlegende Prozess der Interrupt-Verarbeitung umfasst fünf Phasen, darunter Interrupt-Anfrage, Interrupt-Schiedsgerichtsbarkeit, Interrupt-Antwort, Interrupt-Dienst und Interrupt-Rückgabe.

1. Interrupt-Anforderungsphase


1) Interrupts, die innerhalb der CPU auftreten (interner Interrupt), erfordern keine Interrupt-Anforderungen und die Interrupt-Steuerlogik in der CPU empfängt und verarbeitet sie direkt.

2) Externer Interrupt Die Anforderung wird von der Interrupt-Quelle gestellt. Die externe Interrupt-Quelle verwendet den Interrupt-Eingangspin der CPU, um ein Interrupt-Anforderungssignal einzugeben. Im Allgemeinen verfügt die CPU über zwei Interrupt-Anforderungseingangspins: einen maskierbaren Interrupt-Anforderungseingangspin und einen nicht maskierbaren Interrupt-Anforderungseingangspin.

1.1 Interrupt-Anforderungsauslöser

Der Zeitpunkt, zu dem jede Interrupt-Quelle ein Interrupt-Anforderungssignal sendet, ist ungewiss, und auch der Zeitpunkt, zu dem die CPU auf den Interrupt reagiert, ist ungewiss. Daher verfügt jede Interrupt-Quelle über ein Interrupt-Anforderungs-Flip-Flop, das sein eigenes Interrupt-Anforderungssignal zwischenspeichert und hält, bis die CPU auf die Interrupt-Anforderung antwortet, bevor sie sie löscht.

1.2 Interrupt-Freigabe-Flip-Flop

Es gibt ein Interrupt-Freigabe-Flip-Flop in der CPU. Wenn es „1“ ist, darf die CPU auf Interrupts reagieren, was als „on interrupt“ bezeichnet wird. Wenn es „0“ ist, darf die CPU nicht auf Interrupts reagieren und die Interrupts werden blockiert, was als „Off-Interrupts“ bezeichnet wird. %%Normalerweise wird beim Zurücksetzen der CPU auch das Interrupt-Freigabe-Flip-Flop auf „0“ zurückgesetzt, was bedeutet, dass Interrupts ausgeschaltet sind. Wenn der CPU-Interrupt reagiert, schaltet die CPU den Interrupt automatisch aus und darf keinen weiteren neuen Interrupt akzeptieren. %%Der Status des Interrupt-Aktivierungstriggers kann mithilfe der Interrupt-Ein- oder Aus-Anweisung festgelegt werden.

2. Interrupt-Vermittlungsphase

Die CPU kann jeweils nur eine Anfrage von einer Interrupt-Quelle annehmen. Wenn mehrere Interrupt-Quellen gleichzeitig Interrupt-Anfragen an die CPU stellen, muss die CPU die Interrupt-Quelle finden die höchste Interrupt-Priorität. Dieser Vorgang wird als Interrupt-Arbitrierung bezeichnet.

Die Interrupt-Schiedsgerichtsbarkeit kann Hardware-Methoden oder Software-Methoden verwenden.

2.1 Software-Schiedsgerichtsbarkeit

Nachdem die CPU eine Interrupt-Anforderung erkannt hat, liest sie zunächst den Inhalt des Interrupt-Anforderungsregisters und erkennt deren Status Bit für Bit. Wenn festgestellt wird, dass ein bestimmtes Bit 1 ist, wird dies festgestellt Die entsprechende Interrupt-Quelle hat eine Interrupt-Anfrage und eine Übertragung zur Ausführung ihrer Interrupt-Service-Routine. Diejenige, die zuerst erkannt wird, hat eine höhere Priorität, diejenige, die später erkannt wird, hat eine niedrigere Priorität. Die Reihenfolge der Erkennung ist die Prioritätsreihenfolge jeder Interrupt-Quelle.

Angenommen, die Eingangsportadresse im obigen Bild ist 87FFH. Es gibt das folgende Abfrageprogramm:

Was sind die fünf Phasen der Interrupt-Behandlung?MOV DX, 87FFH
IN AL, DX; Inhalt des Interrupt-Request-Registers lesen
SHR AL, 1

JC IR0; IRQ0 hat eine Anfrage, Übertragung an IR0

SHR AL, 1
JC IR1; IRQ1 hat eine Anfrage, Weitergabe an IR1
SHR AL,1
JC IRQ2 hat eine Anfrage, Weitergabe an IR2
...

Die Software-Entscheidungsfindung dauert lange. Wenn es viele Interrupt-Quellen gibt, ist die Echtzeitleistung der Interrupts schlecht, aber die Software-Prioritätsanordnung ist flexibel.


2.2 Hardware-Arbitrierung

Verwenden Sie spezielle Hardware-Schaltkreise, um die Priorität von Interrupt-Quellen zu bestimmen. Es gibt zwei gängige Methoden: Daisy-Chain-Arbitrierungsschaltung und Interrupt-Controller-Arbitrierung.

2.2.1 Daisy-Chain-Arbitrierungsschaltung

Designidee: Jede Interrupt-Quelle verfügt über eine Interrupt-Logikschaltung, und alle Interrupt-Logikschaltungen bilden eine Kette, wie eine Daisy-Chain. Die Interrupt-Quelle am Anfang der Kette hat die höchste Priorität, und je weiter hinten das Gerät liegt, desto niedriger ist die Priorität.

Implementierungsprozess:
Die CPU empfängt eine Interrupt-Anfrage. Wenn der Interrupt zulässig ist, sendet die CPU ein Interrupt-Antwortsignal. Das Interrupt-Antwortsignal erreicht zuerst das vordere Ende der Daisy-Chain. Wenn Interrupt-Quelle 1 eine Interrupt-Anfrage stellt, fängt sie das Interrupt-Antwortsignal ab und blockiert es, sodass es nicht an die nächste Interrupt-Quelle übertragen werden kann. Unabhängig davon, ob die folgenden Interrupt-Quellen Interrupt-Anfragen ausgelöst haben, ist es unmöglich, Interrupt-Antwortsignale zu empfangen, sodass auf ihre Interrupt-Anfragen nicht reagiert werden kann. Was sind die fünf Phasen der Interrupt-Behandlung?
2.2.2 Interrupt-Controller-Arbitrierung

Interrupt-Controller wie Intel8259A können die Interrupt-Priorität von Interrupt-Quellen auf verschiedene Weise festlegen. Im Interrupt-Controller gibt es einen Interrupt-Prioritätsdiskriminator, der automatisch die Interrupt-Quelle mit der höchsten Priorität ermittelt und ihren Interrupt-Vektorcode an den Datenbus sendet. Die CPU empfängt den Interrupt-Vektorcode und findet ihn entsprechend .

3. Interrupt-Antwortphase


Nach der Interrupt-Arbitrierung tritt die Interrupt-Verarbeitung in die Interrupt-Antwortphase ein. Bei der Reaktion auf einen Interrupt sendet die CPU ein Interrupt-Antwortsignal an die Interrupt-Quelle und

① schützt die Hardware-Site;

③ schützt Breakpoints; Adresse des Interrupt-Service-Programms.

4. Unterbrechungsdienstphase

Die allgemeine Struktur des Unterbrechungsdienstprogramms ist:

1)
Schützen Sie den Standort.

Ordnen Sie am Anfang der Interrupt-Serviceroutine mehrere Push-Anweisungen an, um den Inhalt jedes Registers zur Speicherung auf den Stapel zu verschieben.

2)Unterbrechung aktivieren. Während der Ausführung der Interrupt-Serviceroutine dürfen Interrupt-Anforderungen höherer Ebenen die aktuelle Interrupt-Serviceroutine unterbrechen, um eine Interrupt-Verschachtelung zu erreichen.

3)Dienstunterbrechung. Vervollständigen Sie die spezifischen Anforderungen für Interrupt-Quellen.

4)Stellen Sie die Szene wieder her. Bevor die Interrupt-Serviceroutine endet, muss die Interrupt-Szene des Hauptprogramms wiederhergestellt werden. Normalerweise werden die im Stapel gespeicherten lokalen Informationen in das Originalregister eingefügt.

5)Rückkehr unterbrechen. Kehren Sie zum Haltepunkt des Originalprogramms zurück und fahren Sie mit der Ausführung des Originalprogramms fort.

5. Rückkehrphase unterbrechen

Kehren Sie zum Haltepunkt des ursprünglichen Programms zurück, stellen Sie die Hardware-Site wieder her und führen Sie das ursprüngliche Programm weiter aus.


Der Interrupt-Return-Vorgang ist der umgekehrte Vorgang des Interrupt-Response-Vorgangs.

Weitere Programmierkenntnisse finden Sie unter: Programmiervideo
! !

Das obige ist der detaillierte Inhalt vonWas sind die fünf Phasen der Interrupt-Behandlung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Eingehende Suche in Deepseek Offizieller Website Eingang Eingehende Suche in Deepseek Offizieller Website Eingang Mar 12, 2025 pm 01:33 PM

Zu Beginn des Jahres 2025 gab die inländische KI "Deepseek" ein atemberaubendes Debüt! Dieses kostenlose und Open-Source-KI-Modell verfügt über eine Leistung, die mit der offiziellen Version von OpenAI von O1 vergleichbar ist, und wurde vollständig auf Webseite, App und API gestartet, wobei die multi-terminale Verwendung von iOS-, Android- und Webversionen unterstützt wird. Eingehende Suche nach Deepseek Official Website und Nutzungsleitfaden: Offizielle Website-Adresse: https://www.deepseek.com/using-Schritte für Webversion: Klicken Sie auf den obigen Link, um die offizielle Website der Deepseek einzugeben. Klicken Sie auf der Homepage auf die Schaltfläche "Konversation starten". Für die erste Verwendung müssen Sie sich mit Ihrem Mobiltelefonverifizierungscode anmelden. Nach dem Anmeldung können Sie die Dialog -Schnittstelle eingeben. Deepseek ist leistungsfähig, kann Code schreiben, Datei lesen und Code erstellen

Deepseek Web Version Offizieller Eingang Deepseek Web Version Offizieller Eingang Mar 12, 2025 pm 01:42 PM

Das inländische AI ​​Dark Horse Deepseek ist stark gestiegen und schockiert die globale KI -Industrie! Dieses chinesische Unternehmen für künstliche Intelligenz, das nur seit anderthalb Jahren gegründet wurde, hat von globalen Nutzern für seine kostenlosen und Open-Source-Modelle Deepseek-V3 und Deepseek-R1 ein breites Lob erhalten. Deepseek-R1 ist jetzt vollständig gestartet, wobei die Leistung mit der offiziellen Version von Openaio1 vergleichbar ist! Sie können seine leistungsstarken Funktionen auf der Webseite, der App und der API -Schnittstelle erleben. Download -Methode: Unterstützt iOS- und Android -Systeme können Benutzer sie über den App Store herunterladen. Deepseek Web Version Offizieller Eingang: HT

So lösen Sie das Problem vielbeschäftigter Server für Deepseek So lösen Sie das Problem vielbeschäftigter Server für Deepseek Mar 12, 2025 pm 01:39 PM

Deepseek: Wie kann man mit der beliebten KI umgehen, die von Servern überlastet ist? Als heiße KI im Jahr 2025 ist Deepseek frei und Open Source und hat eine Leistung, die mit der offiziellen Version von OpenAio1 vergleichbar ist, die seine Popularität zeigt. Eine hohe Parallelität bringt jedoch auch das Problem der Serververantwortung. Dieser Artikel wird die Gründe analysieren und Bewältigungsstrategien bereitstellen. Eingang der Deepseek -Webversion: https://www.deepseek.com/deepseek Server Beschäftigter Grund: Hoher Zugriff: Deepseeks kostenlose und leistungsstarke Funktionen ziehen eine große Anzahl von Benutzern an, die gleichzeitig verwendet werden können, was zu einer übermäßigen Last von Server führt. Cyber ​​-Angriff: Es wird berichtet, dass Deepseek Auswirkungen auf die US -Finanzbranche hat.