home *** CD-ROM | disk | FTP | other *** search
- This file describes the strategy for dynamically loadable modules
- in the Linux kernel. This is not a technical description on
- the internals of module, but mostly a sample of how to compile
- and use modules.
-
- In this kernel you also have a possibility to create modules that are
- less dependent on the kernel version. This option can be selected
- during "make config", by enabling CONFIG_MODVERSIONS.
- Note: If you enable CONFIG_MODVERSIONS, you will need some utilities
- from the latest module support package: "modules-1.1.8*.tar.gz"!
-
- Anyway, your first step is to compile the kernel, as explained in the
- file README. It generally goes like:
-
- make config
- make dep
- make clean
- make zImage or make zlilo
-
- In "make config", you select what you want to include in the kernel.
- You will generally select the minimal set that is needed to boot:
-
- The filesystem of your root partition
- A scsi driver, but see below for a list of SCSI modules!
- Normal hard drive support
- Net support (CONFIG_NET)
- TCP/IP support (CONFIG_INET), but no drivers!
-
- plus those things that you just can't live without...
-
- What has been left out is generally loadable as a modules.
- The set of modules is rapidly increasing, but so far these are known:
-
- Most filesystems: minix, xiafs, msdos, umsdos, sysv, isofs
-
- Some SCSI drivers: aha1542, in2000
-
- Some ethernet drivers:
- plip, slip, dummy,
- de600, de620
- 3c501, 3c509
- eexpress, depca,
- ewrk3, apricot
-
- Some misc modules:
- lp: line printer
- binfmt_elf: elf loader
-
- When you have made the kernel, you create the modules by doing:
-
- make modules
-
- This will compile all modules and update the modules directory.
- In this directory you will then find a bunch of symbolic links,
- pointing to the various object files in the kernel tree.
-
- As soon as you have rebooted the newly made kernel, you can install
- and remove modules at will with the utilities: "insmod" and "rmmod".
-
-
- Now, after you have made all modules, you can also do:
-
- make modules_install
-
- This will copy all newly made modules into subdirectories under
- "/lib/modules/kernel_release/", where "kernel_release" is something
- like 1.1.83, or whatever the current kernel version is...
-
-
- Nifty features:
-
- If you have installed the utilities from "modules-1.1.8*.tar.gz",
- you will have access to two new utilities: "modprobe" and "depmod"
-
- Using the modprobe utility, you can load any module like this:
-
- /sbin/modprobe module
-
- without paying much attention to which kernel you are running.
- To use modprobe successfully, you generally place the following
- command in your /etc/rc.d/rc.S script.
-
- /sbin/depmod -a
-
- This computes the dependencies between the different modules.
- Then if you do, for example
-
- /sbin/modprobe umsdos
-
- you will automatically load _both_ the msdos and umsdos modules,
- since umsdos runs piggyback on msdos.
-
-
- Written by:
- Jacques Gelinas <jacques@solucorp.qc.ca>
- Bjorn Ekwall <bj0rn@blox.se>
-