linux 2.6.17-IDE驱动程序源代码分析

本文探讨了Linux中块设备子系统的概念,并解释了inode中block_device字段的作用。通过分析ide_bus_type结构,介绍了设备探查流程及generic_ide_probe函数的工作原理。
块设备子系统是Linux中一个很重要的模块,在inode中有个字段是block_device类型的,它指向一个块设备,但是注意这里的“块设备”和 设备驱动里面的块设备的差别是非常大的,这里的块设备是一个比较高层的概念,而最底层的块设备在文件系统还触及不到。还是按照往常的方式来分析一下代码:首先看一下 
struct bus_type ide_bus_type = { 
.name = "ide", 
.match = ide_bus_match, 
.uevent = ide_uevent, 
.probe = generic_ide_probe, 
.remove = generic_ide_remove, 
.shutdown = generic_ide_shutdown, 
.dev_attrs = ide_dev_attrs, 
.suspend = generic_ide_suspend, 
.resume = generic_ide_resume, 
}; 
如果新加入一个设备或者驱动的时候就要进行枚举,这是很明了的了,一旦匹配成功则要调用总线或者驱动的 
Probe函数,这里是generic_ide_probe: 
static int generic_ide_probe(struct device *dev) 



 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1273946

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值