next up previous contents
Nächste Seite: Gerätetreiber Aufwärts: Das DROPS-Projekt Vorherige Seite: Mikrokerne   Inhalt

Colocation

Eine Lösung für Applikationen mit hohen Leistungsansprüchen ist in Abb. 2.4 dargestellt. Der Gerätetreiber ist hier Bestandteil der Applikation und der Kommunikationsaufwand zwischen den beiden Komponenten wird somit minimiert, da weder der Systemkern einbezogen wird noch IPC nötig ist.

Abbildung 2.4: Colocated Treiber (high-speed Applikationen)
\resizebox*{.45\textwidth}{!}{\includegraphics{arch_coloc.eps}}

Für DROPS ist der erste Ansatz, den Gerätetreiber in den Kern zu integrieren, nicht passend, da der Mikrokern, die Basis des Systems, nicht erweitert werden soll. Es bietet sich also an, wie im zweiten Ansatz beschrieben, jeden Gerätetreiber in einen eigenen Server auszulagern und eine schnelle IPC zur Kommunikation zu verwenden.

Man sollte aber die Möglichkeit der Colocation nicht vollständig verwerfen und den Gerätetreibern für DROPS erlauben, als Programm-Modul im Adreßraum der Applikation abzulaufen. Es ist damit möglich, Geräte mit potentiell nur einem Klienten, z.B. Netzwerk-Protokollstack und -gerätetreiber bzw. Konsole und Videotreiber, colocated zu konfigurieren und die Leistung zu verbessern.

Gerätetreiber unter DROPS sollen also eigenständige Module mit einer definierten Schnittstelle sein, die je nach Anspruch bzw. Konfiguration über IPC oder lokale Prozeduraufrufe genutzt wird.


next up previous contents
Nächste Seite: Gerätetreiber Aufwärts: Das DROPS-Projekt Vorherige Seite: Mikrokerne   Inhalt
Christian Helmuth 2001-12-11