amei
驱动牛犊
驱动牛犊
  • 注册日期2002-03-21
  • 最后登录2006-11-10
  • 粉丝0
  • 关注0
  • 积分30分
  • 威望3点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
阅读:1850回复:3

ddk中portio例子中不明白的地方,请教(2)

楼主#
更多 发布于:2003-03-24 21:41
genport.c文件,在GpdAddDevice例程中,用 IoCreateDevice创建的设备对象deviceObject,在该例程的结尾处有两条语句不明白:
1。deviceObject->Flags |=  DO_POWER_PAGABLE;
2。deviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
我查看了ntddk.h知道:
#define DO_POWER_PAGABLE   0x00002000    
#define DO_DEVICE_INITIALIZING  0x00000080
我的问题是:
1。deviceObject->Flags 在GpdAddDevice例程中的默认值是多少
2。deviceObject->Flags |=  DO_POWER_PAGABLE该语句的作用是什么?
我查看DDK文挡(1.2.2 Setting Device Object Flags for Power Management)说:On Windows 2000, drivers of devices that are in the paging path must not set the DO_POWER_PAGABLE flag.(处于分页路径的驱动程序不能设置此位)
隔了一段又有Windows 2000 drivers that can be paged must set the DO_POWER_PAGABLE flag. (可以分页的驱动程序必须设置此段),困惑
 :(
X_ray
驱动中牛
驱动中牛
  • 注册日期2003-02-03
  • 最后登录2004-07-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-03-25 03:20
IoCreateDevice时deviceObject->Flags是由底部驱动返回时决定。第二个问题你自己已经回答了。
cchen_wwei
驱动牛犊
驱动牛犊
  • 注册日期2004-02-17
  • 最后登录2009-11-23
  • 粉丝0
  • 关注0
  • 积分102分
  • 威望22点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-06 13:30
顶,学习
wshcdr
驱动牛犊
驱动牛犊
  • 注册日期2003-07-17
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分125分
  • 威望250点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
地板#
发布于:2012-03-21 00:29
关注这个问题
游客

返回顶部