发布时间:2012-07-27 14:53:49
Linux2.6内核引入了sysfs 文件系统。sysfs 被看成是与proc同类别的文件系统。sysfs 把连接在系统上的设备和总线组织成分级的文件,使其从用户空间可以访问到。sysfs的挂载过程,她是这样被挂载的。mount -t sysfs sysfs /sys Sysfs 被加载在/sys/ 目录下,它的子目录包括:? Block:在系统中发现的.........【阅读全文】
发布时间:2012-07-27 13:50:07
2.6 设备模型提供了这个抽象. 现在它用在内核来支持广泛的任务, 包括:电源管理和系统关机 这些需要一个对系统的结构的理解. 例如, 一个 USB 宿主适配器不可能被关闭, 在处理所有的连接到这个适配器的设备之前. 这个设备模型使能了一个按照正确顺序的系统硬件的遍历.与用户空间的通讯 sysf.........【阅读全文】
发布时间:2012-07-27 11:17:14
内核数据使用的数据类型分为 3 个主要类型: 标准 C 类型例如 int, 明确大小的类型例如 u32, 以及用作特定内核对象的类型 操作系统内核, 如同其他程序, 常常需要维护数据结构的列表. Linux 内核已经同时有几个列表实现. 为减少代码的数量, 内核开发者已经创建了一个标准环形的, 双链表; 鼓励需要操作列表的人.........【阅读全文】
发布时间:2012-07-27 10:06:25
Linux (许多其他系统一起)解决这个问题通过将中断处理分为 2 半. 所谓的前半部是实际响应中断的函数 -- 你使用 request_irq 注册的那个. 后半部是由前半部调度来延后执行的函数, 在一个更安全的时间. 最大的不同在前半部处理和后半部之间是所有的中断在后半部执行时都使能 -- 这就是为什么它在一个更安全时间运行. 在.........【阅读全文】
发布时间:2012-07-27 09:48:02
中断线是一个宝贵且常常有限的资源, 特别当它们只有 15 或者 16 个时. 内核保持了中断线的一个注册, 类似于 I/O 端口的注册. 一个模块被希望来请求一个中断通道(或者 IRQ, 对于中断请求), 在使用它之前, 并且当结束时释放它. 在很多情况下, 也希望模块能够与其他驱动共享中断线, 如同我们将看到的. 下面的函数, 声明在 , .........【阅读全文】