/usr/src/
Documentation
arch include/asm-* 所有体系结构相关代码
arch下的每一个子目录代表linux支持的一种体结构,每个子目录至少3个子目录
kernel: 信号量处理、SMP等的实现
lib: strlen、memcpy之类通用函数的实现
mm: 内存管理程序的实现
boot(大部分):启动内核的部分或全部代码
drivers: 驱动程序
fs:文件系统代码(包括VFS)
文件系统:如ext4
虚拟文件系统:如proc(文件只存在于内存中)
include:内核中大部分头文件
asm-*: 预处理器宏和内联函数,多用汇编实现,×对应../../arch里面的子目录
linux: 所有平台无关的头文件 通常被链接或被全部复制到 /usr/include/linux
init: 内核的初始化代码,包括main.c,创建早期用户空间的代码等
ipc: IPC,进程间通信(interprocess communication),包括共享内存、信号量以及其他形式IPC的代码
kernel:内核中最核心的部分,进程调度(sched.c),进程的创建和撤销(fork.c exit.c)。和平台相关的另外一些代码在 arch/*/kernel中
lib: 库代码,标准C库的通用子集,字符串和内存操作等。与arch/lib不同,此处用c编写
mm:体系结构无关代码的内存管理代码
net:实现网络协议
scripts:无内核代码,用来配置内核的脚本文件,配置内核时,与用户进行交互
block:block层的实现
crypto:内核本身所用的加密API。实现了常用的加密和散列算法,还有一些压缩和CRC校验算法
security:不同的Linux安全模型的代码
sound:声卡驱动以及其他声音相关的代码
usr:用于打包和压缩的cpio等