Linux Kernel Development Environment

So, you want to learn how to become a Linux kernel developer? Or you have been told by your manager, “Go write a Linux driver for this device.” HOWTO do Linux kernel development

Linux Kernel Source Code

3 Linux Kernel Source Code Repositories

Workstation Setup

[email protected]:~# apt-get update
[email protected]:~# apt-get upgrade
[email protected]:~# apt-get install linux-headers-$(uname -r) kernel-package libncurses5 libncurses5-dev git libelf-dev
[email protected]:~$ git clone git://
Cloning into 'linux'...
remote: Counting objects: 5396825, done.
remote: Compressing objects: 100% (2538/2538), done.
remote: Total 5396825 (delta 2876), reused 3072 (delta 2127)
Receiving objects: 100% (5396825/5396825), 984.15 MiB | 6.28 MiB/s, done.
Resolving deltas: 100% (4522724/4522724), done.
Checking connectivity... done.
Checking out files: 100% (59844/59844), done.
[email protected]:~/linux$ ls
arch crypto init MAINTAINERS net
block Documentation ipc Makefile README tools
built-in.o drivers Kbuild mm samples usr
certs firmware Kconfig modules.builtin scripts virt
COPYING fs kernel modules.order security vmlinux
CREDITS include lib Module.symvers sound vmlinux.o