Linux内核源码目录结构分析
/arch |
不同CPU架构下的核心代码。其中的每一个子目录都代表Linux支持的CPU架构 |
/block |
块设备通用函数 |
/crypto |
常见的加密算法的C语言实现代码,譬如crc32、md5、sha1等 |
/Documentation |
说明文档,对每个目录的具体作用进行说明 |
/drivers |
内核中所有设备的驱动程序,其中的每一个子目录对应一种设备驱动 |
/firmware |
固件代码 |
/fs |
Linux支持的文件系统代码,及各种类型的文件的操作代码。每个子目录都代表Linux支持的一种文件系统类型 |
/include |
内核编译通用的头文件 |
/init |
内核初始化的核心代码 |
/ipc |
内核中进程间的通信代码 |
/kernel |
内核的核心代码,此目录下实现了大多数Linux系统的内核函数。与处理器架构相关的内核代码在/kernel/$ARCH/kernel |
/lib |
内核共用的函数库,与处理器架构相关的库在/kernel/$ARCH/lib |
/mm |
内存管理代码,譬如页式存储管理内存的分配和释放等。与具体处理器架构相关的内存管理代码位于/arch/$ARCH/mm目录下 |
/net |
网络通信相关代码 |
/samples |
示例代码 |
/scripts |
用于内核配置的脚本文件,用于实现内核配置的图形界面 |
/security |
安全性相关的代码 |
/tools |
Linux中的常用工具 |
/usr |
内核启动相关的代码 |
/virt |
内核虚拟机相关的代码 |