5400|12

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

初学驱动,请教一个简单的PnP的概念问题 [复制链接]

WDF下在,在即插即用的设置结构WDF_PNPPOWER_EVENT_CALLBACKS中有一个属性:PNP_WDF_DEVICE_PREPARE_HARDWARE   EvtDevicePrepareHardware;

这个属性指定了在设备插上机器时,操作系统要调用的函数。

我的理解: 第一步必须要先安装驱动程序, 然后在操作系统启动的时候就要启动一个服务或者其他进程,打开安装的设备,这样EvtDevicePrepareHardware指定的函数才能调用。
这我就不解了,别的设备都是在使用的时候才打开,为什么PnP的设备驱动在一启动的时候就要打开?那不是浪费资源吗?

谢谢

最新回复

枚举设备由系统自动完成  详情 回复 发表于 2009-12-22 23:05
点赞 关注

回复
举报

2

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
操作系统之所以能实现即插即用,根本原因是使用了中断!这就很容易理解为什么你插了U盘系统马上就能处理。其实在内核层面,是有一个线程一直在等待即插即用设备插拔的,要是没有这个处理线程,插上优盘也没有用的,所以这个PnP设备的驱动是必须系统启动的时候就要加载!
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
上面提到的等待线程就是pnp设备驱动的一部分
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

4
 
pnp不是你想象的那样的,他是有一个数据结构,在接到电平变化时,会触发PNP的例程,查找你的驱动。就象U盘一样,插进去,他的USB口会产生一个信号,然后开始寻找驱动。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
在最底层,设备插入后,应该是先产生一个中断,去执行相应的中断服务程序,中断服务程序就是驱动的一部分,然后再通知上层应用。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

6
 
引用 8 楼 wanyeye 的回复:
PNP 不是要实现的,你只要给定触发后的动作就可以了

这个是系统已经完成的,你有动作,,系统自动触发,,给你信号,,你根据信号类型,做相应动作就可以了

建议 看张帆的书 ,,讲的很详细



张帆的哪本书, 具体点,谢谢.
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

7
 
引用 4 楼 arm9linuxpp 的回复:
操作系统之所以能实现即插即用,根本原因是使用了中断!这就很容易理解为什么你插了U盘系统马上就能处理。其实在内核层面,是有一个线程一直在等待即插即用设备插拔的,要是没有这个处理线程,插上优盘也没有用的,所以这个PnP设备的驱动是必须系统启动的时候就要加载!


基本就是楼上说的设计思路
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(中级)

8
 
mark
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

9
 
PNP 不是要实现的,你只要给定触发后的动作就可以了

这个是系统已经完成的,你有动作,,系统自动触发,,给你信号,,你根据信号类型,做相应动作就可以了

建议 看张帆的书 ,,讲的很详细
 
 
 

回复

6

帖子

0

TA的资源

一粒金砂(初级)

10
 
4楼正解。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(中级)

11
 
嗯,大概是这么个意思,具体要去实践。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

12
 
帮你顶一下
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

13
 
枚举设备由系统自动完成
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表