
HvLoader.efi es una aplicación EFI para cargar un cargador de hipervisor externo.
HvLoader.efi es una aplicación EFI para cargar un cargador de hipervisor externo.
HvLoader.efi carga un binario de cargador de hipervisor dado (DLL, EFI, etc.) y llama a su punto de entrada pasando el ImageHandle de HvLoader.efi. De esta manera, el binario del cargador de hipervisor tiene acceso a las opciones de línea de comandos de HvLoader.efi y las utiliza como parámetros de configuración. La primera opción de línea de comandos de HvLoader.efi es la ruta al binario del cargador de hipervisor.
Actualmente, HvLoader.efi reside en la partición efi, es decir, /boot/efi, y solo tiene acceso a esa partición. Por lo tanto, cualquier argumento de ruta debe ser relativo a la partición /boot/efi. Esta restricción podría relajarse en futuras actualizaciones.
Un comando típico de grub para HvLoader.efi podría verse así:
chainloader /HvLoader.efi \lxhvloader.dll MSHV_ROOT=\Windows MSHV_ENABLE=1 MSHV_SCHEDULER_TYPE=0 ...
HvLoader.efi se construye en TianoCore EDK2.
El entorno de compilación se probó inicialmente en Ubuntu 22.04.1 LTS, pero se puede
configurar en Microsoft Windows, macOS y Unix.
Para obtener más información, consulte Introducción a EDK2.
En Linux, siga las instrucciones en Uso de EDK2 con GCC nativo y, finalmente, clone el repositorio y compile según Instrucciones comunes de compilación de EDK II para Linux.
HvLoader.efi reside como una aplicación en MdeModulePkg, es decir, /MdeModulePkg/Application/HvLoader.
Después de una compilación exitosa de EDK2, puede compilar HvLoader.efi siguiendo los pasos a continuación, ejecutando desde la ubicación raíz de edk2:
pushd MdeModulePkg/Application
popd
Agregue HvLoader a MdeModulePkg:
Compile HvLoder.efi:
build -p MdeModulePkg/MdeModulePkg.dsc -m MdeModulePkg/Application/HvLoader/HvLoader.inf
Según la configuración de destino (DEBUG/RELEASE), HvLoader.efi se genera en
Build/MdeModule/DEBUG_GCC5/X64/HvLoader.efi
o
Build/MdeModule/RELEASE_GCC5/X64/HvLoader.efi
HvLoader.efi debe estar firmado para el arranque seguro.