Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenSamstag, 25. Mai 2013 

Interrupt Request


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.
IRQ ist eine Abkürzung aus dem Computerbereich und bedeutet I nterrupt R e q uest. Auf Deutsch kann man es als Unterbrechungsanforderung bezeichnen.

Varianten des IRQs sind NMI - N on M askable I nterrupt und RST - R e s e t .

Ein Interrupt ist ein Signal meist von einem externen Gerät mit dem der Prozessor aufgefordert wird den aktuellen Programmablauf anzuhalten unterbrechen) und eine sog. Interrupt-Service-Routine aufzurufen.

Durch spezielle Einstellungen kann verhindert werden die CPU auf einen IRQ reagiert. Dies z.B. dann sinnvoll wenn gerade ein IRQ wird. Diese Maskierung kann nur für IRQ vorgenommen werden NMI (Non Maskable Interrupt) können demnach nicht werden. RST sind spezielle Interrupt-Signale (ebenfalls nicht-maskierbar) die CPU auch in einen definierten Zustand können bzw. die Verarbeitung an einer fest Speicheradresse (neu) starten.

Je nach Type der CPU können dieser nur einer oder mehrere einander unterscheidbare IRQ gemeldet werden. Mit einem ist eine Service-Routine verbunden diese kann dann sofort die entsprechende Aktion durchführen oder (wie den IBM-kompatible PC's) muss erst ermitteln welches die Unterbrechung engefordert hat und kann dann die Verarbeitung beginnen.

Die Zeit zwischen dem anlegen des und dem Beginn der entsprechenden Verabeitung nennt auch Latenzzeit . Man spricht im Zusammenhang mit Realtime Echtzeit -Betriebssystem davon dass diese Latenzzeit immer kleiner als ein definierter Wertes bleibt wie gross/klein dieser Wert ist und egal die CPU gerade macht).

IBM-kompatible PC's

In normalen handelsüblichen (=IBM-kompatiblen) PCs gibt es 16 IRQs. Diese 16 werden verschiedenen Peripheriegeräten und Steckkarten zugewiesen um eindeutige Verwaltung derselben zu ermöglichen.

Über den IRQ-Kanal stehen Adapter Karten und Teile der Peripherie eines mit der CPU in Verbindung.

Mit einem IRQ wird dem Prozessor dass ein externes Gerät eine bestimmte Aktion möchte. Dies geschieht über so genannte Interrupt-Leitungen. ein Interrupt am Controller anliegt ermittelt dieser Ursprung und teilt diesen der CPU mit. CPU kann dann die jeweilige gerätespezifische Aktion

Ein solcher PIC (programmable interrupt controller) 8 Leitungen wurde in die ersten PCs Allerdings reichte der sehr bald schon nicht aus aber statt einen größeren zu bauen man (und verwendet bis heute) einfach zwei die auf besondere Art und Weise hintereinander sind:

 PIC 1 (Master) +--------------+ PIC 2 | IRQ 0 | +-------------+ | IRQ | | IRQ 8 | | IRQ +--------+ IRQ 9 | | IRQ 3 | IRQ 10 | | IRQ 4 | IRQ 11 | | IRQ 5 | IRQ 12 | | IRQ 6 | IRQ 13 | | IRQ 7 | IRQ 14 | +------+-------+ | IRQ | | +-------------+ | +----- Steuerbus  

Über den Steuerbus wird eine IRQ-Meldung den Prozessor weitergeleitet.

Die Reihenfolge wann ein IRQ und "sein" Gerät "dran" sind (ein Prozessor kann schließlich immer nur eins auf einmal machen) durch die Position des IRQ bestimmt. Durch Art der Schaltung sieht die Reihenfolge so

0 1 (2) 8 9 10 12 13 14 15 3 4 5 7.

Der IRQ 2 wird selbst nicht er ist die "Durchreiche" für die IRQs zweiten PIC (Fachsprache: Kaskade man spricht bei Funktionsweise von Kaskadierung des PIC).

Belegen zwei Geräte die selbe Leitung es zu Fehlfunktionen kommen. Bei einigen Betriebssystemen welchen man die IRQs frei wählen kann es jedoch auch das IRQ-Sharing (to share teilen): Zwei Geräte teilen sich einen IRQ. Sie dürfen nicht zeitgleich betrieben werden sonst Datensalat.

Bei neueren Peripheriegeräten kümmern sich der und das Betriebssystem selbst um die Vergabe IRQ-Nummern ( PnP = Plug-and-Play-Geräte). Bei alten Steckkarten z.B. ISA -Karten müssen die IRQs von Hand eingestellt

Unter Linux kann man die Interrupts mit folgendem abfragen: cat /proc/interrupts

IRQ-Geräte-Tabelle # (Diese Liste kann sich manchen Geräten anders darstellen)

  • 0: Timer
  • 1: Tastatur
  • 2: umgeleitet auf IRQ 9
  • 3: Serielle Schnittstelle (COM2)
  • 4: Serielle Schnittstelle (COM1)
  • 5: Frei
  • 6: Diskettencontroller
  • 7: Parallele Schnittstelle (LPT1)
  • 8: Echtzeituhr
  • 9: Umleitung von IRQ 2 VGA-Karte
  • 10: Frei
  • 11: Frei
  • 12: Bus-Maus
  • 13: Mathematischer Coprozessor
  • 14: Festplattencontroller
  • 15: Festplattencontroller

Weblinks




Bücher zum Thema Interrupt Request

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/IRQ.html">Interrupt Request </a>