9.4. Kerneltreiber, Subsysteme und Module

Bevor Sie einen angepassten Kernel erstellen, überlegen Sie sich bitte, warum Sie dies tun wollen. Wenn Sie lediglich eine bestimmte Hardwareunterstützung benötigen, existiert diese vielleicht schon als Kernelmodul.

Kernelmodule existieren in /boot/kernel und können dynamisch in den laufenden Kernel über kldload(8) geladen werden. Die meisten, wenn nicht sogar alle, Kerneltreiber besitzen ein ladbares Modul und eine Manualpage. Der drahtlose Ethernettreiber ath hat die folgenden Information in seiner Manualpage:

Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):

    if_ath_load="YES"

Durch das Hinzufügen von if_ath_load="YES" in /boot/loader.conf wird das Modul dynamisch beim Systemstart geladen.

In manchen Fällen gibt es kein dazugehöriges Modul. Das gilt insbesondere für bestimmte Teilsysteme. Eine Möglichkeit, herauszufinden ob ein Treiber verfügbar ist, ist die Überprüfung des jeweiligen Moduls selbst.

Warnung:

Es ist erstaunlich einfach, die Unterstützung für ein Gerät oder eine Option zu entfernen, und am Ende einen defekten Kernel zu erhalten. Wenn beispielsweise der ata(4)-Treiber aus der Kernelkonfigurationsdatei entfernt wird, kann ein System, das den ATA-Festplattentreiber benötigt, nicht mehr starten. Im Zweifelsfall belassen Sie die Unterstützung besser im Kernel.

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.

Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.