2

我想知道 Windows XP 引导加载程序 ( ntldr) 是否真的使用了 Windows 内核 ( ntoskrnl.exe) 导入声明?

ntoskrnl.exe具有以下导入模块BOOTVID.dllHAL.dllKDCOM.dll. 所以这三个模块是最先被加载的。想象一下内核有另一个模块被声明为导入的。这会导致ntldr也加载它吗?还是ntldr只知道它应该加载这四个模块而没有办法改变它?

4

2 回答 2

1

我建议在ntdev邮件列表中问这个问题。要得到回答,您最好解释为什么需要此信息以及您要做什么。我可以保证,在此列表中,您会找到能够回答此问题的人,但不能保证您会得到回答。他们对“黑客气味”有点敏感。

于 2009-03-24T15:49:32.830 回答
1

发生了,我自己找到了答案。并在ntdev邮件列表中确认。

ntldr确实只加载了问题中提到的四个文件,并且不使用任何导入声明。

您实际上可以通过创建一个存根内核(从实际内核中导入一些内容)并使用以下boot.ini选项(您将获得文件中已加载模块的列表)来检查这一点%SystemRoot%\ntbtlog.txt

/bootlog /kernel=stubkrnl.exe
于 2009-03-25T10:16:40.983 回答