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

StackOverflow https://stackoverflow.com/questions/676969

Вопрос

Интересно, работает ли загрузчик 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 список рассылки.Чтобы получить ответ, вам лучше объяснить, зачем вам нужна эта информация и что вы пытаетесь сделать.Я могу заверить, что в этом списке вы найдете людей, способных ответить на этот вопрос, однако не могу гарантировать, что вам ответят.Они немного обидчивы из-за "запаха халтуры".

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top