POSIX -便携式操作系统接口for
必须为在Unix、c语言库中的头文件中实现POSIX的每台计算机定义一致的类型集。 其中每个类型定义都以_t结尾,因此很容易与本地c语言区分开来。
类型德夫
__kernel_dev_tdev_t;
类型德夫
__kernel_ino_tino_t;
类型德夫
__kernel_mode_tmode_t;
类型德夫
__kernel_nlink_tnlink_t;
类型德夫
__kernel_off_toff_t;
类型德夫
__kernel_pid_tpid_t;
类型德夫
__kernel_daddr_tdaddr_t;
类型德夫
__kernel_key_tkey_t;
类型德夫
_ _ kernel _ su seconds _ tsu seconds _ t;
类型德夫
__kernel_timer_ttimer_t;
类型德夫
__kernel_clockid_tclockid_t;
类型德夫
__kernel_mqd_tmqd_t;
#ifdef __KERNEL__
类型德夫
_Boolbool;
类型德夫
__kernel_uid32_tuid_t;
类型德夫
__kernel_gid32_tgid_t;
类型德夫
__kernel_uid16_tuid16_t;
类型德夫
__kernel_gid16_tgid16_t;
类型无符号
longuintptr_t;
#ifdef CONFIG_UID16
类型德夫
__kernel_old_uid_told_uid_t;
类型德夫
__kernel_old_gid_told_gid_t;
#endif
#else
类型德夫
__kernel_uid_tuid_t;
类型德夫
__kernel_gid_tgid_t;
#endif
类型德夫
__kernel_size_tsize_t;
#ifndef _SSIZE_T
#define _SSIZE_T
类型德夫
__kernel_ssize_tssize_t;
#endif
类型无符号
long__kernel_ino_t;
类型无符号
short__kernel_mode_t;
类型无符号
short__kernel_nlink_t;
类型德夫
long__kernel_off_t;
类型德夫
int__kernel_pid_t;
类型无符号
short__kernel_ipc_pid_t;
类型无符号
short__kernel_uid_t;
类型无符号
short__kernel_gid_t;
类型无符号
int__kernel_size_t;
类型德夫
int__kernel_ssize_t;
类型德夫
int__kernel_ptrdiff_t;
类型德夫
long__kernel_time_t;
类型德夫
long__kernel_suseconds_t;
类型德夫
long__kernel_clock_t;
类型德夫
int__kernel_timer_t;
为了便于数据的移植和统一,include/linux/types.h表明内核定义了类型别名,内核可以使用*_t (如dev_t )统一编程。 然后,在相关架构内对别名进行数据结构的具体定义。
简要分析几个例子:
1 ) dev_t
算术类型,包括major和minor。 对于特定设备文件,它通常位于/dev子目录下。 在linux上,dev_t可以在major (、minor )、mkdev )宏中操作。 这些在家里。
2 ) uid_t,gid_t
整数类型,分别保存唯一的ID编号或组ID编号。
3 ) pid_t
为系统中的每个进程提供唯一值的整数类型。
4 ) id_t
可以覆盖任务pid_t、uid_t或gid_t的整数类型,不能拆分使用。
5 ) off_t
有符号整数,以字节为单位测量文件大小。
6 ) size_t
无符号整数。 测量内存对象的大小。 例如,字符串、数组和缓冲区。
7 ) ssize_t
有符号整数。 可以表示字节数(正),也可以返回错误代码(负)。