struct struct

本文详细介绍了struct subsys_private结构体,它是用于存储驱动核心部分私有数据的重要结构体,包括kset、klist及通知链表等组件,为理解Linux内核中子系统如何组织和管理设备及驱动提供了基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/**
 *struct subsys_private-这个结构体用来存储驱动核心部分的私有数据(bus_type和calss strcuture)
 * @subsys - 用来定义子系统的kset的结构体
 * @devices_kset - 子系统的设备目录
 * @interfaces - 子系统接口的关联的链表
 * @mutex - 保护设备和接口链表
 * @drivers_kset - 驱动关联的链表
 * @klist_devices - 一个klist 用来重新迭代devices_kset
 * @klist_drivers - 一个klist 用来重新迭代drivers_kset
 * @bus_notifier - 一个总线告知链表,用来高速总线上发生的任何总线关心的事情
 * @bus - 指向与该结构体类型相关的bus_type类型的结构体 
 * @glue_dirs - 用来避免命名空间的冲突
 * @class - 指向与该结构体类型相关的结构体
 *这个结构体是实际kobject允许的安全静态分配的结构体。驱动核心意外的任何事物都不允许
	触碰这个区域
 */
struct subsys_private {
	struct kset subsys;
	struct kset *devices_kset;
	struct list_head interfaces;
	struct mutex mutex;

	struct kset *drivers_kset;
	struct klist klist_devices;
	struct klist klist_drivers;
	struct blocking_notifier_head bus_notifier;
	unsigned int drivers_autoprobe:1;
	struct bus_type *bus;

	struct kset glue_dirs;
	struct class *class;
};

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值