acrn-hypervisor/hypervisor
Yuan Liu f8934df355 HV: implement wbinvd instruction emulation
wbinvd is used to write back all modified cache lines in the processor's
internal cache to main memory and invalidates(flushes) the internal caches.

Using clflushopt instructions to emulate wbinvd to flush each
guest vm memory, if CLFLUSHOPT is not supported, boot will fail.

Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Yuan Liu <yuan1.liu@intel.com>
Reviewed-by: Li, Fei1 <fei1.li@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-06-20 09:32:55 +08:00
..
acpi_parser hv: use 64bit FACS table address only beyond ACPI2.0 2019-05-30 16:47:19 +08:00
arch/x86 HV: implement wbinvd instruction emulation 2019-06-20 09:32:55 +08:00
boot HV: misra fix for patch set of Zephyr enabling 2019-06-06 09:40:52 +08:00
bsp/ld hv: dmar_parse: remove dynamic memory allocation 2019-05-10 11:33:37 +08:00
common HV: Fix OVMF hang issue when boot with lapic_pt 2019-06-19 08:40:48 +08:00
debug xHV: remove unused function is_dbg_uart_enabled 2019-05-22 16:36:03 +08:00
dm hv: Rename tables member of vPCI msix struct pci_msix 2019-06-17 11:06:56 +08:00
hw HV: remove function pci_pdev_foreach() 2019-05-23 14:06:51 +08:00
include HV: Add has_rt_vm API 2019-06-20 09:32:55 +08:00
lib hv: move 3 files to lib & arch folder 2019-06-14 14:22:51 +08:00
pre_build hv:merge static_checks.c 2019-05-14 09:16:33 +08:00
release xHV: remove unused function is_dbg_uart_enabled 2019-05-22 16:36:03 +08:00
scenarios HV: add hybrid scenario 2019-06-06 15:22:10 +08:00
scripts hv: remove CONFIG_PLATFORM_[SBL|UEFI] and UEFI_STUB 2019-03-13 10:26:55 +08:00
Kconfig HV: config: add Kconfig and defconfigs for sbl & uefi 2018-06-08 17:21:13 +08:00
MAINTAINERS update home page information 2018-05-15 17:19:39 +08:00
Makefile hv:build system initialization to sys_init_mod.a 2019-06-14 14:22:51 +08:00
README.rst doc: fix utf-8 punctuation, branding, spelling 2019-03-14 09:13:58 -07:00

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/