cgroup devices 子系统分析

一.     devices子系统总体结构

cgroup devices子系统通过为每个cgroup维护一个设备访问权限链表管理和控制cgroup中进程对设备文件读写访问和设备文件节点创建。

从功能角度分析,devices子系统主要分为三个部分:子系统初始化接口、子系统文件接口和子系统访问控制接口。

子系统初始化接口在cgroup初始化各个子系统时被调用,功能是继承或者创建一个设备访问权限链表,标识cgroup中对各个系统设备访问权限等信息;文件接口的功能是用户进程修改cgroup目录下devices子系统配置文件内容后,更新devices子系统的配置;访问控制接口主要是检查设备的权限,该类接口提供系统访问设备文件或创建设备节点时检查操作的合法性,实现访问控制。

二.     devices子系统初始化接口

devices子系统为每个cgroup维护一个设备访问权限链表管理和控制cgroup中进程对设备文件读写访问和设备文件节点创建,初始化接口在cgroup初始化devices子系统时最重要的工作就是继承或者创建访问权限链表。


2.1  数据结构和接口

devices子系统的核心数据结构是structdev_whitelist_item,具体定义如下。

该数据结构标识一个设备权限的实体,major和minor说明主次设备号,type说明设备类型,而access具体制定了该设备的访问权限。每个设备的权限实体通过list链接成链表。

另一个数据结构是struct dev_cgroup,具体定义如下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值