Da der Prozessor nicht mehrere Informationen gleichzeitig bearbeiten kann (er bearbeitet eine Information auf einmal, Multitasking besteht darin die Anweisungselemente mehrerer Aufgaben abwechselnd zu bearbeiten), kann ein in Ausführung befindliches Programm mit einer Unterbrechung kurzfristig angehalten werden, bis eine Unterbrechungsroutine ausgeführt wird. Das unterbrochene Programm kann anschließend seine Ausführung wieder aufnehmen. Es gibt 256 verschiedene Unterbrechungsadressen.
Eine Unterbrechung wird zu einer materiellen Unterbrechung, wenn sie von einer materiellen Komponente des Computers angefordert wird.
Der Computer besitzt tatsächlich zahlreiche Peripheriegeräte. Diese benötigen meist die Systemressourcen, sei es nur um mit ihm zu kommunizieren...
Wenn diese eine Ressource benötige, schicken sie dem System eine Unterbrechungsanforderung, damit es ihnen seine Aufmerksamkeit schenkt. So besitzen die Peripheriegeräte eine Unterbrechungsnummer,
die man IRQ (Interruption request, was soviel bedeutet wie «Unterbrechungsanforderung») nennt.
Um es bildlich auszudrücken: jedes Peripheriegerät zieht an einer « Schnur» die mit einer Glocke verbunden ist, um dem Computer zu signalisieren,
dass es seine Aufmerksamkeit braucht.
Diese " Schnur" ist in Wirklichkeit eine physische Leitung die den Slot mit dem Motherboardverbindet. Für eine Steckstelle ISA 8 Bit zum Beispiel, gibt es 8 IRQ Leitungen (Interruption Request Line), die den slot 8 Bit mit dem Motherboard, IRQ0 bis IRQ7. Diese IRQ werden durch einen «Unterbrechungskontroller » kontrolliert, der es ermöglicht dem IRQ " das Wort zu erteilen", welcher die höchste Dringlichkeit aufweist. Für die 16 Bit Slots sind die IRQ 8 bis 15 hinzugefügt worden, so dass ein zweiter Unterbrechungskontroller ebenfalls nötig wurde. Die Verbindung zwischen den zwei Unterbrechungsgruppen erfolgt über den IRQ 2 der mit dem IRQ 9 verbunden ist (genannt «Kaskade »). Mit der Kaskade werden die IRQ 8 bis 15 in gewisser Weise zwischen die IRQ 1 und 3 " eingeschoben"
Da die Priorität nach steigender IRQ Reihenfolge gegeben wird, und die IRQ 8 bis 15 zwischen die IRQ 1 und 3 eingeschoben sind, ist die Prioritätsreihenfolge folgende :
0 > 1 > 8 > 9 > 10 > 11 > 12 > 13 > 14 > 15 > 3 > 4 > 5 > 6 > 7
Peripheriegeräte müssen regelmäßig bei dem System " Speicherkapazität ausleihen", da sie diese als Pufferzone (auf Englisch buffer ) brauchen, das heißt eine zeitlich befristete Speicherzone die es ermöglicht schnell Daten als Eingabe oder Ausgabe zu speichern.
Ein direkter Zugangskanal zu dem Speicher, genannt DMA (Direct Memory Access oder direkter Speicherzugriff), ist so definiert worden, um diese Funktion zu erfüllen.
Der DMA Kanal bezeichnet einen Zugang zu einer Speicherstelle des Arbeitsspeichers (RAM) des Computers, welcher durch eine « Startadresse» (oder «RAM Start Adress» auf Englisch) und eine « Endadresse » erkannt wird. Diese Methode erlaubt es einem Peripheriegerät spezielle Kanäle zu benutzen, welche ihm einen direkten Zugang zu dem Speicher garantieren, ohne den Mikroprozessor einzuschalten, um diesen somit, um diese Aufgaben zu entlasten.
Ein Computer des Typs PC besitzt 8 DMA Kanäle.
Die ersten 4 DMA Kanäle besitzen eine Bandbreite von 8 Bit, während die DMA 4 bis 7 über eine Bandbreite von 16 Bit verfügen.
Die DMA Kanäle werden meist wie folgt zugeordnet :
Die Peripheriegeräte müssen manchmal Informationen mit dem System austauschen, daher sind ihnen Speicheradressen für den Versand und den Empfang von Daten zugeordnet. Diese Adressen heißen «Basisadressen» (folgende Begriffe werden ebenfalls manchmal verwendet : «Ein-/ Ausgangsport», «E/A-Ports», «E/A-Adresse», «Adressen der E/A ports», «Basisport», oder auf Englisch I/O address was bedeutet «Input/Output Address», wörtlich übersetzt «Eingangs-Ausgangsadresse»).
Über diese Basisadresse kann das Peripheriegerät mit dem Betriebssystemkommunizieren. Es kann daher nur eine einmalige Basisadresse pro Peripheriegerät geben.
Hier eine Liste einiger gängiger Basisadressen :
Alle diese Elemente sind jedoch für den normalen Benutzer transparent, das heißt, dass er sich darum nicht kümmern muss.
Eine Unterbrechung ist also eine Leitung die ein Peripheriegerät mit dem Prozessor verbindet und sie ist materiell denn sie von einer materiellen Komponente des PCs angefordert wird.
Dies ist der Fall zum Beispiel, wenn eine Taste gedrückt worden ist, und die Tastatur die Aufmerksamkeit des Prozessors auf diesen Vorfall lenken möchte. Aber die 256 Unterbrechungen können nicht alle als
materielle Unterbrechungen gefordert werden. Die verschiedenen Peripheriegeräte fordern immer ganz bestimmte Unterbrechungen.
So muss bei der Installation von Erweiterungskarten, darauf geachtet werden, dass bei der Konfiguration die gleiche Unterbrechung nicht von zwei verschiedenen Peripheriegeräten verwendet wird.
Wenn zwei Peripheriegeräte den gleichen IRQ besitzen, so weiß das System nicht, welchem es sich zuwenden soll ... das System blockiert sich oder funktioniert nicht richtig... dies wird Materialkonflikt genannt. Ein Materialkonflikt entsteht nicht nur wenn zwei Peripheriegeräte die gleiche materielle Unterbrechung besitzen, er kann ebenfalls entstehen wenn zwei Peripheriegeräte die gleiche Ein-/ Ausgangsadresse besitzen, oder den gleichen DMA Kanälen zugeordnet sind.
Der IRQ einer Karte kann also geändert werden, denn es muss ihm eine IRQ-Nummer zugeteilt werden, die nicht von einem anderen Peripheriegerät benutzt wird.
| IRQ | Peripheriegerät |
|---|---|
| 0 | Interne Taktgeber |
| 1 | Tastatur |
| 2 |
Controller der programmierbaren Unterbrechungen
Verweis auf die IRQ 8 bis 15 |
| 3 | Kommunikationsport COM2/COM4 |
| 4 | Kommunikationsport COM1/COM3 |
| 5 | frei |
| 6 | Disketten Controller |
| 7 | Drucker Port LPT1 |
| 8 | CMOS (Uhr für Echtzeit) |
| 9 | frei |
| 10 | frei |
| 11 | frei |
| 12 | Port Maus PS2/frei |
| 13 | Digitaler Datenprozessor
(Mathematischer Coprozessor) |
| 14 | Controller für primäre Festplatten (IDE) |
| 15 | Controller für sekundäre Festplatten (IDE) |
Wie man bemerken kann, benutzen die Ports COM1 und COM4, sowie die Ports COM2 und COM3 die gleichen Unterbrechungen. Dies kann unlogisch scheinen da eine Unterbrechung nicht von zwei Peripheriegeräten benutzt werden kann. Tatsächlich ist es möglich den Port COM1 und den Port COM4 (sowie den Port COM2 und COM3) zu benutzen, vorausgesetzt sie sind nicht gleichzeitig aktiv. Im gegenteiligen Fall, kann sich der Computer blockieren oder anormal verhalten.
Wenn Sie einem Problem gegenüberstehen, von dem sie denken, dass es mit der materiellen Konfiguration ihrer Maschine zusammen hängt, sollten Sie als erstes versuchen es zu isolieren. Dies bedeutet zu versuchen alle möglichen Variablen auszuschließen, meist in dem die Maschine geöffnet wird und, nach und nach alle Elemente entnommen werden, die einen Konflikt hervorrufen können, oder es auf Programmbasis zu isolieren (in ihrem Betriebssystem), bis Sie das verantwortliche Element entdecken.