2015-09-11 58 views
0

我正在學習Windows 7的啓動方式,並嘗試確保bootmgr不會爲其目的使用ntfs(例如,搜索winload.exe文件)。當ntfs.sys驅動程序正在加載?

儘管我有一些知識來分析bootmgr的代碼,但我試圖確定驅動程序ntfs.sys何時加載。

爲此目的,我正在研究HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Ntfs項,其中存在具有值「啓動文件系統」的組密鑰,然後我正在尋找該項到HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ GroupOrderList鍵。

但沒有「引導文件系統」鍵(但我發現在HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SafeBoot鍵的子鍵中提到了它)。

我正在查看HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ ServiceGroupOrder項中的List鍵,並且存在此鍵。

另外我運行Sysinternals LoadOrder實用程序來查看它,但沒有提到一般的ntfs驅動程序,但在「文件系統」組中提到了fs_rec鍵,但在註冊表中沒有「文件系統」組在GroupOrderList中(但我在HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem項中找到它)。

顯然,它更難以理解。

Нow我可以做出正確的結論來確定何時加載ntfs.sys驅動程序,或者我可以在哪裏閱讀它?

回答

1

使用Windows WPT並運行此命令:

xbootmgr -trace啓動-traceFlags BASE +潛伏期+ DISK_IO_INIT + DISPATCHER + FILE_IO +文件名+ REGISTRY -stackwalk輪廓+ CSwitch + ReadyThread + DiskReadInit + DiskWriteInit + ImageLoad + ImageUnload + RegQueryKey + RegEnumerateKey + RegEnumerateValueKey + RegDeleteKey + RegCreateKey + RegOpenKey + RegSetValue + RegDeleteValue + RegQueryValue + RegQueryMultipleValue + RegSetInformation + RegFlush + RegVirtualize + RegCloseKey + RegHiveInit + RegHiveDestroy + RegHiveLink + RegHiveDirty -resultPath C:\ TEMP

重啓後停止倒計時,在ETL加載到WPA.exe,load the debug symbols,將&丟棄來自Graph explorer「影像」圖形向右側(Analysis tab)並激活堆列。現在你可以看到內核的哪些功能加載驅動程序。

該命令還捕獲註冊表訪問權限,因此您可以查看啓動期間訪問哪些密鑰。

+0

謝謝,但它看起來像一個怪物 – jah

+0

是的,但它顯示了你很多東西,Windows的。 – magicandre1981

+0

我開始測試,因爲我知道wpt for windows 8/10中的wpa.exe是wpt for windows 7中的xperfview.exe(我從這裏安裝了wpt版本4.8.7701 http://www.microsoft.com/en- us/download/details.aspx?id = 8442),直到我找到你描述的信息,但是確實有很多數據需要研究,謝謝 – jah