Linux下的数据类型

内核使用的基本数据类型主要有:

int : 标准的C语言整数类型

u32 : 32位整数类型

pid_t : 特定内核对象pid的类型

在不同CPU体系结构上,C语言的数据类型所占用的空间是不一样的。在x86系列结构下,数据类型占用的字节数如下表所示:

arch char short int long ptr long long u8 u16 u32 u64
i686 1 2 4 4 4 8 1 2 4 8

在linux下,内核中的地址是unsigned long 类型,指针的大小与long类型的大小相同。

内核提供的所有数据类型在头文件<asm/types.h>中声明,这个文件又被<Linux/types.h>所包含。

Linux使用有前缀的类型用于将变量显露给用户空间,如__u32。

内核中很多数据类型是由typedef声明,这样便于移植。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章