我正在学习Windows7是如何启动的,并且我试图确保bootmgr不会使用ntfs来实现它的目的(例如搜索winload.exe文件)。
虽然我有一点分析bootmgr代码的知识,但我正在尝试确定何时加载驱动程序ntfs.sys。
为此,我查看了HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Ntfs密钥,其中有一个值为"Boot File System“的组密钥,然后我在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList密钥中查找该密钥。
但是没有“引导文件系统”键(但我发现在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot键的子键中提到了它)。
我正在查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder密钥中的List密钥,这里有这个密钥。
我也运行HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem LoadOrder实用程序来查看它,但一般没有提到ntfs驱动程序,但在“文件系统”组中提到了fs_rec项,但在注册表中GroupOrderList中没有“文件系统”组(但我在Sysinterales键中找到了它)。
显然,它更难理解。
Н我如何才能得出正确的结论来确定何时加载ntfs.sys驱动程序,或者我可以在哪里了解到它?
发布于 2015-09-12 13:40:42
使用Windows WPT并运行以下命令:
BASE+LATENCY+DISK_IO_INIT+DISPATCHER+FILE_IO+FILENAME+REGISTRY profile+CSwitch+ReadyThread+DiskReadInit+DiskWriteInit+ImageLoad+ImageUnload+RegQueryKey+RegEnumerateKey+RegEnumerateValueKey+RegDeleteKey+RegCreateKey+RegOpenKey+RegSetValue+RegDeleteValue+RegQueryValue+RegQueryMultipleValue+RegSetInformation+RegFlush+RegVirtualize+RegCloseKey+RegHiveInit+RegHiveDestroy+RegHiveLink+RegHiveDirty
C:\TEMP xbootmgr -trace -traceFlags -stackwalk boot -resultPath C:\TEMP
重新启动后,停止倒计时,将ETL加载到WPA.exe,load the debug symbols中,将“图像”图形从Graph explorer拖放到右侧(Analysis tab)并激活堆栈列。现在您可以看到内核的哪些函数加载了驱动程序。
该命令还捕获注册表访问,因此您可以查看在引导期间正在访问哪些键。
https://stackoverflow.com/questions/32533358
复制相似问题