内核版本:2.6.32-504.el6.x86_64
内核目录:
各个目录的内容:
arch:包含所有与系统结构相关的代码
|--x86 /*英特尔cpu及与之相兼容体系结构的子目录*/
| |--boot /*引导程序*/
| | |--compressed /*内核解压缩*/
| |--tools /*生成压缩内核映象的程序*/
| |--kernel /*相关内核特性实现的方式,如信号处理、时钟处理*/
| | |--lib /*硬件相关工具函数*/
block:块设备驱动
crypto:内核本身所用的加密API,实现了常用的加密和散列算法
drivers:驱动代码,驱动是一个控制硬件的软件,是内核中最庞大的一个目录。例如显卡、网卡、SCSI适配器,PCI总线、USB总线和其他任何Linux支持的外围设备或总线的驱动程序都可以在这找到
firmware:包含了让计算机读取和理解从设备发来的信号的代码
fs:虚拟文件系统(VFS)的代码,和各个不同文件系统的代码都在这个目录中
| |--devpts /* /dev/pts虚拟文件系统 */
| |--ext2 /* 第二扩展文件系统 */
| |--fat /* MS的fat32文件系统 */
| |--isofs /* ISO9660光盘cd-rom上的文件系统 */
include:包含内核中大部分的头文件,要修改处理器结构只需编辑核心的Makefile并重新运行Linux核心配置程序
init:内核的初始代码,包括main.c,创建早期用户空间的代码及其他的初始代码
ipc:IPC进程间通信,包含了共享内存、信号量及其形式的IPC代码
kernel:内核中最核心部分,包括进城的调度以及进程的创建和撤销(fork.c和exit.c)和平台相关的另一部分核心代码在arch和kernel目录下
mm:包含了与体系无关的部分内存管理代码
net:核心的网络部分代码
| |--appletalk /* 与苹果系统连网的协议 */
| |--802 /* 802无线通讯协议核心支持代码 */
| |--ax25 /* AX25无线INTERNET协议 */
| |--bridge /* 桥接设备 */
| |--ipv4 /* IP协议族V4版32位寻址模式 */
| |--ipv6 /* IP协议族V6版 */
samples:一些内核编程的范例
script:无内核代码,只包含了用来配置内核的脚本文件,当运行make menuconfig或者mak xconfig之类的命令配置内核时,用户就是和位于这个目录的脚本进行交互的
security:主要是一个SELinux的模块
sound:声卡驱动以及其他声音相关的源码
tool:这个文件夹中包含了和内核交互的工具
usr:实现用于打包和压缩的GZIP等,其中的代码在内核编译完成后创建这个文件
virt:包含虚拟代码,他允许用户一次运行多个操作系统
Makefile:这个脚本是编译内核的主要文件
Kbuild:设置一些内核设定的脚本
CPOYING:许可和授权信息