
HvLoader.efi — это EFI-приложение для загрузки внешнего загрузчика гипервизора.
HvLoader.efi — это EFI-приложение для загрузки внешнего загрузчика гипервизора.
HvLoader.efi загружает указанный бинарный файл загрузчика гипервизора (DLL, EFI и т.д.) и вызывает его точку входа, передавая ImageHandle HvLoader.efi. Таким образом, бинарный файл загрузчика гипервизора получает доступ к параметрам командной строки HvLoader.efi и использует их в качестве параметров конфигурации. Первым параметром командной строки HvLoader.efi является путь к бинарному файлу загрузчика гипервизора.
В настоящее время HvLoader.efi находится в efi-разделе, т.е. /boot/efi, и имеет доступ только к этому разделу. Таким образом, все аргументы пути должны указываться относительно раздела /boot/efi. В будущих обновлениях это ограничение может быть ослаблено.
Типичная команда grub для HvLoader.efi может выглядеть следующим образом:
chainloader /HvLoader.efi \lxhvloader.dll MSHV_ROOT=\Windows MSHV_ENABLE=1 MSHV_SCHEDULER_TYPE=0 ...
HvLoader.efi собирается в TianoCore EDK2. Среда сборки была изначально протестирована на Ubuntu 22.04.1 LTS, но может быть настроена на Microsoft Windows, macOS и Unix.
Для получения дополнительной информации обратитесь к Getting Started with EDK2.
В Linux следуйте инструкциям на Using EDK2 with Native GCC, а затем клонируйте репозиторий и выполняйте сборку согласно Common EDK II Build Instructions for Linux.
HvLoader.efi находится как приложение в MdeModulePkg, т.е. /MdeModulePkg/Application/HvLoader.
После успешной сборки EDK2 вы можете собрать HvLoader.efi, выполнив следующие шаги, находясь в корневом каталоге edk2:
pushd MdeModulePkg/Application
popd
Добавьте HvLoader в MdeModulePkg:
Соберите HvLoder.efi:
build -p MdeModulePkg/MdeModulePkg.dsc -m MdeModulePkg/Application/HvLoader/HvLoader.inf
В зависимости от целевой конфигурации (DEBUG/RELEASE), HvLoader.efi создается в
Build/MdeModule/DEBUG_GCC5/X64/HvLoader.efi
или
Build/MdeModule/RELEASE_GCC5/X64/HvLoader.efi
HvLoader.efi необходимо подписать для Secure Boot.