A. Willemer Wie werde ich UNIX-Guru
| | I ANWENDUNG |
Know-How für Unix/Linux-User: Einführung, Shell, Befehle, Hilfe, Arbeit mit Dateien, Editoren, Reguläre Ausdrücke, nützliche Tools, Hardware.
|
II ADMINISTRATION |
Tools, Systemstart, Benutzer verwalten, Hardware konfigurieren, Software installieren, Datensicherung, Tuning, Kernel
|
III NETZWERK |
Client/Server Systeme, TCP/IP, Routing, IPv6, Internet-Dienste, DHCP, Webserver, Firewalls
|
IV DAS X-WINDOW SYSTEM |
Die grafische Oberfläche von UNIX einrichten und nutzen
|
V PROGRAMMIERUNG VON SHELLSKRIPTEN |
Automatisieren von Tasks durch Shell-Skripte.
|
VI PERL |
Interpreter, Syntax, Variablen, Steuerung, Funktionen, UNIX-Aufrufe, GUIs mit Tk
|
VII PROGRAMMIERWERKZEUGE |
C-Compiler, Analyse-Tools, CVS, yacc, diff
|
VIII UNIX-SYSTEMAUFRUFE |
UNIX-Befehle in eigenen Programmen nutzen
|
IX LITERATUR |
Weiterführende Literatur zu UNIX und LINUX
|
| |
Hardware wird in den meisten Fällen durch Controllerbausteine gesteuert. Diese
Controller besitzen Register, die von dem Treiber mit Werten gefüllt werden,
um Aktionen auszulösen, oder die ausgelesen werden, um den Zustand der dahinter
befindlichen Hardware zu ermitteln. Die Registerzugriffe steuern also die
Hardware und sind vom speziellen Controllerbaustein abhängig. Die Aufgabe,
ein Paket ins Netzwerk zu senden, bedeutet, dass die Adresse, an der der
zu sendende Speicherinhalt liegt, in ein Register gestellt wird. In ein
weiteres Register wird dann die Nummer geschrieben, die den Sendebefehl
auslöst.
Unterschiedliche Hardware benötigt unterschiedliche Parameter.
Beim Schreiben des Speicherinhaltes auf die Platte muss der Hardware
zusätzlich mitgeteilt werden, an welche Stelle der Platte der Speicherinhalt
geschrieben werden soll.
Natürlich unterscheidet sich auch das Protokoll des Controllers
für Netzwerkadapter von dem eines Festplattencontrollers. Diese
Details verbirgt der Treiber vor dem Betriebssystem.
Die Kommandoübermittlung an den Controller stellt den einen Teil der Aufgabe
eines Treibers dar. Die andere Aufgabe ist die Verarbeitung von Interrupts.
Soll beispielsweise ein Block von einer Platte gelesen werden,
vergeht eine gewisse Zeit, bis der Inhalt im Speicher angekommen ist.
Diese Zeit wird UNIX dazu verwenden, andere Prozesse abzuarbeiten.
Da der Prozess, der den Speicherblock von der Platte lesen will, erst
weiterarbeiten kann, wenn die Leseanforderung bearbeitet wurde,
wird er in eine Warteschlange gestellt.
Zu irgendeinem Zeitpunkt ist dann der Controller mit dem Lesen des
Plattenblocks fertig und die Daten können abgeholt werden. Daraufhin sendet
der Controller einen Interrupt (engl. Unterbrechung) an das Betriebssystem.
Der Treiber hat beim ersten Start seine Interruptbehandlungsroutine zur
Bearbeitung des Interrupts eingetragen, sodass jetzt beim Eintreffen des
Interrupts die entsprechende Treiberfunktion aktiviert wird.
Diese liest die Registerinhalte des Controllers und stellt
fest, ob der Zugriff Erfolg hatte. Anschließend befreit die Interruptfunktion
des Treibers den Prozess aus
der Warteschlange, übergibt ihm Speicher und ggf. ein Fehlernummer und beendet
sich wieder. Der anfordernde Prozess ist nun wieder lauffähig und kann die
Ergebnisse weiterverarbeiten.
| |
|
|
Ihre Meinung? |
|
|
|
|
| |
| |
Shopping |
|
Versandkostenfrei bestellen in Deutschland und Österreich Info
|
|
| |
| |
|