On Tue, Nov 16, 1999 at 01:27:10AM +0100, J Horacio MG wrote: > here I have a doubt about the options which can be configured as > loadable modules instead of compiling into the kernel. Say I use a > device too often, eg. cdrom. If I configure it as a loadable module, > would this imply the performance would be any different than if compiled > it in the kernel? Or, ppp, or other services which can be used oftenly.
If there is a performance impact to using modules, I suspect it must be negligable. The only things that *need* to be compiled into the kernel are the drivers that are needed to get the root filesystem mounted. Everything else can and IMO should be done with modules. The only exception I can think of is the fbdev driver--which *has* to be in the kernel so you can see the cool penguin graphic right away on bootup. ;) Still, check with the help messages during "make config" to see what they suggest for any given driver. I think that the main benefit to using modules is that when you're playing around with different parameters for drivers which need them, they can be given on the commandline to insmod instead of having to reboot and pass them via lilo. >[...] > # rm -rf /lib/modules/2.0.36/ > well, if I removed the old modules and had problems with the new kernel, > I wouldn't be able to use the old kernel, so this step should probably > (definately) be avoided. Right--as aphro mentioned, you only want to revove these if you really need the space. >[...] > # mv /path/to/System.map /boot/System.map-2.2.10 Yep, and after rebooting successfully into the new kernel, you might want to: # ln -sf /boot/System.map-2.2.10 /boot/System.map but I'm not sure if that's actually necessary. > # cd / > # rm vmlinuz > # ln -s /boot/vmlinuz-2.2.10 vmlinuz Assuming the existing vmlinuz is just a symlink, then sure. You'll still definately want the old kernel around, though, in case the new one doesn't work. > next, reflect the changes in /etc/lilo.conf > > # lilo Right--make sure to put a section for the old kernel in lilo.conf. Here's a snippet from mine just as an example: boot = /dev/sda # New kernel image = /vmlinuz root = /dev/sda1 label = Linux vga = 5 append="video=matrox:xres:1024,yres:768,depth:16,nopan,pixclock:13334,left:144,right:24,upper:29,lower:3,hslen:136,vslen:6,dpms" read-only # Old kernel image = /vmlinuz-2.2.12 root = /dev/sda1 label = OldLinux vga = 5 read-only > Anything missing? I don't think so. Just make sure you have a working boot floppy just in case anything goes wrong. Once you're comfortable making kernels this way, you might want to consider doing it the "Debian way" with make-kpkg etc. I just started that recently and it's really a nice system. -Kevin