-
-
[讨论]Ntfs的小疑问,各位牛牛进来看看
-
发表于:
2010-1-16 13:17
6681
-
最近学习ntfs,看来 盟主和大米的帖子后, 遇到了一个问题
我现在的理解是文件系统驱动结构如下(不是设备栈啊):
ntfs.sys(fastfat.sys)-------------------- ----------------------设备对象\\ntfs 或 \\fat
|
|
ftdisk.sys(卷管理器)----------------------- ----------------\\device\\hardiskN\\volumeN
|
|
partmgr.sys(分区管理器驱动)------------------- ??
|
|
disk.sys(磁盘驱动 classpnp.sys)-----------------\\device\\HarddiskN\\DR0(整个磁盘),每个分区都有一个设备对象
|
|
atapi.sys(端口驱动 scsiport.sys)-------无设备对象
|
|
at1504x.sys(小端口驱动)--------------------------------------------------------\\at1504s
有如下几个疑问:
1. ntfs 是只创建一个设备对象,还是针对每个ntfs卷都创建一个设备对象?
2. 看reactos 的代码,中 知道在磁盘设备对象中存在一个vpb,是连接文件系统和磁盘设备的纽带,其中Vpb的RealDevice指向 磁盘设备对象(\\device\\HarddiskN\\DR0),那么在文件系统中调用 IocallDriver(--->vpb-->RealDevice, irp )时,岂不直接跨越了 卷管理器驱动和分区管理器驱动啊 ?
请高手指教下
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)