next up previous contents
Nächste Seite: Fallbeispiel: Soundtreiber es1371.c Aufwärts: Bibliotheken für Linux-Gerätetreiber Vorherige Seite: Linux Timer   Inhalt


sound Bibliothek

Die sound Komponenten wurden bisher noch nicht vollständig von den Treibern separiert und auch die Schnittstellen-Threads existieren bisher noch nicht. Aus dem Entwurf ist aber leicht abzuleiten, wie die Bibliothek implementiert werden kann.

Den Gerätetreibern muß also ein Sound Subsystem zur Verfügung gestellt werden, daß die soundcore Schnittstelle implementiert, aber die benötigten Schnittstellen-Threads erzeugt. Der Haupt-Thread zum Startzeitpunkt ist der soundcore Thread. Dieser ruft die Initialisierungsroutine des Gerätetreibers auf und meldet sich danach beim Namensdienst als Soundkoordinator an.

Während der Initialisierung werden nun benötigte Threads erzeugt, z.B. erzeugt ein
register_sound_dsp() Aufruf einen Thread für ein DSP-Gerät (Abb. 3.3). Nutzerapplikationen können sich nun über eine OSS-ähnliche Schnittstelle an das Gerät wenden. Dabei verbirgt die common Bibliothek die Synchronisation der Threads.



Christian Helmuth 2001-12-11