Einheit 4: 4.1 Einleitung
Einheit 4: 4.1 Einleitung
EINHEIT 4
4.1 EINLEITUNG
Die Kontrolle der Eingabe-/Ausgabeoperationen (E/A) ist eine weitere Aufgabe, die erfüllt werden muss.
ein Betriebssystem entwickeln, um die Verwendung der verschiedenen Geräte zu erleichtern, die dazugehören
Teil eines Informationssystems.
Zunächst werden wir einige der Prinzipien der Hardware analysieren und dann
Software für Ein- und Ausgabe im Allgemeinen.
Verschiedene Personen analysieren auf verschiedene Weise die E/A-Hardware. Die Ingenieure
Elektriker begreifen es in Begriffen von Chips, Kabeln, Stromquellen, Motoren und mehr.
Physische Komponenten, die die Hardware bilden. Die Programmierer beobachten die Schnittstelle
die dem Software präsentiert werden (die Befehle, die die Hardware akzeptiert, die Funktionen, die sie hat)
ein Ende und die Fehler, die gemeldet werden können). In diesem Fall betrifft uns die Programmierung
von den E/A-Geräten, nicht das Design, den Bau oder die Wartung von ihnen; so unser
Das Interesse wird auf die Art der Programmierung der Hardware beschränkt sein und nicht auf ihre Funktionsweise.
intern. Es ist jedoch häufig, dass die Programmierung vieler E/A-Geräte
es ist eng mit ihrem internen Betrieb verbunden.
E/A-Geräte
Die Hardware-Geräte des Computers, deren Aufgabe es ist, Daten auszutauschen mit
der Prozessor und der Hauptspeicher in einem Sinne, in einem anderen oder in beiden, gewöhnlich
sogenannte Peripheriegeräte sind nicht einfach oder bequem direkt zu benutzen.
Prozesse hingegen müssen die Besonderheiten nicht kennen, noch ...
Merkmale dieser Geräte, sondern lediglich Daten mit ihnen austauschen.
Daher müssen diese Details verborgen werden, damit die E/A-Operationen
seien unabhängig von der Art oder dem Modell des Geräts.
Im Laufe der Geschichte der Computer wurden viele Arten von entwickelt.
Geräte, die wir in drei große Gruppen unterteilen können:
-Physische, wie die eigene Linie und die Adapter zur Linie
genannt Modem.
- Logisch, wie das Kommunikationsprotokoll und die Methode
der Steuerung und Fehlererkennung, die verwendet wird.
Ebenfalls können die Geräte klassifiziert werden, je nach Art der Informationen, die...
managen und wie sie es tun, in den folgenden Gruppen:
•Charaktergeräte. Dies sind Geräte, die einen Fluss oder eine Kette von Daten senden oder empfangen.
Zeichen, ohne sich an eine Blockstruktur zu halten, das heißt, an keine Struktur.
prefijada. Es können keine Adressen verwendet werden und keine Operationen durchgeführt werden.
Suche. Beispiele für diese Geräte sind Terminals, Linien Drucker,
Lochkarten, Netzwerkschnittstellen, Mäuse und viele andere Geräte nicht
Ähnlich wie Discs sind sie Geräte von Charakter.
Dieses Klassifizierungsschema ist nicht perfekt. Einige Geräte passen nicht dazu.
Beispiel, Uhren haben keine Richtungen durch Blöcke, sie erzeugen auch keine
Sie akzeptieren Zeichenfolgen. Das Einzige, was sie tun, ist, Unterbrechungen in Intervallen zu verursachen.
gut definiert.
4.3 PROZESSOR-PERIPHERIE-SCHNITTSTELLE
Schnittstelle. Gemeinsames Element zwischen zwei Parteien, damit sie interagieren oder kommunizieren.
untereinander. Sie können als die bestehenden Regeln betrachtet werden, um dies festzulegen.
Kommunikation.)
45
Die Geschwindigkeit und die Komplexität der Peripheriegeräte bestimmen, wie sie angeschlossen werden müssen an
Prozessor. Wir werden drei Arten der Verbindung untersuchen:
3.1. Register
Die Geräte können über die Gerätespeicher an den Prozessor angeschlossen werden, die
können direkt in einem bestimmten Bereich des Speichers zugegriffen werden oder,
indirekt, durch Hardwareanweisungen, die den Status davon zurückgeben.
Diese Aufzeichnungen haben vier Missionen:
Übertragen Sie den Status des Geräts (Status).
- Anweisungen an das Gerät übertragen.
Daten vom Gerät übertragen.
- Daten auf das Gerät übertragen.
Nun gut, der Prozessor kann die E/A-Operationen nur beginnen, ohne dass er dazu in der Lage ist.
den Abschluss zu kontrollieren, aber um zu sehen, wann eine Operation abgeschlossen ist, wird
Sie können zwei Methoden verwenden:
•Abfragen. Besteht darin, kontinuierlich den Status des Geräts zu lesen. Hat das
Unannehmlichkeit, den Prozessor eine unerwünschte Zeit zu beanspruchen.
•Unterbrechungen. Der Prozessor arbeitet weiter an anderen Aufgaben und nur wenn das Gerät
schließt die Operation ab, lenkt die Aufmerksamkeit des Prozessors auf sich und unterbricht ihn, damit er
Beobachten Sie diese Situation und ergreifen Sie die Maßnahmen, die Sie für notwendig erachten, das heißt, seien Sie hilfreich.
Unterbrechung.
3.2. Steuergeräte
Die komplexen Geräte (Festplatten…) sind nicht direkt mit dem Prozessor verbunden, sondern
sie tun dies über einen Controller, der den Status des Geräts enthält (status),
Kontrolliere das gleiche und überprüfe die übertragenen Daten.
Der Controller ist derjenige, der die Befehle des Prozessors annimmt und mit ihm kommuniziert.
von Aufzeichnungen, als handele es sich um ein Gerät.
3.3. Kanäle
Normalerweise verbinden sich die Treiber über einen Kanal mit dem Prozessor oder
E/A-Prozessor (IOP_ Input Output Processor). Der Zweck eines Kanals ist es, zu erreichen
dass die Geräte als virtuell oder transparent behandelt werden.
46
Die Kanäle werden durch Befehle gesteuert und geben bei Abschluss der Operation zurück
status entsprechende und unterbrechen den Prozessor.
•Selektoren. Sie können mehrere Geräte verwalten, aber sie können nur Daten übertragen.
eins nach dem anderen.
•Multiplexer. Sie verwalten mehrere Geräte und können Daten übertragen.
simultan
(Kanal ist das physische Medium für die Übertragung von Informationen)
Ein Treiber wird definiert als „die Software, die aus einer Reihe von Routinen und Tabellen besteht, die,
Teil des Kerns des Betriebssystems, führen sie alle aus und steuern sie
E/A-Operationen über jedes an den Computer angeschlossene Peripheriegerät, wobei
Besonderheiten für jedes Gerät.
Ein Treiber ist kein unabhängiger Prozess oder eine Aufgabe, die vom Betriebssystem verwaltet wird.
son eine Gruppe von Tabellen, in denen die Informationen gespeichert sind, die jedes Peripheriegerät charakterisieren.
mit dem Computer verbunden, und eine Reihe von Routinen, die die gesamte Verwaltung der
selbst und die Informationen, die in eine Richtung fließen, in die andere. Sie finden sich
permanente im Hauptspeicher gespeichert und erfordern eine hohe Geschwindigkeit von
Ausführung ohne Teil des Prozesses des Benutzers zu sein, der sie verwendet.
Prozess de
Benutzer
FAHRER
Peripherie
Die Behandlung durch den Kern eines Betriebssystems aller E/A-Informationen von,
oder ein Peripheriegerät kann zu Studienzwecken in zwei Ebenen unterteilt werden:
47
Benutzerprozess
Software
unabhängig von den
Geräte
E/A-Dispatcher
Manager von
Unterbrechungen
HARDWARE
Unter den Funktionen, die ein Treiber ausführt, können wir die folgenden nennen:
•Die Eigenschaften des Peripheriegeräts im Vergleich zum Rest des Betriebssystems definieren
•Die mit dem Peripheriegerät verbundenen Register zu Beginn des Systems initialisieren
betrieblich.
•Aktivieren oder Deaktivieren des Geräts für einen Prozess.
•Verarbeiten Sie alle von einem Prozess angeforderten E/A-Operationen.
•Die gesamte E/S-Operation jederzeit nach Bedarf abbrechen.
Grund.
•Verarbeiten Sie alle vom Peripheriegerät selbst erzeugten Hardwareunterbrechungen.
• Fehler und Status des Geräts behandeln, indem die entsprechende Kommunikation erfolgt.
an den Benutzer.
48
Sie sind die Einstiegspunkte für den Treiber und können direkt vom Kernel aufgerufen werden.
Betriebssystem oder durch eine Hardwareunterbrechung des peripheren Geräts. Im Allgemeinen
In einem Treiber können wir die folgenden Routinen finden:
•Initialisierung. Wird vom Kern des Betriebssystems bei der Initialisierung aufgerufen.
Die Routine kümmert sich darum, das Gerät zu initialisieren, einschließlich der Informationen.
entsprechend in den staatlichen und betrieblichen Aufzeichnungen.
•Bearbeitung von E/A-Anfragen. Diese Routine bearbeitet alle Anfragen der Prozesse
des Benutzers zur Durchführung von E/A-Operationen.
•Verwaltung von Interruptions. Es ist die Routine, die alle Interruptions verwaltet.
Gerät. Übernimmt die Kontrolle, wenn das Peripheriegerät eine Unterbrechung verursacht.
im Prozessor.
•Andere.Es gibt andere weniger wichtige Routinen, wie z.B.: der Time-out, der
Kontrolliere die Prozesszeit der Operation und den Power-Fail, der in der
Starten und den Prozess nach einem Stromausfall des Systems wieder aufnehmen.
Die Routinen eines Treibers, um einen korrekten Service für die I/O-Anfragen zu gewährleisten, benötigen dafür
Jedes Gerät eine Reihe von Daten, die in Datenstruktur in Form von
Tabelle. Diese sind ähnlich wie die folgenden:
Es ist die Darstellung des Treibers aus der Sicht des Betriebssystems. Enthält
jene Parameter, die dynamisch variiert werden können, und jene, die
Definieren Sie den Typ des Geräts, das vom Treiber unterstützt werden kann. Die Daten, die normalerweise
enthalten
Blocksteuerungseinheit (BCU)
Jedes physische Gerät steht aus der Sicht des Betriebssystems in Beziehung zu
eine Einheit innerhalb des Typs, dem sie entspricht, und wird definiert und identifiziert durch das
Betriebssystem über seine BCU.
E/A-Anforderungsbundel (PES)
Wenn ein Benutzerprozess versucht, eine E/A-Operation durchzuführen, übernimmt das Betriebssystem
Erstelle ein Paket, das mit diesem Prozess und dieser Anfrage verbunden ist, um vom Treiber verarbeitet zu werden.
Dieses Paket wird in eine Prioritätenwarteschlange gestellt, um vom entsprechenden Fahrer bearbeitet zu werden.
gerichtet. Die Daten, die normalerweise enthalten sind, sind:
Die Betriebssysteme führen eine Vielzahl von Operationen aus und sind darauf vorbereitet, um
Unterbrechungen akzeptieren, die von Peripheriegeräten kommen. Um erkennen zu können
Welches Gerät hat eine Unterbrechung verursacht und wie kann man es behandeln?
adäquat, das Betriebssystem weist einen Teil seines Speichers (den niedrigsten) zu, um zu speichern
die Adressen der bereits erwähnten Interrupt-Handler, die mit jedem verbunden sind
Gerät. Jedes gespeicherte Wort, das die Adresse eines Handlers enthält
Die Unterbrechung ist unter dem Namen Interruptvektor bekannt.
Daher ist der Interruptvektor eine Zahl, die uns angibt, welches Wort er enthält.
die Adresse einer Routine, die eine Unterbrechung behandeln soll.