Я пытаюсь выяснить как можно больше о том, как работает NTLDR. Мой самый большой вопрос следующий:
1) Какой исполняемый формат использует NTLDR?
Мне также интересно следующее, но как только я узнаю формат файла, держу пари, эти два будет легко определить.
2) Куда в памяти загружать NTLDR?
3) Какая точка входа для NTLDR?





NTLDR - это плоский двоичный файл, который предназначен для запуска в 16-битном реальном режиме. Загрузчик может загружать его где угодно (обычно пишется, чтобы его можно было перемещать), но поскольку он начинает выполняться в реальном режиме, он будет ограничен первым 1 МБ ОЗУ. Поскольку это простой плоский двоичный файл, точкой входа будет первый байт NTLDR. NTLDR обычно вызывается через FAR JMP.