$linuxjunkies
>

kernel module

also: loadable kernel module, LKM, .ko file

A piece of code that can be loaded into or removed from the Linux kernel at runtime without requiring a reboot. Kernel modules extend kernel functionality for hardware drivers, filesystems, and other features.

A kernel module is a dynamically loadable component that runs in kernel space, allowing you to add or remove functionality from a running Linux kernel. Unlike compiled-in kernel features, modules can be managed on-demand using tools like insmod, modprobe, and rmmod.

Common examples include hardware drivers (for network cards, graphics cards, USB devices), filesystem support (NTFS, ext4), and networking features. You can view loaded modules with lsmod and load a module with modprobe nvidia for an Nvidia GPU driver.

Modules offer flexibility: you load only what you need, saving memory and boot time. They're stored in /lib/modules/$(uname -r)/kernel/ organized by type (drivers, fs, net, etc.), typically with a .ko (kernel object) extension.

Related terms