Last modified: Nov 23, 2011
Lecture #13 The Linux Kernel
Learner Outcomes
- Recompile the Linux Kernel from source code.
- Install a new kernel and make it optionally bootable from GRUB
- Compile and install dynamically loadable kernel modules
Activities
- Overview of the kernel architecture
- Steps to install:
- Download desired source tree from www.kernel.org
- Verify and extract the download.
- Configure the .config file that drives the kernel build
- Compile the kernel and the dynamically loadable modules
- Install the kernel
- Test and go back to step 3.
- Create a partition, /dev/sda10, using the remaining free space on the
virtual disk.
- Create an ext3 file system on it and mount it to a directory with the name,
linux-2.6.19 in /user/src/kernels.
- Change the owner of this directory to cis191:
chown cis191:cis191 linux-2.6.19
- Download the 2.6.19 version of the kernel, and verify its integrity.
- Extract the tarball into your mounted file system.
- Create the .config file from one of several options.
- Compile the kernel source code and install the new kernel.
Assignment
Resources
The Linux Kernel
- Kernel Background
- Downloading the Kernel
- www.kernel.org
- Users can download either: *.tar.bz2 or *.tar.gz
- Uncompress and extract in /usr/src directory, or on a file system
with about 1.5 GB of free space.
- Upgrading to a New Kernel
- Configuring the Kernel
- make config
- make menuconfig
- make gconfig
- make xconfig
- Compiling the Kernel
- make clean
- make bzImage
- make modules
- make modules_install
- Patches
- Applying a Kernel Patch
- Steps and commands for downloading a patch
- Installing the Kernel
- Compiling with bzImage
- The bzImage file
- Letting LILO or GRUB know
- Kernel Configuration Options
- Code maturity level options
- Loadable module support
- Processor type and features
- General setup
- Memory Technology Devices
- Plug n Play configuration
- Block devices
- Networking options
- Telephony support
- ATA/IDE/MFM/RLL support
- SCSI support
- I2O device support
- Network device support
- Amateur radio support
- IrDA (infrared) support
- ISDN subsystem
- Old CD-ROM drivers (not SCSI, not IDE)
- Character devices
- Multimedia devices
- File systems
- Console drivers
- Sound
- USB support
- Kernel hacking