wangmingliang
驱动牛犊
驱动牛犊
  • 注册日期2008-05-21
  • 最后登录2009-09-01
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望106点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1587回复:2

IopCloseFile究竟何时发出IRP_MJ_CLEANUP

楼主#
更多 发布于:2008-11-29 22:55
请教一下《NT文件系统内幕》(中文版)卖家一个问题。书中第262页第一段说“只有在一个文件对象的所有的外部用户句柄都已经关闭并且传递进来的SystemHandleCount的值等于1的时候,IopCloseFile()才发出一个到FSD的IRP_MJ_CLEANUP”。可是第261页倒数第三段第三行又说IRP_MJ_CLEANUP请求是用户进程最后关闭文件句柄的时候由I/O管理器发出(即,当这个表示所有用户打开实例的的文件对象的系统打开句柄计数等于0的时候)。第383页正数第四段又说,“现在,如果文件对象的所有句柄都关闭了(文件对象在系统范围的句柄计数等于0),I/O管理器创建一个主功能代码为IRP_MJ_CLEANUP的IRP来调用FSD的入口例程”。究竟是SystemHandleCount=0 还是SystemHandleCount=1的时候发IRP_MJ_CLEANUP呢?
wesley2005
驱动牛犊
驱动牛犊
  • 注册日期2007-06-16
  • 最后登录2011-03-29
  • 粉丝1
  • 关注0
  • 积分34分
  • 威望327点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-12-01 16:12
1
1
1
wangmingliang
驱动牛犊
驱动牛犊
  • 注册日期2008-05-21
  • 最后登录2009-09-01
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望106点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-12-02 21:48
兄弟有何依据呢?
游客

返回顶部