Zum Inhalt springen
L

Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).

Interrupt Controller (Aufgaben & Arbeitsweise) | Informatik Lernvideo

Lernvideos und Vorträge6:52 16.262 Aufrufe veröffentlicht Auf YouTube

Das Wichtigste aus dem Video

Tipp auf eine Zeit – das Video springt genau dorthin.

Transkriptautomatisch erstellt · 39 Zeilen
Herunterladen
  1. die Aufgabe eines Interrupt Controllers besteht darin über den steuerbus sogenannte Interrupt Signale zu empfangen und zu
  2. verwalten sobald am Interrupt Controller ein oder mehrere interrup Signale eingegangen sind wird das Steuerwerk darüber
  3. informiert das Steuerwerk ist in der Folge dafür zuständig jeden angezeigten Interrupt zu
  4. bearbeiten dabei besitzt jeder interupt eine spezielle interupt behandlungsroutine diese behandlungsroutine ist Teil des
  5. 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
  6. noch laufende Prozess unterbrochen werden und es muss sicher stellt sein dass dieser Prozess zu einem späteren Zeitpunkt ohne negative Auswirkung an
  7. genau dieser Stelle weiterarbeiten kann um zu verstehen was passiert wenn ein interupt Auftritt betrachten wir
  8. hier ein Beispiel bei dem das Betriebssystem sowie ein Prozess a sich derzeit im Hauptspeicher befinden der Prozess a wird jetzt in diesem Moment
  9. gerade Befehl für Befehl auf der CPU ausgeführt wenn jetzt beispielsweise der Nutzer vor dem Rechner eine Taste drückt tritt ein
  10. Interrupt auf die CPU wartet auf den richtigen Moment wenn nämlich der aktuelle Befehl komplett abgearbeitet ist aber der neue Befehl noch nicht
  11. geholt wurde und an dieser Stelle wird der laufende Prozess a unterbrochen nun kommen die vier Bedingungen für eine präzise
  12. 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
  13. sorgt das Steuerwerk für die Sicherung des aktuellen Werts aus dem Befehlszähler und dazu kann man sich der Einfachheithalber eines anderen
  14. Registers bedienen was auf der CPU speziell dafür vorgesehen sein könnte anhand der interupt Nummer ermittelt das Steuerwerk nun die Startadresse der
  15. interupt behandlungsroutine diese Routine ist Teil des Betriebssystems die betreffende Adresse wird in den Befehlszähler
  16. eingetragen jetzt beginnt wieder der normale Zyklus auf der CPU aber diesmal werden die Befehle der interupt behandlungsroutine
  17. geholt und ausgeführt sobald die komplette Routine abgearbeitet ist bestätigt das Steuerwerk dem interupt Controller dies
  18. und der ursprüngliche Befehlszähler wird wiederhergestellt sodass der Prozess a an genau dieser Stelle weiterlaufen kann Prozess a hat damit nicht einmal
  19. gemerkt dass er durch den Interrupt unterbrochen wurde wir schauen uns in diesem Video einmal an was es mit der Kommunikation
  20. 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
  21. 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
  22. Information zunächst einmal in den Hauptspeicher kopieren dummerweise ist es jetzt nicht so einfach wie in dieser Animation gezeigt wenn wir genau
  23. 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
  24. 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
  25. 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
  26. von der Festplatte holen und dann auch einzeln in den Hauptspeicher schreiben als erstes wartet die CPU darau dass im zustandregister des
  27. festplattenkontrollers zu lesen ist dass er bereit ist für die Aufnahme des nächsten steuerbefehls dann sendet die CPU den ersten
  28. Lesebefehl und der Festplattencontroller holt von der Festplatte den angeforderten Datenwert da die Festplatte prinzipiell
  29. sehr langsam arbeitet muss die CPU jetzt warten und warten und warten der Festplattencontroller zeigt durch einen Interrupt an dass das Datenwort jetzt im
  30. datenregister verfügbar ist der interupt Controller meldet diesen Interrupt der CPU und die CPU ruft die zugehörige Interrupt behandlungsroutine auf die
  31. Service Routine liest n das datenregister des festplattencontrollers aus es kann vom Steuerwerk direkt in das speicherdatenregister geschrieben werden
  32. im speicheradressregister wird die Adresse hinterlegt die im Hauptspeicher die Speicherstelle beschreibt an der das
  33. Datenwort abgelegt werden soll zusammen mit einem schreibenbefehl wird alles nun an den Hauptspeicher übertragen und das betreffende Datenwort wird im
  34. Hauptspeicher in der entsprechenden Speicherstelle abgelegt die letzte Handlung der Interrupt behandlungsroutine besteht nun
  35. noch darin die Bestätigung zum Interrupt Controller zu senden dass dieser Interrupt jetzt abgearbeitet wurde auf gleiche Weise wird nun mit allen
  36. weiteren Befehlen aus der Datei von der Festplatte Verfahren man kann sich vorstellen dass bei einer entsprechend großen Datei die
  37. 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
  38. die CPU alternativ tun könnte anstatt einfach nur zu warten und zu warten und zu
  39. warten

Zum Nachlesen