Что сделал менеджер загрузки Windows во время загрузки файла Windows From VHDX? (о принципе не настроить шаг)

394
pah8J

Когда вышла Windows 7, также появилась функция диспетчера загрузки Windows. Это родной ботинок. Однако есть волшебная точка, которая сбивает меня с толку.

Когда Windows Boot Manager работает, мы можем предположить, что он мощный, он читает файл VHDX и извлекает ядро ​​NT в RAM. Однако, когда ядро ​​NT было загружено в ОЗУ, срок службы загрузчика заканчивается .

Даже если ядро ​​NT мощное, оно все равно просто ядро. Ему нужно много других компонентов для работы, и я думаю, что ядро ​​NT не может читать VHDX-файлы.

Q1. Правильно ли описан прогресс загрузки загрузчика ntkernel, который я описал?

В1.1. Подходит ли там глагол «выдержка»? Или загрузчик просто поместите дескриптор в начальную позицию файла VHDX на диске без чего-либо еще.

Как правило, не только ограничение в Windows Boot Manager, загрузчик может быть другой программой.

Q2. Можно ли загружаться из файлов VDI, VMDK или ISO?

Q3. Основана ли возможность собственной загрузки VHDX на специальной структуре формата VHDX, что любая программа может напрямую обращаться к ней как к аналогичному способу доступа к файлу на реальном диске?

Q4. Есть ли какой-нибудь ресурс, который подробно объясняет принцип загрузки Native VHDX? (Это принцип, а не настройка пошагового руководства. Это поведение при начальной загрузке)

(Я только начинающий в аспекте Прошивки и загрузки, хочу получить помощь от мастера)

0
Почему ядро ​​не поддерживает это? Это просто наличие драйвера для этого. Который существует, потому что вы можете монтировать VHD / VHDX изначально. Daniel B 6 лет назад 0
@DanielB, спасибо за этот хороший момент, я только начинающий. Так есть ли реализация этого типа драйвера с открытым исходным кодом? pah8J 6 лет назад 0
@DanielB, сколько ресурсов процессора стоит такой драйвер? pah8J 6 лет назад 0

1 ответ на вопрос

1
  • Во-первых, Windows 7 не поддерживает загрузку с VHDX; поддерживается только VHD. VHDX поддерживается в Windows 8 и более поздних версиях.
  • Во-вторых, это известный факт, что bootmgrчасть загрузчика Windows, начиная с Windows Vista, поддерживает загрузку из VHD-файлов, WIM-файлов (так работает программа установки Windows изнутри sources\boot.wim), RAM-дисков, сети и различных контроллеров дисков, таких как SCSI и IDE. Согласно Windows Internals, шестое издание, часть 2, стр. 503:

    Bootmgr содержит облегченную библиотеку файловой системы NTFS (Bootmgr также поддерживает другие файловые системы, такие как FAT, El Torito CDFS и UDFS, а также файлы WIM и VHD); в отличие от кода загрузочного сектора, код файловой системы Bootmgr также может читать подкаталоги.

    - Руссинович Марк; Соломон, Давид А .; Ионеску, Алекс (2012). Windows Internals, шестое издание, часть 2 . Редмонд, Вашингтон: Microsoft Press. п. 503. ISBN 978-0-7356-6587-3.

    Все это на несколько порядков сложнее, чем VHD. (WIM фактически поддерживает дедупликацию и сжатие файлов.) Конечно, в какой-то момент управление передается Windows и ее собственным драйверам устройств. VHD драйвер есть %SystemRoot%\System32\Drivers\Vdrvroot.sys. Он загружает Vhdmp.sysи Fsdepends.sys.

  • В-третьих, ISO, VDI и VMDK не поддерживаются.

Для получения дополнительной информации вы можете проконсультироваться:

Но для более глубокого чтения мои рекомендации рекомендуют книги Windows Internals от Марка Руссиновича . Помните, что ни один из этих источников не раскрывает коммерческую тайну Microsoft, и этот веб-сайт также не поддерживает такие источники.

Эти драйверы встроены в ntkernel или просто загружены с диска ntkernel? pah8J 6 лет назад 0
@ MartinS.Victory Я обновил прозу, чтобы ответить на этот вопрос 6 лет назад 0

Похожие вопросы