一、源码目录
版本2.6.34

二、include
linux系统编译核心需要的大部分公共头文件,跟cpu体系结构相关的头文件在/arch/x86/include等的目录下,这里还是以思维导图说明:
1、asm-generic - 是跟体系结构相关的代码,当体系结构无特殊处理时,就以
2、linux - 是跟平台无关的所有头文件
- byteorder - 多字节序相关的代码(单字节无序关心字节序)
int main(void) {
int x = 1;
// 整型4个字节,属于多字节变量,取地址并转成char指针类型,也就是只取第一个数据的第一个字节
//
if ((char )&x == 1) {
printf(“%s”, “little endian”);
} else {
printf(“%s”, “big endian”);
}
return 0;
}
```clittle endian
3、crypto** - 加密头文件
4、其他
a. /include的文件可能会包含/arch/*/include/asm/下的文件,如定义数据类型文件/include/linux/types.h,包含各体系结构对应的
; b. /arch//include/asm/下的文件也可能包含/include/linux下的文件,如体系结构相关的/arch//include/asm/pci.h包含
和
三、arch
所有跟体系架构相关的代码实现都在这里,包括各种cpu架构,架构子目录有x86、arm、alpha等

1、include
2、lib
主要由汇编实现的,内存拷贝、用户空间和内核空间数据拷贝等
- memcopy.c - 32位架构下内存拷贝,c实现
- memcopy_64.S - 64位内存拷贝
- copy_user_64.S - 64位架构下,用户和内核之间的数据拷贝,比如读取/写入io数据等
