xref: /cloud-hypervisor/hypervisor/src/lib.rs (revision 2518b9e3cdd8cc4cfcb9503ed849a34aa7ade9ef)
1 // Copyright © 2019 Intel Corporation
2 //
3 // SPDX-License-Identifier: Apache-2.0 OR BSD-3-Clause
4 //
5 // Copyright © 2020, Microsoft Corporation
6 //
7 // Copyright 2018-2019 CrowdStrike, Inc.
8 //
9 //
10 
11 //! A generic abstraction around hypervisor functionality
12 //!
13 //! This crate offers a trait abstraction for underlying hypervisors
14 //!
15 //! # Platform support
16 //!
17 //! - x86_64
18 //! - arm64
19 //!
20 
21 extern crate serde;
22 extern crate serde_derive;
23 extern crate serde_json;
24 extern crate thiserror;
25 
26 /// KVM implementation module
27 pub mod kvm;
28 
29 /// Hypevisor related module
30 pub mod hypervisor;
31 
32 /// Vm related module
33 pub mod vm;
34 
35 /// Architecture specific definitions
36 pub mod arch;
37 
38 /// CPU related module
39 mod cpu;
40 
41 pub use crate::hypervisor::{Hypervisor, HypervisorError};
42 pub use cpu::{HypervisorCpuError, Vcpu};
43 pub use kvm::*;
44 pub use vm::{DataMatch, HypervisorVmError, Vm};
45