xuchangda
驱动牛犊
驱动牛犊
  • 注册日期2009-05-02
  • 最后登录2009-10-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望51点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1483回复:1

一个关于标志位拷贝的问题

楼主#
更多 发布于:2009-10-08 22:10
1. 为什么拷贝标志位要一个一个判断例如:
// 拷贝重要标志位。­
if(oldobj->Flags & DO_BUFFERED_IO)­

   (*fltobj)->Flags |= DO_BUFFERED_IO;­

if(oldobj->Flags & DO_DIRECT_IO)­

   (*fltobj)->Flags |= DO_DIRECT_IO;­

if(oldobj->Flags & DO_BUFFERED_IO)­

   (*fltobj)->Flags |= DO_BUFFERED_IO;­

直接(*fltobj)->Flags =oldobj->Flags 不行吗?


2.
(*fltobj)->Flags |=   DO_POWER_PAGABLE;
书上看到这句话,但不知道是什么意思....

大哥们帮帮忙啊~

bestshow
驱动牛犊
驱动牛犊
  • 注册日期2009-10-31
  • 最后登录2010-09-26
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望231点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2009-12-01 11:13
好好看看文档吧,过滤设备在绑定了设备后必须设置和被绑定设备相同的标志位,所以要先判断被绑定的设备的标志位直接(*fltobj)->Flags =oldobj->Flags 的话就少了判断了啊。
(*fltobj)->Flags |=   DO_POWER_PAGABLE的意思是(*fltobj)->Flags =  (*fltobj)->Flags |  DO_POWER_PAGABLE (按位或操作然后赋值给自身)
游客

返回顶部