Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Interrupt Controller (Aufgaben & Arbeitsweise) | Informatik Lernvideo
Das Wichtigste aus dem Video
Tipp auf eine Zeit – das Video springt genau dorthin.
Transkriptautomatisch erstellt · 39 Zeilen
- die Aufgabe eines Interrupt Controllers besteht darin über den steuerbus sogenannte Interrupt Signale zu empfangen und zu
- verwalten sobald am Interrupt Controller ein oder mehrere interrup Signale eingegangen sind wird das Steuerwerk darüber
- informiert das Steuerwerk ist in der Folge dafür zuständig jeden angezeigten Interrupt zu
- bearbeiten dabei besitzt jeder interupt eine spezielle interupt behandlungsroutine diese behandlungsroutine ist Teil des
- Betriebssystems und besteht aus einer Reihe von Anweisungen welche durch die CPU ausgeführt werden müssen bevor dies jedoch geschehen kann muss der aktuell
- noch laufende Prozess unterbrochen werden und es muss sicher stellt sein dass dieser Prozess zu einem späteren Zeitpunkt ohne negative Auswirkung an
- genau dieser Stelle weiterarbeiten kann um zu verstehen was passiert wenn ein interupt Auftritt betrachten wir
- hier ein Beispiel bei dem das Betriebssystem sowie ein Prozess a sich derzeit im Hauptspeicher befinden der Prozess a wird jetzt in diesem Moment
- gerade Befehl für Befehl auf der CPU ausgeführt wenn jetzt beispielsweise der Nutzer vor dem Rechner eine Taste drückt tritt ein
- Interrupt auf die CPU wartet auf den richtigen Moment wenn nämlich der aktuelle Befehl komplett abgearbeitet ist aber der neue Befehl noch nicht
- geholt wurde und an dieser Stelle wird der laufende Prozess a unterbrochen nun kommen die vier Bedingungen für eine präzise
- Unterbrechung ins Spiel es ist dabei deine Aufgabe wenn du dieses Video siehst zu prüfen dass wirklich alle vier Bedingungen erfüllt sind als erstes
- sorgt das Steuerwerk für die Sicherung des aktuellen Werts aus dem Befehlszähler und dazu kann man sich der Einfachheithalber eines anderen
- Registers bedienen was auf der CPU speziell dafür vorgesehen sein könnte anhand der interupt Nummer ermittelt das Steuerwerk nun die Startadresse der
- interupt behandlungsroutine diese Routine ist Teil des Betriebssystems die betreffende Adresse wird in den Befehlszähler
- eingetragen jetzt beginnt wieder der normale Zyklus auf der CPU aber diesmal werden die Befehle der interupt behandlungsroutine
- geholt und ausgeführt sobald die komplette Routine abgearbeitet ist bestätigt das Steuerwerk dem interupt Controller dies
- und der ursprüngliche Befehlszähler wird wiederhergestellt sodass der Prozess a an genau dieser Stelle weiterlaufen kann Prozess a hat damit nicht einmal
- gemerkt dass er durch den Interrupt unterbrochen wurde wir schauen uns in diesem Video einmal an was es mit der Kommunikation
- zwischen CPU und Festplatte insbesondere im Hinblick auf interrups alles auf sich hat gehen wir davon aus dass wir einen Rechner haben der bereits eingeschaltet
- ist das Betriebssystem ist geladen und es soll jetzt ein weiterer Prozess gestartet werden dafür müssen wir also aus aner Datei auf der Festplatte die
- Information zunächst einmal in den Hauptspeicher kopieren dummerweise ist es jetzt nicht so einfach wie in dieser Animation gezeigt wenn wir genau
- nachdenken dann fällt auf dass die CPU ja an dieser Übertragung noch gar nicht beteiligt war wir stellen es daher um und es muss so sein dass von der
- Festplatte die Information zunächst zur CPU laufen und von der CPU dann in den Hauptspeicher transferiert werden es ist also so gesehen ein Umweg zu nehmen und
- es wird noch aufwendiger denn das gesamte Programm kann natürlich nicht auf einmal tragen werden sondern wir müssen Datenwort für Datenwort einzeln
- von der Festplatte holen und dann auch einzeln in den Hauptspeicher schreiben als erstes wartet die CPU darau dass im zustandregister des
- festplattenkontrollers zu lesen ist dass er bereit ist für die Aufnahme des nächsten steuerbefehls dann sendet die CPU den ersten
- Lesebefehl und der Festplattencontroller holt von der Festplatte den angeforderten Datenwert da die Festplatte prinzipiell
- sehr langsam arbeitet muss die CPU jetzt warten und warten und warten der Festplattencontroller zeigt durch einen Interrupt an dass das Datenwort jetzt im
- datenregister verfügbar ist der interupt Controller meldet diesen Interrupt der CPU und die CPU ruft die zugehörige Interrupt behandlungsroutine auf die
- Service Routine liest n das datenregister des festplattencontrollers aus es kann vom Steuerwerk direkt in das speicherdatenregister geschrieben werden
- im speicheradressregister wird die Adresse hinterlegt die im Hauptspeicher die Speicherstelle beschreibt an der das
- Datenwort abgelegt werden soll zusammen mit einem schreibenbefehl wird alles nun an den Hauptspeicher übertragen und das betreffende Datenwort wird im
- Hauptspeicher in der entsprechenden Speicherstelle abgelegt die letzte Handlung der Interrupt behandlungsroutine besteht nun
- noch darin die Bestätigung zum Interrupt Controller zu senden dass dieser Interrupt jetzt abgearbeitet wurde auf gleiche Weise wird nun mit allen
- weiteren Befehlen aus der Datei von der Festplatte Verfahren man kann sich vorstellen dass bei einer entsprechend großen Datei die
- CPU sehr oft in einen wartemodus eintreten muss und erst durch den Interrupt aufgeweckt wird vielleicht hast du aber ja auch schon eine Idee was
- die CPU alternativ tun könnte anstatt einfach nur zu warten und zu warten und zu
- warten
Zum Nachlesen
InterruptInterrupts (genauer: Hardware-Interrupts) werden durch asynchrone externe Ereignisse ausgelöst. Asynchron bedeutet in diesem Zusammenhang, dass die laufende …
KontextwechselKontextwechsel oder Taskswitching (englisch context switch) nennt man den Vorgang in einem Betriebssystem, bei dem die Bearbeitung des aktuellen Prozesses …
ProzessorAufbau und Funktionale Einheiten · Hauptprozessor (CPU) und Mehrprozessorkerne · Steuer- bzw. Leitwerk · Rechenwerk und Register · Datenleitungen · Caches und MMU.
MultitaskingDer Begriff Multitasking [ˌmʌltiˈtɑːskɪŋ] (engl.) bzw. Mehrprozessbetrieb bezeichnet die Fähigkeit eines Betriebssystems, mehrere Aufgaben (Tasks) …