Учитывает ли загрузчик Windows XP (NTLDR) объявления импорта ядра? - PullRequest
2 голосов
/ 24 марта 2009

Интересно, использует ли загрузчик Windows XP (ntldr) декларации импорта ядра Windows (ntoskrnl.exe)?

ntoskrnl.exe имеет следующие импортированные модули: BOOTVID.dll, HAL.dll и KDCOM.dll. Итак, эти три модуля загружаются первыми. Представьте, что в ядре есть другой модуль, объявленный импортированным. Это заставит ntldr также загрузить это? Или ntldr просто знает, что он должен загрузить эти четыре модуля, и нет способа это изменить?

Ответы [ 2 ]

1 голос
/ 25 марта 2009

Бывает, я нашел ответ сам. И подтвердил это в ntdev списке рассылки.

ntldr действительно загружает только четыре файла, упомянутых в вопросе, и не использует никаких объявлений импорта.

Вы можете проверить это, создав ядро-заглушку (которое импортирует что-то из реального ядра) и используя следующие опции boot.ini (вы получите список загруженных модулей в файле %SystemRoot%\ntbtlog.txt):

/bootlog /kernel=stubkrnl.exe
1 голос
/ 24 марта 2009

Предлагаю задать этот вопрос в ntdev списке рассылки. Чтобы получить ответ, лучше объясните, зачем вам эта информация и что вы пытаетесь сделать. Я могу заверить, что в этом списке вы найдете людей, способных ответить на это, но не можете заверить, что вам ответят. Они немного обидчивы о "пахнущем взломе".

...