深入Linux内核架构—简介和概述(七)

释放双眼,带上耳机,听听看~!

一、数据类型

与用户层程序相比,内核对与数据类型有关的一些问题采取了不同的处理方法。

1、类型定义

内核使用
typedef来定义各种数据类型,以避免依赖于体系结构相关的特性,比如,各个处理器上标准类型的位长可能都不见得相同。定义的类型名称如定义的类型名称如 sector_t (用于指定块设备上的扇区编号)、 pid_t (表示进程ID)等,这些都是由内核在特定于体系结构的代码中定义的,以确保相关类型的值落在适当的范围内。因为通常无须了解这些类型的定义是基于哪些基本的数据类型。

深入Linux内核架构—简介和概述(七)

备注:

如果某个变量的类型是
typedef而来的,则不能直接访问,而需要通过辅助函数。这样做确保了对相应数据类型的正确操作,尽管对用户来说类型定义其实是透明的。

在某些时候内核必须使用精确定义了位数的变量,例如,在需要向硬盘存储数据结构时。为允许数据在各种系统之间交换,无论数据在计算机内部如何表示,必须总是使用同样的外部格式。

给TA打赏
共{{data.count}}人
人已打赏
安全运维

WordPress网站专用docker容器环境带Waf

2020-7-18 20:04:44

安全运维

运维安全-Gitlab管理员权限安全思考

2021-9-19 9:16:14

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索