Linux 内核总线
2024-09-06 15:27:56
一个总线是处理器和一个或多个设备之间的通道. 为设备模型的目的, 所有的设备都通过 一个总线连接, 甚至当它是一个内部的虚拟的,"平台"总线. 总线可以插入另一个 - 一个 USB 控制器常常是一个 PCI 设备, 例如. 设备模型表示在总线和它们控制的设备之间的 实际连接.
在 Linux 设备模型中, 一个总线由 bus_type 结构代表, 定义在 <linux/device.h>. 这 个结构看来象:
struct bus_type { char *name;
struct subsystem subsys; struct kset drivers; struct kset devices;
int (*match)(struct device *dev, struct device_driver *drv); struct device *(*add)(struct device * parent, char * bus_id); int (*hotplug) (struct device *dev, char **envp,
int num_envp, char *buffer, int buffer_size);
/* Some fields omitted */
};
name 成员是总线的名子, 有些同 pci. 你可从这个结构中见到每个总线是它自己的子系 统; 这个子系统不位于 sysfs 的顶层, 但是. 相反, 它们在总线子系统下面. 一个总线 包含 2 个 ksets, 代表已知的总线的驱动和所有插入总线的设备. 所以, 有一套方法我 们马上将涉及.
最新文章
- JAVA 设计模式 代理模式
- Redis的数据类型及操作
- javascript仿天猫加入购物车动画效果
- [POJ3264]Balanced Lineup(RMQ, ST算法)
- WHU 1572 Cyy and Fzz (AC自动机 dp )
- DM6446开发攻略——u-boot-1.3.4移植(1)
- IOS新手教程(二)-控制流
- tp5.带标签的缓存 创建和清除 测试
- obj-c中SEL签名和Invocation示例
- jQuery使用(十五):when()方法的使用
- Linux常用性能工具功能、用法及原理(一)
- FreeSWITCH 增删模组
- 利用SVD-推荐未尝过的菜肴2
- 编程菜鸟的日记-初学尝试编程-易传媒笔试题(C++实现)
- MySQL:事务的隔离性
- kafka libjvm 报错
- Vue基础进阶 之 计算属性的使用
- jquery 操作table样式拖动参考
- vue vue-resource 请求数据
- shell 数组使用简介
热门文章
- HDU - 4788 Hard Disk Drive (成都邀请赛H 水题)
- CF789D Mike and distribution
- Leetcode783.Minimum Distance Between BST Nodes二叉搜索树结点最小距离
- 阿里小二的日常工作要被TA们“接管”了!
- 某input元素值每隔三位添加逗号跟去掉逗号
- Flask 第二篇
- 基于Tablestore Tunnel的数据复制实战
- javascript —— 禁止通过 Enter 键提交表单
- H5页面IOS中键盘弹出导致点击错位的问题
- deepin 安装golang protobuf