用途: 内核基础数据类型定义
来源: kernel/include/os_types.h:35
os_types.h 定义了 OneOS 内核使用的所有基础数据类型,确保在不同架构上的一致性。
- 类型名前缀统一为
os_,避免命名冲突 - 根据 CPU 架构自动适配(32位/64位)
- 遵循 C 标准,使用
<stdint.h> 定义基础类型
| 类型 | 定义 | 说明 |
|---|
os_bool_t | typedef int32_t os_bool_t | 布尔类型,用于表示真/假 |
| 类型 | 定义 | 说明 |
|---|
os_base_t | typedef signed long os_base_t | 与 CPU 字长相关的有符号类型 |
os_ubase_t | typedef unsigned long os_ubase_t | 与 CPU 字长相关的无符号类型 |
| 类型 | 定义 | 说明 |
|---|
os_err_t | typedef signed int os_err_t | 错误码类型 |
os_tick_t | typedef os_ubase_t os_tick_t | 时钟节拍类型 |
os_size_t | typedef unsigned long/int os_size_t | 大小类型(取决于 CPU 架构) |
os_ssize_t | typedef os_base_t os_ssize_t | 有符号大小类型 |
os_off_t | typedef os_base_t os_off_t | 偏移量类型 |
| 宏 | 值 | 说明 |
|---|
OS_UINT8_MAX | 0xffU | 8位无符号整数最大值 |
OS_UINT16_MAX | 0xffffU | 16位无符号整数最大值 |
OS_UINT32_MAX | 0xffffffffU | 32位无符号整数最大值 |
OS_UINT64_MAX | 0xffffffffffffffffULL | 64位无符号整数最大值 |
OS_TICK_MAX | OS_UINT32_MAX / OS_UINT64_MAX | 时钟节拍最大值(取决于架构) |
| 宏 | 说明 |
|---|
OS_ALIGN_SIZE | CPU 架构数据访问对齐大小(等于 sizeof(os_base_t)) |
| 类型 | 32位系统 | 64位系统 |
|---|
os_size_t | unsigned int | unsigned long |
OS_TICK_MAX | OS_UINT32_MAX | OS_UINT64_MAX |
通过 OS_ARCH_CPU_64BIT 宏进行条件编译。