Trait HasVcpus
Source pub trait HasVcpus {
type Arch: Architecture;
// Required methods
fn arch(&self) -> Self::Arch;
fn vcpus_count(&self) -> usize;
fn registers(
&self,
vcpu: VcpuId,
) -> VcpuResult<<Self::Arch as Architecture>::Registers>;
fn special_registers(
&self,
vcpu: VcpuId,
) -> VcpuResult<<Self::Arch as Architecture>::SpecialRegisters>;
fn other_registers(
&self,
vcpu: VcpuId,
) -> VcpuResult<<Self::Arch as Architecture>::OtherRegisters>;
// Provided methods
fn iter_vcpus(&self) -> VcpuIterator ⓘ { ... }
fn instruction_pointer(&self, vcpu: VcpuId) -> VcpuResult<VirtualAddress> { ... }
fn stack_pointer(&self, vcpu: VcpuId) -> VcpuResult<VirtualAddress> { ... }
fn base_pointer(&self, vcpu: VcpuId) -> VcpuResult<Option<VirtualAddress>> { ... }
fn pgd(&self, vcpu: VcpuId) -> VcpuResult<PhysicalAddress> { ... }
fn kernel_per_cpu(&self, vcpu: VcpuId) -> VcpuResult<Option<VirtualAddress>> { ... }
}