(1)documentation
这个文件夹下没有内核代码,仅仅有一套实用的文档,但这些文档的质量不一。比如内核文档的文件系统,在该文件夹下有相当优秀并且相当完整的文档;而另外一部分内核,比如进程调度。则没有文档。
(2)arch
arch文件夹下的所以子文件夹中都是体系结构相关的代码。
(3)drivers
这个文件夹是内核中内容最复杂部分之中的一个。实际上。drivers文件夹下包括的代码占整个内核发行版本号代码的约一半以上。包括全部支持的外设的驱动。
(4)fs
linux支持的所以文件系统在fs文件夹下都有一个相应的子文件夹。文件系统是存储设备和须要訪问存储设备的进程之间的媒介。
(5)include
该文件夹包括了linux源程序树中大部分的头文件(*.h)。这些文件通常会依据不同类型进行分组。
(6)init
该文件夹以下有两个文件。当中比較重要的一个是main.c,它包括了大部分协调内核初始化的代码。
(7)ipc
该文件夹下的问价实现了System V 的进程间通讯。
(IPC)
(8)kernel
该文件夹下包括了linux中最重要的部分:实现平*立的基本功能。包括进程调度(kernel/sched.c)及创建和撤销进程的代码(kernel/fork.c和kernel/exit.c)。
(9)lib
包含了核心的库代码。只是与处理器结构相关的库代码被放在arch/*/lib。
(10)mm
该文件夹包括了与体系结构无关的内存管理代码,为每一个平台实现 和体系结构相关的内存管理程序 是放在arch/platform/mm中的。
(11)net
这个文件夹包括了linux应用的网络协议代码
(12)scripts
该文件夹下没有内核代码。它包括了用来配置内核的脚本。当执行 make menuconfig或者 make xconfig之类的命令配置内核时。用户就是在和位于这个文件夹下的脚本进行交互。