Linux-Kernel: Kmod soll Systemstart beschleunigen

Entwickler des brasilianischen Unternehmens Profusion haben eine Bibliothek(öffnet im neuen Fenster) mit dem Namen Libkmod für das Laden von Modulen des Linux-Kernels entwickelt. Sie stellt ein API bereit, das von Anwendungen wie Modprobe, Lsmod, Insmod und Rmmod genutzt werden kann. Libkmod soll unnötige Aufrufe verhindern, etwa wenn Module bereits geladen sind.
Die Entwickler werden zunächst das Libkmod-API für Udev bereitstellen. Denn Udev rufe während des Bootvorgangs unter Umständen mehrere hundert Mal die Anwendung Modprobe auf, erklären die Entwickler. Da Aufrufe oftmals redundant seien, etwa weil Module bereits geladen sind oder sich direkt im Kernel befinden, verlangsame das den Systemstart. Mit nur wenigen Zeilen Code könne Libkmod das Laden von Modulen effizienter gestalten. Dazu greift die Bibliothek auf einmalig erstellte Indices und Konfigurationsdateien zu. Die Entwickler bei Profusion haben bereits Kontakt zu dem Udev-Entwickler Kay Sievers und dem Systemd-Entwickler Lennert Poettering aufgenommen, um dort Libkmod zu implementieren.
Zugleich passen die Entwickler die herkömmlichen Werkzeuge wie Modprobe an das API an. Die erste Version listet die geladenen Module, liest Informationen wie Größe oder Adressen geladener Module aus, fahndet nach vorhandenen Modulen per Alias, Modulname oder Pfad und lädt sie samt Optionen. Auch eine Filterliste für das Sperren von Modulen per Blacklist liest die Bibliothek bereits aus. Die von Libkmod erstellten Indices können beim Systemstart geladen werden und so für eine weitere Beschleunigung sorgen.
Die dazugehörigen Werkzeuge Kmod-modprobe, Kmod-lsmod, Kmod-insmod und Kmod-rmmod können bereits die Befehle ihrer bisherigen Entsprechungen größtenteils nachbilden. Später sollen diese Werkzeuge zu einer Anwendung vereint werden.
Die Bibliothek Libkmod steht unter der LGPLv2 or Later, die Werkzeuge unter GPLv2 or Later. Der Quellcode des Projekts steht in einem entsprechenden Git-Repository(öffnet im neuen Fenster) oder als Tarball zum Download(öffnet im neuen Fenster) bereit.