Учитывает ли загрузчик Windows XP (NTLDR) объявления импорта ядра?
-
21-08-2019 - |
Вопрос
Интересно, работает ли загрузчик Windows XP (ntldr
) на самом деле использует ядро Windows (ntoskrnl.exe
) импортные декларации?
ntoskrnl.exe
имеет следующие импортированные модули: BOOTVID.dll
, HAL.dll
и KDCOM.dll
.Таким образом, эти три модуля загружаются первыми.Представьте, что в ядре есть другой модуль, объявленный как импортированный.Приведет ли это к ntldr
чтобы также загрузить его?Или делает ntldr
просто знать, что он должен загрузить эти четыре модуля, и нет никакого способа изменить это?
Решение 2
Случается, я сам нашел ответ.И получил это подтверждение в ntdev список рассылки.
ntldr
действительно, загружает только четыре файла, упомянутых в вопросе, и не использует никаких объявлений импорта.
Вы действительно можете проверить это, создав ядро-заглушку (которое импортирует что-то из фактического ядра) и используя следующее boot.ini
опции (вы получите список загруженных модулей в %SystemRoot%\ntbtlog.txt
файл):
/bootlog /kernel=stubkrnl.exe
Другие советы
Я предлагаю задать этот вопрос в ntdev список рассылки.Чтобы получить ответ, вам лучше объяснить, зачем вам нужна эта информация и что вы пытаетесь сделать.Я могу заверить, что в этом списке вы найдете людей, способных ответить на этот вопрос, однако не могу гарантировать, что вам ответят.Они немного обидчивы из-за "запаха халтуры".