wavelight
驱动老牛
驱动老牛
  • 注册日期2002-08-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1204回复:5

关于上层驱动的资源分配问题---!!!!!!!!!!!!

楼主#
更多 发布于:2003-01-11 10:00

    一个上层驱动 在处理pnp的  IRP_MN_START_DEVICE 时,是不是必须 给设备分配资源??
    处理如下之类的(resource->Type):
    CmResourceTypePort:
    CmResourceTypeMemory:

    是不是也有一些地方 不需要考虑这个??
<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我cool 故我在!<br></b></font></table> [img]http://www.driverdevelop.com/forum/upload/wavelight/2002-12-13_1.gif[/img]<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我在 故我cool!<br></b></font></table>
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-01-11 16:00
不太清楚你的意思.
pnp 设备的资源是系统自动分配的,你只是在该例程中检查是否分到了你所需的资源.
如果不是 pnp 设备,那我也不太清楚了. :D
nt 驱动程序好像都是自己检索设备并分配资源,但那时在 Driver init 时处理(wdm)
www.bjjcz.com
wavelight
驱动老牛
驱动老牛
  • 注册日期2002-08-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-01-12 14:27
不太清楚你的意思.
pnp 设备的资源是系统自动分配的,你只是在该例程中检查是否分到了你所需的资源.
如果不是 pnp 设备,那我也不太清楚了. :D
nt 驱动程序好像都是自己检索设备并分配资源,但那时在 Driver init 时处理(wdm)


首先 谢谢 lvwj   :)
我是看到 WDM 一书中对 Wdm2 ,UsbKbd 等的处理都考虑了资源分配:就是在处理IRP_MN_START_DEVICE 时, 在 StartDevice ()中调用了RetrieveResources() 检查分配的资源。

   如果这样的话,PNP 设备在什么情况下需要检查资源分配情况呢?     :(
     下次等问题清楚一点就过来放分!

    :)
<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我cool 故我在!<br></b></font></table> [img]http://www.driverdevelop.com/forum/upload/wavelight/2002-12-13_1.gif[/img]<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我在 故我cool!<br></b></font></table>
wavelight
驱动老牛
驱动老牛
  • 注册日期2002-08-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-01-13 09:06
自己顶一下,期待解答  :D
<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我cool 故我在!<br></b></font></table> [img]http://www.driverdevelop.com/forum/upload/wavelight/2002-12-13_1.gif[/img]<table style="filter: glow(color=red, strength=6)"><br><font color=white><b>我在 故我cool!<br></b></font></table>
lilo
驱动牛犊
驱动牛犊
  • 注册日期2001-05-24
  • 最后登录2008-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望6点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-01-20 11:33
在加载一个驱动的时候,系统总会以发下如下顺序的irp:
IRP_MN_QUERY_RESOURCE_REQUIREMENTS,
   查询设备的资源需求,由Bus Driver填写设备需要的资源。
IRP_MN_FILTER_RESOURCE_REQUIREMENTS,
   给设备一个修改设备资源的机会,如果你在这里发现Bus Driver分配给你的资源有问题的话,那就可以在此作一个修改。
IRP_MN_START_DEVICE.
   会把这个设备的资源列表当成参数传下来,这个时候原则上你已经不能修改资源了,而只能利用这些资源作一些初始化的工作了。
dregs
驱动小牛
驱动小牛
  • 注册日期2004-02-19
  • 最后登录2006-05-10
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望5点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-03-25 17:30
不太清楚你的意思.
pnp 设备的资源是系统自动分配的,你只是在该例程中检查是否分到了你所需的资源.
如果不是 pnp 设备,那我也不太清楚了. :D
nt 驱动程序好像都是自己检索设备并分配资源,但那时在 Driver init 时处理(wdm)



如果不是 pnp设备会怎样??
过程是怎样的?
应该怎么处理?

我收到了irp_mn_query_legacy_bus_information先。
如何处理应该?
还是我
游客

返回顶部