Dynamic Kernel Module Support
{{Short description|Linux kernel framework}}
{{distinguish|DKMS}}
{{Infobox software
| name = Dynamic Kernel Module Support
| logo =
| screenshot =
| caption =
| collapsible =
| author = Gary Lerhaupt
| developer = Dell
| released = {{Start date and age|2003}}
| latest release version = 3.0.7{{cite web
| author =
| url = https://github.com/dell/dkms/releases/tag/v3.0.7
| title = Fixes for ldtarball · dell/dkms
| website = GitHub
| date = 2022-09-27
| accessdate = 2022-10-08}}
| latest release date = {{Start date and age|2022|09|27}}
| latest preview version =
| latest preview date =
| programming language = Bash
| operating system = Linux
| platform =
| size =
| language =
| genre =
| license = GPLv2
| website = {{URL|https://github.com/dell/dkms}}
}}
Dynamic Kernel Module Support (DKMS) is a program/framework that enables generating Linux kernel modules whose sources generally reside outside the kernel source tree. The concept is to have DKMS modules automatically rebuilt when a new kernel is installed.{{cite journal
| last = Lerhaupt
| first = Gary
| date = September 1, 2003
| title = Kernel Korner - Exploring Dynamic Kernel Module Support (DKMS)
| url = https://www.linuxjournal.com/article/6896
| journal = Linux Journal
| archiveurl = https://web.archive.org/web/20190813132009/https://www.linuxjournal.com/article/6896
| archivedate = August 13, 2019
| access-date = }}
Framework
An essential feature of DKMS is that it automatically recompiles all DKMS modules if a new kernel version is installed. This allows drivers and devices outside of the mainline kernel to continue working after a Linux kernel upgrade.https://www.kernel.org/doc/ols/2004/ols2004v1-pages-187-202.pdf
Another benefit of DKMS is that it allows the installation of a new driver on an existing system, running an arbitrary kernel version, without any need for manual compilation or precompiled packages provided by the vendor.
DKMS was written by the Linux Engineering Team at Dell in 2003. It is included in many distributions, such as Ubuntu, Debian, Fedora, SUSE, Mageia and Arch. DKMS is free software released under the terms of the GNU General Public License (GPL) v2 or later.
DKMS supports both the rpm and deb package formats out of the box.
See also
References
{{Portal|Free and open-source software}}
{{Reflist}}
External links
- {{GitHub|dell/dkms|Dynamic Kernel Module Support}}
- [https://wiki.centos.org/HowTos/BuildingKernelModules#line-72 Building a kernel module using Dynamic Kernel Module Support (DKMS)] on CentOS Wiki
- [https://wiki.archlinux.org/title/Dynamic_Kernel_Module_Support Dynamic Kernel Module Support] on [https://wiki.archlinux.org/ ArchWiki]