hallo
ich habe vor kurzem auch zum 1. mal einen kernel kompiliert und habe nun eine frage:
wann ist es ratsam dinge als modul einzusetzten und wann sollte/muss man sie fest einbauen?
gibt es da eine generelle regel?
wo sind die vor bzw. nachteile?
ich weiß, dass man sein fs und die controler fest einbauen muss. wo muss man das noch?
hoffe ihr könnt etwas licht in die sache bringe, vincman
fest rein oder als modul?
du findest in der regel hinweise dazu in den kernel docs, wenn hinweise denn nötig sind.wann ist es ratsam dinge als modul einzusetzten und wann sollte/muss man sie fest einbauen?
wenn du genau weisst was du brauchst spricht wenig dagegen treiebr fest einzukompilieren, zumindest solange du davon ausgehst das du so bald keine neuen versionen brauchst.
bei treibern die ständig in neuen versionen rauskommen (wlan z.b. ) sind module schon sinnvoll, wenn du nicht jedes mal den ganzen kernel neu übersetzten willst.
gleiches gilt für hardware treiber, die du selten anschliesst (z.b. scanner oder sowas)
bei servern, wo die hardware meist 1-2 jahre gleich bleibt macht es sinn alles einzukompilieren, da dann auch die option besteht aus sicherheitsgründen das nachladen von modulen allgemein zu unterbinden.
fest rein oder als modul?
Hallo,
grundsätzlich: je weniger fest eincompiliert ist, desto schmaler und schneller ist der kernel.
Gruß
Matthias
grundsätzlich: je weniger fest eincompiliert ist, desto schmaler und schneller ist der kernel.
Da, wo ein festes eincompilieren notwendig ist, hast Du in den Optinonen `eh nicht die Möglichkeit, etwa modular auszulagern. Ansonsten hängt es immer von den individuellen Notwendigkeiten des Systems ab (siehe ub13).ch weiß, dass man sein fs und die controler fest einbauen muss. wo muss man das noch?
Gruß
Matthias
Der Geschwindigkeitsvorteil, so klein er auch sein mag, hängt vielleicht damit zusammen,wieso das? das einzige was schneller gehen mag ist das anfängliche booten des kernels, aber seit wann sollte einkompiliert langsamer sein als ein geladenes modul?
dass man durch die erhöhte Flexibilität des Kernels nicht benutzte Module wieder entladen
kann um so mehr Speicher zu haben.
Da Linux nun mal kein Microkernel ist, sollte man schon die Möglchkeit des Auslagerns
einiger Teile des Kernels als Module nutzen, allein schon wegen der Flexibilität und
Stabilität (da dann nur noch geladene Module den Absturz des Systems gefährden würden).
Außerdem sieht's schöner aus, wenn der Kernel selbst nur ca. 1 MB hat.
![Smile :)](./images/smilies/icon_smile.gif)