Treiber — Änderungen 4864 → 7453

Zeile 1: Zeile 1:
−
Die Treiber sind unterhalb der [[HAL]] und ermöglichen den Zugriff auf die Hardware. Sie werden bei einem Hybrid- und Mikrokernel geladen, während sie bei einem Monolithischen Kernel schon im [[Kernel]] enthalten sind.
+
Als '''Treiber''' wird der Teil eines [[Betriebssystem]]s bezeichnet, der direkt mit der Hardware kommuniziert. Dies geschieht über [[I/O Port]]s oder [[Memory Mapped I/O]] unter Benutzung des [[HAL | Hardware Abstraction Layer]], der vom [[Kernel]] bereitgestellt wird. Nach Außen hin bietet der Treiber ein abstrakteres Interface (wie beispielsweise Unixdatein), um es zu ermöglichen Anwendungen von der konkreten Hardware unabhängig zu programmieren. Ob (ein Teil der) Treiber im User- oder im Kernelmode laufen, ergibt sich aus der Art des [[Kernel]]s (siehe dort für eine ausführlichere Erklärung).
−
 
 
−
== Treiber beim Mikrokernel ==
 
−
Beim Mikrokernel sind jegliche Treiber in den Userspace ausgelagert. Diese können abstürzen ohne den Kernel mitzureißen und teilweise sogar einfach neugestartet werden. Hier ist es wichtig, den Artikel [[Interprozesskommunikation]] zu lesen. Zudem sollte darauf aufbauend eine Treiberschnittstelle vorhaden sein. Als (vereinfachtes) Diagramm würde ein Betriebsystem mit [[Mikrokernel]] so aussehen. '''Achtung, kein [[Exokernel]]'''
 
−
 
 
−
http://be59.be.funpic.de/Lowlevel/Diagramm.png
 
−
 
 
−
== Makrokernel ==
 
−
Hier sind die Treiber direkt im [[Kernel]] einkompiliert. Ist ein Treiber fehlerhaft, stürzt immer dann der ganze [[Kernel]] ab. Als (vereinfachtes) Diagramm würde ein Betriebsystem mit Makrokernel so aussehen.
 
−
 
 
−
http://be59.be.funpic.de/Lowlevel/Diagramm2.png
 
  
 
[[Kategorie:Glossar]]
 
[[Kategorie:Glossar]]