[gesichtete Version] | [gesichtete Version] |
Zeile 48: | Zeile 48: | ||
Zum Beispiel für die Maus | Zum Beispiel für die Maus | ||
* ab Adresse 10 240 <math>\rightarrow</math> initDevice() | * ab Adresse 10 240 <math>\rightarrow</math> initDevice() | ||
* ab Adresse 10 752 <math>\rightarrow</math> | * ab Adresse 10 752 <math>\rightarrow</math> readChar() | ||
* ab Adresse 11 776 <math>\rightarrow</math> | * ab Adresse 11 776 <math>\rightarrow</math> writeChar() | ||
* ab Adresse 12 888 <math>\rightarrow</math> handleInterrupt() | * ab Adresse 12 888 <math>\rightarrow</math> handleInterrupt() | ||
</p> | </p> | ||
Zeile 55: | Zeile 55: | ||
und für den DVD-Brenner | und für den DVD-Brenner | ||
* ab Adresse 13 312 <math>\rightarrow</math> initDevice() | * ab Adresse 13 312 <math>\rightarrow</math> initDevice() | ||
* ab Adresse 14 336 <math>\rightarrow</math> | * ab Adresse 14 336 <math>\rightarrow</math> readChar() | ||
* ab Adresse 15 360 <math>\rightarrow</math> | * ab Adresse 15 360 <math>\rightarrow</math> writeChar() | ||
* ab Adresse 16 384 <math>\rightarrow</math> handleInterrupt() | * ab Adresse 16 384 <math>\rightarrow</math> handleInterrupt() | ||
</p> | </p> | ||
Zeile 70: | Zeile 70: | ||
<br /> | <br /> | ||
== Ein Praxisbeispiel == | == Ein Praxisbeispiel == | ||
<loop_area type="practice"> | <loop_area type="practice"> |
Zeichenorientierte Geräte (engl. character device) erzeugen oder empfangen einen Datenstrom (engl. stream). Eine Folge von Zeichen (evtl. auch nur ein einzelnes Zeichen) wird hierbei zum Gerät oder vom Gerät übertragen. Diese Zeichen sind nicht adressierbar.
Beispiele für zeichenorientierte Geräte sind:
Die Geräteverwaltung definiert üblicherweise eine Standardschnittstelle, welche die Treiber aller zeichenorientierten Geräte unterstützen müssen. Darin vorgesehen sind beispielsweise Funktionen für
Diese Funktionen werden vom Gerätetreiber implementiert.
Ist ein zeichenorientiertes Gerät am System angeschlossen, so wird sein Treiber (z.B. beim Systemstart) in den Hauptspeicher geladen. Der Treiber implementiert (u.a.) die Funktionen
Durch das Laden des Treibers in den Hauptspeicher steht ab diesem Moment fest, ab welcher Adresse im Hauptspeicher der ausführbare Code der genannten Funktionen beginnt. Dies gilt für jeden geladenen Treiber, also für jedes unterstützte Gerät.
Zum Beispiel für die Maus
und für den DVD-Brenner
und so fort für jeden weiteren Treiber eines zeichenorientierten Geräts.
Die Geräteverwaltung wird über die Startadressen der implementierten Funktionen informiert und verwaltet diese entsprechend für alle unterstützten zeichenorientierten Geräte. Ab diesem Moment steht das Gerät für die Nutzung durch die Geräteverwaltung, durch das Betriebssystem und/oder einen Prozess zur Verfügung.
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png