patch-1.3.22 linux/Documentation/modules.txt

Next file: linux/Documentation/networking/arcnet-jumpers.txt
Previous file: linux/Documentation/filesystems/umsdos.txt
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.21/linux/Documentation/modules.txt linux/Documentation/modules.txt
@@ -0,0 +1,107 @@
+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, hpfs,
+			  smbfs, nfs
+
+	Some SCSI drivers: aha1542, in2000
+
+	Some ethernet drivers:
+		plip, slip, dummy,
+		de600, de620
+		3c501, 3c509
+		eexpress, depca,
+		ewrk3, apricot
+
+	Most CDROM drivers:
+		aztcd:     Aztech,Orchid,Okano,Wearnes
+		cm206:     Philips/LMS CM206
+		gscd:      Goldstar GCDR-420
+		mcd, mcdx: Mitsumi LU005, FX001
+		optcd:     Optics Storage Dolphin 8000AT
+		sbpcd:     Matsushita/Panasonic CR52x, CR56x, CD200,
+		           Longshine LCS-7260, TEAC CD-55A
+		sonycd535: Sony CDU-531/535, CDU-510/515
+
+	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 <[email protected]>
+	Bjorn Ekwall <[email protected]>

FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected] with Sam's (original) version
of this