types.h 文件
用途
定义基本系统数据类型。
描述
/usr/include/sys/types.h 文件定义系统源代码中使用的数据类型。 由于某些系统数据类型可供用户代码访问,因此它们可用于增强跨不同机器和操作系统的可移植性。 例如,以下是pid_t类型允许的进程数超过未签名的短 (ushort_t) 类型和dev_t类型可以是 16 位而不是 32 位。
标准类型定义
types.h 文件包含以下标准类型定义,这些定义是使用 typedef 语句定义的:
| 项 | 描述 |
|---|---|
| daddr_t | 用于磁盘地址,但磁盘上的索引节点除外。 /usr/include/sys/filsys.h 文件格式描述了索引节点中使用的磁盘地址的格式。 |
| caddr_t | 核心 (内存) 地址。 |
| clock_t | 用于在 CLK_TCK中指定的系统时间。 |
| ino_t | 文件系统索引节点号。 |
| cnt_t | 文件系统引用计数类型。 |
| dev_t | 设备代码的主要部分和次要部分指定设备的设备类型和设备的单元号,并取决于系统的定制方式。 |
| chan_t | 通道号 (次命令的次命令)。 |
| off_t | 文件偏移量,以文件或设备开头的字节为单位。off_t通常定义为带符号的 32 位整数。 在支持大文件的编程环境中,off_t定义为带符号的, 64 位整数。 |
| offset_t | 64 位文件偏移量,以文件或设备开头的字节为单位进行度量。 |
| off64_t | 64 位文件偏移量,以文件或设备开头的字节为单位进行度量。 |
| soff_t | 32 位文件偏移量,以文件或设备开头的字节为单位进行度量。 |
| paddr_t | 真实地址 |
| key_t | IPC 密钥。 |
| time_t | 计时器标识。 自 1970 年 1 月 1 日 00:00:00 UCT 以来,时间以秒为单位进行编码。 |
| nlink_t | 文件链接数。 |
| mode_t | 文件方式。 |
| uid_t | 用户标识。 |
| gid_t | 组标识。 |
| mid_t | 模块标识。 |
| pid_t | 进程标识。 |
| slab_t | 安全标号。 |
| mtyp_t | 进程间通信 (IPC) 消息类型。 |
| size_t | 将数据类型用于对象的大小。 |
| ssize_t | 数据类型将用于字节计数或错误指示。 |
| uchar_t | 无符号字符。 |
| ushort_t | 无符号短符号。 |
| uint_t | 未签名的整数。 |
| ulong_t | 无符号长整型。 |
| trace_attr_t | 跟踪属性对象。 |
| trace_id_t | 跟踪流标识。 |
| trace_event_id_t | 跟踪事件类型的标识。 |
| trace_event_set_t | 已设置跟踪事件类型。 |
无符号整数和地址
types.h 文件还包含无符号整数和地址的以下类型定义:
typedef struct _quad { long val[2]; } quad;
typedef long swblk_t;
typedef unsigned long size_t; 以下类型定义仅适用于 BSD 兼容性:
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;