Expand description
Virtual machine architecture support code.
Re-exports§
pub use fdt::apply_device_tree_overlays;
pub use fdt::DtbOverlay;
pub use serial::add_serial_devices;
pub use serial::get_serial_cmdline;
pub use serial::set_default_serial_parameters;
pub use serial::GetSerialCmdlineError;
pub use serial::SERIAL_ADDR;
pub use sys::linux::PlatformBusResources;
Modules§
Structs§
- Hold the CPU feature configurations that are needed to setup a vCPU.
- Set of CPU cores.
- Memory region with optional size.
- General PCI config.
- Holds the elements needed to run a Linux VM. Created by
build_vm
. - SMBIOS table configuration
- Initial state for x86_64 VCPUs.
- The device and optional jail.
- Holds the pieces needed to build a VM. Passed to
build_vm
in theLinuxArch
trait below to create aRunnableLinuxVm
.
Enums§
- Errors for device manager.
- Implements
Arch
for 64-bit x86 + SSE Extensions. - Errors for image loading.
- Mapping of guest VCPU threads to host CPU cores.
Traits§
- A trait for managing cpuids for an x86_64 hypervisor and for checking its capabilities.
- Trait which is implemented for each Linux Architecture in order to set up the memory, cpus, and system devices and to boot the kernel.
- A wrapper around creating and using a VCPU on x86_64.
- A wrapper for using a VM on x86_64 and getting/setting its state.
Functions§
- Ensure all PCI devices have an assigned PCI address.
- Config a PCI device for used by this vm.
- Creates a root PCI device for use by this Vm.
- Creates Virtio MMIO devices for use by this Vm.
- Load an image from a file into guest memory.
- Load an image from a file into guest memory at the highest possible address.