I was hoping that someone could set me straight with an issue regarding 
loadable kernel modules. This issue arises as I have switched over to using a 
HandSpring Visor from a Palm IIIxe, but relates really more towards a more 
general question on loadable kernel modules. It comes out of the hassle of 
having to su so I can install the visor and other USB modules after each boot 
so I can synch my visor; however.

Anyway, my understanding of kernel modules was that they would allow 
additional functionalilty to be added to the running kernel. So, you could 
create a smaller kernel and add those modules that you need for the running 
system.

I see the benefit of this for such applications as creating a generic compile 
for a distribution, including all sorts of hardware and other options as 
loadable options, and having the install process probe the hardware and 
requirements of the system and set up the startup scripts to load those 
modules that are needed for the system, rather the building a huge kernel 
that supports everything even if not needed on the target hardware.

However, since I build my own kernel, what is the benefit to this process, 
since I basically build only that which I need for the system anyway when I 
do the configuration process? For instance, I use autofs, but build it as a 
module. My startup scripts then detect that I have autofs filesystems in 
/etc/fstab and modprobe autofs, so in the end where am I achieving a savings?

It had been my understanding that the system could automatically load modules 
as needed. For that reason, I built the usb stuff (usb-serial, usb-interface, 
usb-uchi, visor) as modules, figuring that when I go to hotsync the visor 
then the modules can be dynamically loaded, and then unloaded after the 
hotsync, so they are only using memory while I am working with the visor - a 
relatively small part of the time. However,, the inconvenience of su'ing to 
root just to load the modules really outweights this benefit, so I am back to 
installing the modules in a startup script anyway....

I had understood that kmod's purpose was for the kernel to detect that a 
module was needed and automatically load it, but I don't see this working on 
my system - when I try to hotsync, I cannot do so until I manually install 
the visor and usb modules. Also, I don't see [kmod] listed via "ps aux" - 
even though I did select it in my configuration before I compiled my current 
kernel (I am using 2.4.4).

Can anyone help me out and / or set me straight on this?

Thanks.

Neal

Reply via email to