Published on June 18, 2009
Kernel Modules In Linux Systems : Kernel Modules In Linux Systems Contents : Contents Kernel Kernel Modules Convenience Three components of the Linux Kernel Module i. Module Management ii. Driver Registration iii. Conflict Resolution. Kernel…. : Kernel…. It is responsible for maintaining the important abstractions of the operating system. It provides the main functions of the abstract machine (system calls and Interrupt and traps). Linux kernel can load modules dynamically . Structure of the Kernel : Structure of the Kernel Kernel Modules.. : Kernel Modules.. The kernel module has the ability to load and unload the arbitrary sections of kernel code on demand. The loadable kernel modules run in privileged kernel mode and has full access to all hardware capabilities. Convenience… : Convenience… Recompiling, relinking and reloading the entire kernel is a cumbersome cycle to undertake in case of developing a new driver, so if we use kernel modules we do not have to make a new kernel to test a new driver. The kernel’s module interface allows a third parties to write & distribute on their own terms device drivers or file systems. Contd.. : Contd.. Kernel modules allow a Linux system to be set up with a standard , minimal kernel ,without any extra device drivers built in. Three components of the Linux Kernel modules:- : Three components of the Linux Kernel modules:- The module management The driver registration A conflict-resolution mechanism a. Module Management : a. Module Management It allows modules to be loaded into memory and to talk to the rest of the kernel. Linux deals with this by splitting the job of the module loading into two separate sections:- The management of sections of module code in kernel memory. The handling of symbols that modules are allowed to reference. Module Management components: : Module Management components: Internal Symbol table in the Kernel. Module Loader Utility. Module Requestor. b. Driver Registration : b. Driver Registration The kernel maintains dynamic tables of all known drivers and provides a set of routines to allow the drivers to be added or removed from these tables. Registration table includes the following items: Device Drivers File Systems Network Protocols Binary Format c. Conflict Resolution : c. Conflict Resolution Linux provides a central conflict resolution mechanism to help arbitrate access to certain hardware resources. Its aims are as follows: To prevent modules from clashing over access to hardware resources. To prevent Auto probes from interfering with the existing device drivers. To resolve conflict among multiple drivers trying to access the same hardware. Slide 13: The Kernel Slide 14: The Kernel Slide 15: The Kernel Slide 16: Thank you...