Wie bei anderen unixoiden Systemen auch muss für den Zugriff des Systems auf die Hardware ein entsprechendes Kernelmodul geladen werden. Dies kann einerseits durch fest einkompilierte Treiber oder durch nachgeladene Treiber geschehen. Im Folgenden werden die Kernelmodule für den Zugriff des Rechners auf die Soundkarte geladen. Das bauen eines eigenen Kernels wird hier explizit nicht behandelt.
In den Releasenotes der entsprechenden FreeBSD-Version wird darauf hingewiesen welche Hardwarekompartibilitäten vorhanden sind. Dabei wird direkt das dafür notwendige Kernelmodul angegeben. Die Releasenotes sind wie folgt zu finden:
Für den im Beispiel vorliegenden nForce3-Chipsatz findet sich der Hinweis auf den Treiber snd_ich. Durch Klicken auf den Treibernamen oder durch aufrufen der Manpage des Treibers erhält man mehr Informationen.
% man snd_ich
Hier die Ausgabe von man snd_ich. Die Ausgabe enthält alle wichtigen Details über den Treibernamen und die notwendige Konfigurationszeile für /boot/loader.conf.
NAME snd_ich -- Intel ICH AC'97 and compatible bridge device driver SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: \t device sound \t device snd_ich Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): \t snd_ich_load="YES" [...]
Um zu testen ob das Kernelmodul das richtige ist kann es durch den User root ins laufende System geladen werden. Um überhaupt erst die Möglichkeit zu haben Soundkarten nutzen zu können muss jedoch zuvor das Modul sound.ko geladen werden. (Hinweis: Welche Module bereits geladen sind kann mit dem Aufruf von kldstat als root angezeigt werden).
# kldload sound
Nachdem die Soundunterstützung vorhanden ist wird das entsprechende Modul, in diesem Falle snd_ich geladen.
# kldload snd_ich
Wenn es sich um das richtige Modul gehandelt hat sollte nun der Sound funktionieren.
In der Datei /boot/loader.conf können dem Kernel beim Booten Einstellungen mitgegeben werden. Unter anderem können hier zur Bootzeit Module geladen werden. Die notwendigen Einstellungen stehen ebenfalls in der Manpage des Treibers.
In diesem Fall wird die /boot/loader.conf um die beiden folgenden Zeilen ergänzt:
sound_load="YES" snd_ich_load="YES"
Mit diesem Einstellungen sollten nun bei jedem Start des FreeBSD-Systems die Soundtreiber geladen werden.