Linux内核分析
一. Linux内核版本
Linux内核版本号由3个数字组成,例: 2.6.18-128.Elsmp。其中,第一个数字: 2 表示主版本号,第二个数字6 表示次版本号,表示稳定版本(因为有偶数)。而第三个数字 18 表示修订版本号,即表示修改的次数。128表示微调次数。前两个数字合在一齐可以描述内核系列。如稳定版的2.6.0,它是2.6版内核系列。而ELsmp指出了当前内核是为ELsmp特别调校的 EL ,Enterprise Linux smp : 表示支持多处理器,即该内核版本支持多处理器
二. 内核源代码的物理分布
在redhat linux下有一个目录,即/usr/src/kernels/目录,里面是linux系统的内核源文件,一般分为3个目录,其中:
- 2.6.9-11.EL-hugement-i686 for 大于4G memory 的内核.
- 2.6.9-11.EL-smp-i686 是for 多CPU的内核.
- 2.6.9-5.EL-i686 内核源代码
目录详解:
- include/ 子目录包含了建立内核代码时所需的大部分包含文件,这个模块利用其它模块重建内核。
- init/ 子目录包含了内核的初始化代码,这是内核开始工作的起点。
- arch/ 子目录包含了所有硬件结构特定的内核代码。arch/ 子目录下有i386和alpha模块等等。
- drivers/ 目录包含了内核中所有的设备驱动程序,如块设备,scsi 设备驱动程序等等。
- fs/ 目录包含了所有文件系统的代码,如:ext2, vfat模块的代码等等。
- net/ 目录