mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-06-18 19:57:31 +00:00
This is a simply implement for the 32bit and 64bit elf loader. The loading function first reads the image header, and finds the program entries that are marked as PT_LOAD, then loads segments from elf file to guest ram. After that, it finds the bss section in the elf section entries, and clear the ram area it points to. Limitations: 1. The e_type of the elf image must be ET_EXEC(executable). Relocatable or dynamic code is not supported. 2. The loader only copies program segments that has a p_type of PT_LOAD(loadable segment). Other segments are ignored. 3. The loader doesn’t support Sections that are relocatable (sh_type is SHT_REL or SHT_RELA) 4. The 64bit elf’s entry address must below 4G. 5. The elf is assumed to be able to put segments to valid guest memory. Tracked-On: #6323 Signed-off-by: Zhou, Wu <wu.zhou@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com> |
||
---|---|---|
.. | ||
acpi_parser | ||
arch/x86 | ||
boot | ||
bsp/ld | ||
common | ||
debug | ||
dm | ||
hw | ||
include | ||
lib | ||
quirks | ||
release | ||
scripts | ||
MAINTAINERS | ||
Makefile | ||
README.rst |
ACRN Hypervisor ############### The open source `Project ACRN`_ defines a device hypervisor reference stack and an architecture for running multiple software subsystems, managed securely, on a consolidated system by means of a virtual machine manager. It also defines a reference framework implementation for virtual device emulation, called the "ACRN Device Model". The ACRN Hypervisor is a Type 1 reference hypervisor stack, running directly on the bare-metal hardware, and is suitable for a variety of IoT and embedded device solutions. The ACRN hypervisor addresses the gap that currently exists between datacenter hypervisors, and hard partitioning hypervisors. The ACRN hypervisor architecture partitions the system into different functional domains, with carefully selected guest OS sharing optimizations for IoT and embedded devices. You can find out more about Project ACRN on the `Project ACRN documentation`_ website. .. _`Project ACRN`: https://projectacrn.org .. _`ACRN Hypervisor`: https://github.com/projectacrn/acrn-hypervisor .. _`Project ACRN documentation`: https://projectacrn.github.io/