lu0
lu0
论坛版主
论坛版主
  • 注册日期2001-06-10
  • 最后登录2016-04-05
  • 粉丝2
  • 关注0
  • 积分-6311分
  • 威望21111点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
20楼#
发布于:2003-02-12 13:10
SECUDISK.SYS不是FSD. 而是使用NTFS/VFAT的一个DRIVER而已. 使用方法就如我所描述.
Regards, Lu Lin Webmaster of Inside Programming http://www.lu0s1.com
Coolice
驱动小牛
驱动小牛
  • 注册日期2002-11-13
  • 最后登录2003-08-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
21楼#
发布于:2003-02-12 13:24
RYO的例子是创建自己的IRP,本身既然不是FSD,发出的IRP_MJ_READ/IRP_MJ_WRITE到了FSD,会由FSD通知Cache Manager发出paging io,你有没有试过啊?

如果你说的SECUDISK.SYS不是FSD的话,也一样。
Coolice
驱动小牛
驱动小牛
  • 注册日期2002-11-13
  • 最后登录2003-08-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
22楼#
发布于:2003-02-12 13:28
paging io正常情况都不是应用程序或者非fsd通知cache manager发出的,你的那个例子和应用程序原理上一点区别都没有。

你见过有人在程序或者 driver里读写文件加上IRP_PAGING_IO IRP_SYNCHRONOUS_PAGING_IO标志吗?当然不可能有!那么IRP_PAGING_IP就不用处理吗?当然不!呵呵
lu0
lu0
论坛版主
论坛版主
  • 注册日期2001-06-10
  • 最后登录2016-04-05
  • 粉丝2
  • 关注0
  • 积分-6311分
  • 威望21111点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
23楼#
发布于:2003-02-12 13:57
果然是我疏忽了. RYO的例子是FSD调用CCXXX来让CACHE MGR处理.
SECUDISK.SYS是按照FILE_NO_INTERMEDIATE_BUFFERING的处理的不算
非标志FSD又不算, 那到是没折了.
Regards, Lu Lin Webmaster of Inside Programming http://www.lu0s1.com
Coolice
驱动小牛
驱动小牛
  • 注册日期2002-11-13
  • 最后登录2003-08-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
24楼#
发布于:2003-02-12 14:01
呵呵,下面是我刚才用FILEMON跟踪这个例子的记录结果
其中IRP_MJ_READ* IRP_MJ_WRITE*两个IRP就是paging io

kfcopy.exe IRP_MJ_CREATE E:\\RYO\\KFC\\1.TXT SUCCESS Attributes: N Options: Open
kfcopy.exe FASTIO_QUERY_STANDARD_INFO E:\\RYO\\KFC\\1.TXT FAILURE
kfcopy.exe IRP_MJ_QUERY_INFORMATION E:\\RYO\\KFC\\1.TXT SUCCESS FileStandardInformation
kfcopy.exe IRP_MJ_CREATE E:\\RYO\\KFC\\2.TXT FILE NOT FOUND Attributes: N Options: Open
kfcopy.exe IRP_MJ_READ* E:\\RYO\\KFC\\1.TXT SUCCESS Offset: 0 Length: 4096
System        IRP_MJ_CLEANUP E:\\RYO\\KFC\\1.TXT SUCCESS
kfcopy.exe IRP_MJ_CREATE E:\\ryo\\kfc\\1.txt SUCCESS Attributes: Any Options: Open
kfcopy.exe IRP_MJ_CREATE E:\\ryo\\kfc\\2.txt SUCCESS Attributes: A Options: OverwriteIf
kfcopy.exe IRP_MJ_QUERY_INFORMATION E:\\ryo\\kfc\\1.txt SUCCESS FileStandardInformation
kfcopy.exe IRP_MJ_SET_INFORMATION E:\\ryo\\kfc\\2.txt SUCCESS FileAllocationInformation
kfcopy.exe IRP_MJ_READ E:\\ryo\\kfc\\1.txt SUCCESS Offset: 0 Length: 3
System        IRP_MJ_CLOSE E:\\RYO\\KFC\\1.TXT SUCCESS
System          IRP_MJ_QUERY_INFORMATION E:\\ryo\\kfc\\1.txt SUCCESS FileNameInformation
kfcopy.exe IRP_MJ_WRITE E:\\ryo\\kfc\\2.txt SUCCESS Offset: 0 Length: 3
System   IRP_MJ_QUERY_INFORMATION E:\\ryo\\kfc\\2.txt SUCCESS FileNameInformation
kfcopy.exe IRP_MJ_CLEANUP E:\\ryo\\kfc\\1.txt SUCCESS
kfcopy.exe IRP_MJ_FLUSH E:\\ryo\\kfc\\2.txt SUCCESS
kfcopy.exe IRP_MJ_WRITE* E:\\ryo\\kfc\\2.txt SUCCESS Offset: 0 Length: 4096
kfcopy.exe IRP_MJ_CLEANUP E:\\ryo\\kfc\\2.txt SUCCESS
System   IRP_MJ_SET_INFORMATION E:\\ryo\\kfc\\2.txt SUCCESS FileEndOfFileInformation
上一页 下一页
游客

返回顶部