1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//! macOS Virtualization.framework backend.
//!
//! This module provides the macOS implementation of the hypervisor traits
//! using Apple's Virtualization.framework via `arcbox-vz`.
//!
//! # Requirements
//!
//! - macOS 11.0 or later
//! - Apple Silicon (ARM64) or Intel `x86_64`
//! - Entitlements for virtualization (com.apple.security.virtualization)
//!
//! # Architecture
//!
//! - `DarwinHypervisor`: Uses `arcbox-vz` for capability detection and VM creation
//! - `DarwinVm`: Uses `arcbox-vz` for VM lifecycle management
//! - `DarwinMemory`: Internal memory management with software dirty tracking
//! - `DarwinVcpu`: Placeholder vCPU for managed execution model
pub use DarwinHypervisor;
pub use DarwinMemory;
pub use DarwinVcpu;
pub use DarwinVm;
/// The MTU the VZ network device will be configured with — the VMM sizes its
/// datapath from this before the device exists (see `arcbox-vz`).
pub use desired_network_mtu;
/// Checks if virtualization is supported on this system.
///
/// Uses `arcbox-vz` to query the Virtualization.framework.