Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

10.03.2005, 11:48

Module bei Bedarf laden

Hallo!

Mein Ziel ist es, einen modularen Kernel zu bauen und die nötigen Module nur bei Bedarf automatisch laden zu lassen. Die wichtigen Treiber (reiserfs, ide...) sind natürlich in den Kernel kompiliert. Wie kriege ich es nun hin, dass wenn eine CD eingelegt bzw. gemountet wird der Treiber fürs CD-LW und der Dateisystemtreiber geladen und wenn er nicht mehr benötigt wird auch wieder entfernt wird?
Gentoo 2.6.11-r7 GCC 3.4.3 nptl prelink udev
Pentium4M 1,9 GHz 512 MB 40 GB

2

23.03.2005, 16:09

Hey, mich nimmt echt der Sinn deines Unternehmens wunder. Die Idee bei der ganzen Sache ist immer noch dieselbe: Treiber die du immer wieder brauchst, werden fest in den Kernel kompiliert. Alle anderen (die nur selten verwendet werden) werden als Module eingebaut. Dein sogenannter "modularer Kernel" wird dir die Geschwindigkeit des PC auch nicht erhöhen und wenn, dann auch nur kaum merkbar.

Hm, wenn du es trotzdem möchtest, müssten Scripte hinhauen, z.b. fürs Laden von CDs, so in etwa:

Quellcode

1
2
3
modprobe benötigte_module
mount /dev/hdc /mnt/cdrom
konqueror /mnt/cdrom

Die Pfade musst du halt anpassen und wenn du nicht KDE verwendest ein anderes Programm an Stelle von konqueror angeben. Eine Idee um die Module anschliessend wieder zu "entladen" habe ich im Moment auch nicht

Greets Tobi

3

07.04.2005, 13:08

RE: Module bei Bedarf laden

Zitat

Original von steps
Hallo!

Mein Ziel ist es, einen modularen Kernel zu bauen und die nötigen Module nur bei Bedarf automatisch laden zu lassen. Die wichtigen Treiber (reiserfs, ide...) sind natürlich in den Kernel kompiliert. Wie kriege ich es nun hin, dass wenn eine CD eingelegt bzw. gemountet wird der Treiber fürs CD-LW und der Dateisystemtreiber geladen und wenn er nicht mehr benötigt wird auch wieder entfernt wird?


Hmm was soll dir denn das bringen?

Ich würde da grundsätzlich so vorgehen:

Sachen die man oft braucht in den Kernel rein, und das andere als Module. Denn es bringt nicht wirklich viel nicht benötigte Module aus dem Kernel zu laden. Der wird meines Wissens nicht enorm schneller oder so...

HTH
Linus Torvalds: <Software is like Sex it's better when it's free!> ;)

4

08.04.2005, 00:59

Ich habs eingesehen. Das Ganze war ja nur so ein Gedanke, um den modularen Aufbau mal konkret nutzen zu können. Ich habs jetzt mit submount so eingerichtet, dass cds/dvds automatisch gemountet und auch wieder ausgehängt werden. Das war mein erklärtes Ziel.
Gentoo 2.6.11-r7 GCC 3.4.3 nptl prelink udev
Pentium4M 1,9 GHz 512 MB 40 GB

5

08.04.2005, 11:36

Sorry, dass ich dich falsch verstanden habe. Aber ich dachte du wolltest es mit allen möglichen Modulen durchziehen :] Aber submount ist ne gute wahl.

greets

6

09.04.2005, 05:12

Das mit den Modulen ist ja hauptsächlich für allgemeine BootCD's oder Systeme gedacht, die auf allen Rechnern laufen sollen. Da werden einfach ALLE Treiber als Module mitgeliefert, sodaß der Rechner nach der Hardwareerkennung die Treiber für die aktuell vorgefundene Hardware laden kann.

Wenn man erstmal weiß, welche Features und Treiber man benötigt, kann man die auch ruhig statisch in der Kernel bauen und den ganzen Rest rausschmeißen.
__
Rud

7

09.04.2005, 11:44

Wenn es ohne größere Verrenkungen möglich gewesen wäre, dann hätt ich das mit allen möglichen Treibern eingerichtet. Einfach um die Gewissheit zu haben, dass ständig nur die wirklich benötigten Sachen geladen sind.
Gentoo 2.6.11-r7 GCC 3.4.3 nptl prelink udev
Pentium4M 1,9 GHz 512 MB 40 GB

8

09.04.2005, 11:58

Ja aber eben wie schon gesagt, verstehe ich nicht den Grund deines Vorhabens.

Greets

9

09.04.2005, 18:24

Ich auch nicht. Außerdem ist ein Kernel mit einem Treiber als ladbares Module im Vergleich zum fest eingebauten größer und langsamer - auch wenn sich der Unterschied im Bereich von wenigen Bytes / Taktzyklen bewegt und damit höchstens esoterischer Natur ist. Weiterhin kostet das Laden von Modulen einen Plattenzugriff und damit einige Millisekunden beim booten. ;)

Und man muß die Module in der modprobe.conf (oder wie die Datei heißt) eintragen - eine Arbeit die ich mir gern schenke.

Module bieten sich an, wenn man dem Treiber Parameter übergeben muß (IRQ oder ähnliches - ist heute aber sehr selten). Die kann man dann sauber in besagte modprobe.conf zum Modul schreiben und muß nicht ellenlange Kernelkommandozeilen editieren.
Und wenn man einen Treiber hat der buggy ist oder aus sonst einem Grund ab und zu einen Neustart verlangt. Das geht nur mit Modulen (entladen, neuladen). Was erst einmal im Kernel ist muß durchlaufen.

just my 2cts.
__
Rud