var searchIndex = {}; searchIndex["hypervisor"] = {"doc":"","items":[[0,"osx","hypervisor","Hypervisor API for OSX",null,null],[3,"vCPU","hypervisor::osx","Virtual CPU",null,null],[12,"id","","Virtual CPU ID",0,null],[4,"Error","","Error returned after every call",null,null],[13,"Success","","Success",1,null],[13,"Error","","Error",1,null],[13,"Busy","","Busy",1,null],[13,"BadArg","","Bad argument",1,null],[13,"NoRes","","No resources",1,null],[13,"NoDev","","No device",1,null],[13,"Unsupp","","Unsupported",1,null],[5,"create_vm","","Creates a VM instance for the current task",null,{"inputs":[],"output":{"name":"error"}}],[5,"destory_vm","","Destroys the VM instance associated with the current task",null,{"inputs":[],"output":{"name":"error"}}],[0,"ffi","","Bindings to the Hypervisor Framework",null,null],[4,"hv_x86_reg_t","hypervisor::osx::ffi","x86 architectural register IDs",null,null],[13,"HV_X86_RIP","","",2,null],[13,"HV_X86_RFLAGS","","",2,null],[13,"HV_X86_RAX","","",2,null],[13,"HV_X86_RCX","","",2,null],[13,"HV_X86_RDX","","",2,null],[13,"HV_X86_RBX","","",2,null],[13,"HV_X86_RSI","","",2,null],[13,"HV_X86_RDI","","",2,null],[13,"HV_X86_RSP","","",2,null],[13,"HV_X86_RBP","","",2,null],[13,"HV_X86_R8","","",2,null],[13,"HV_X86_R9","","",2,null],[13,"HV_X86_R10","","",2,null],[13,"HV_X86_R11","","",2,null],[13,"HV_X86_R12","","",2,null],[13,"HV_X86_R13","","",2,null],[13,"HV_X86_R14","","",2,null],[13,"HV_X86_R15","","",2,null],[13,"HV_X86_CS","","",2,null],[13,"HV_X86_SS","","",2,null],[13,"HV_X86_DS","","",2,null],[13,"HV_X86_ES","","",2,null],[13,"HV_X86_FS","","",2,null],[13,"HV_X86_GS","","",2,null],[13,"HV_X86_IDT_BASE","","",2,null],[13,"HV_X86_IDT_LIMIT","","",2,null],[13,"HV_X86_GDT_BASE","","",2,null],[13,"HV_X86_GDT_LIMIT","","",2,null],[13,"HV_X86_LDTR","","",2,null],[13,"HV_X86_LDT_BASE","","",2,null],[13,"HV_X86_LDT_LIMIT","","",2,null],[13,"HV_X86_LDT_AR","","",2,null],[13,"HV_X86_TR","","",2,null],[13,"HV_X86_TSS_BASE","","",2,null],[13,"HV_X86_TSS_LIMIT","","",2,null],[13,"HV_X86_TSS_AR","","",2,null],[13,"HV_X86_CR0","","",2,null],[13,"HV_X86_CR1","","",2,null],[13,"HV_X86_CR2","","",2,null],[13,"HV_X86_CR3","","",2,null],[13,"HV_X86_CR4","","",2,null],[13,"HV_X86_DR0","","",2,null],[13,"HV_X86_DR1","","",2,null],[13,"HV_X86_DR2","","",2,null],[13,"HV_X86_DR3","","",2,null],[13,"HV_X86_DR4","","",2,null],[13,"HV_X86_DR5","","",2,null],[13,"HV_X86_DR6","","",2,null],[13,"HV_X86_DR7","","",2,null],[13,"HV_X86_TPR","","",2,null],[13,"HV_X86_XCR0","","",2,null],[13,"HV_X86_REGISTERS_MAX","","",2,null],[4,"hv_vmx_capability_t","","Enum type of VMX cabability fields",null,null],[13,"HV_VMX_CAP_PINBASED","","Pin-based VMX capabilities",3,null],[13,"HV_VMX_CAP_PROCBASED","","Primary proc-based VMX capabilities",3,null],[13,"HV_VMX_CAP_PROCBASED2","","Secondary proc-based VMX capabilities",3,null],[13,"HV_VMX_CAP_ENTRY","","VM-entry VMX capabilities",3,null],[13,"HV_VMX_CAP_EXIT","","VM-exit VMX capabilities",3,null],[13,"HV_VMX_CAP_PREEMPTION_TIMER","","VMX preemption timer frequency",3,null],[5,"hv_vm_create","","Creates a VM instance for the current task",null,null],[5,"hv_vm_destroy","","Destroys the VM instance associated with the current task",null,null],[5,"hv_vcpu_create","","Creates a vCPU instance for the current thread",null,null],[5,"hv_vcpu_run","","Executes a vCPU",null,null],[5,"hv_vcpu_interrupt","","Forces an immediate VMEXIT of a set of vCPUs of the VM",null,null],[5,"hv_vcpu_get_exec_time","","Returns the cumulative execution time of a vCPU in nanoseconds",null,null],[5,"hv_vcpu_flush","","Forces flushing of cached vCPU state",null,null],[5,"hv_vcpu_invalidate_tlb","","Invalidates the TLB of a vCPU",null,null],[5,"hv_vcpu_destroy","","Destroys the vCPU instance associated with the current thread",null,null],[5,"hv_vcpu_read_register","","Returns the current value of an architectural x86 register\nof a vCPU",null,null],[5,"hv_vcpu_write_register","","Sets the value of an architectural x86 register of a vCPU",null,null],[5,"hv_vcpu_read_fpstate","","Returns the current architectural x86 floating point and\nSIMD state of a vCPU",null,null],[5,"hv_vcpu_write_fpstate","","Sets the architectural x86 floating point and SIMD state of\na vCPU",null,null],[5,"hv_vcpu_enable_native_msr","","Enables an MSR to be used natively by the VM",null,null],[5,"hv_vcpu_read_msr","","Returns the current value of an MSR of a vCPU",null,null],[5,"hv_vcpu_write_msr","","Set the value of an MSR of a vCPU",null,null],[5,"hv_vm_sync_tsc","","Synchronizes guest Timestamp-Counters (TSC) across all vCPUs",null,null],[5,"hv_vm_map","","Maps a region in the virtual address space of the current\ntask into the guest physical address space of the VM",null,null],[5,"hv_vm_unmap","","Unmaps a region in the guest physical address space of the VM",null,null],[5,"hv_vm_protect","","Modifies the permissions of a region in the guest physical\naddress space of the VM",null,null],[5,"hv_vmx_vcpu_read_vmcs","","Returns the current value of a VMCS field of a vCPU",null,null],[5,"hv_vmx_vcpu_write_vmcs","","Sets the value of a VMCS field of a vCPU",null,null],[5,"hv_vmx_read_capability","","Returns the VMX capabilities of the host processor",null,null],[5,"hv_vmx_vcpu_set_apic_address","","Sets the address of the guest APIC for a vCPU in the\nguest physical address space of the VM",null,null],[0,"consts","","",null,null],[17,"HV_SUCCESS","hypervisor::osx::ffi::consts","",null,null],[17,"HV_ERROR","","",null,null],[17,"HV_BUSY","","",null,null],[17,"HV_BAD_ARGUMENT","","",null,null],[17,"HV_NO_RESOURCES","","",null,null],[17,"HV_NO_DEVICE","","",null,null],[17,"HV_UNSUPPORTED","","",null,null],[17,"VMCS_VPID","","",null,null],[17,"VMCS_CTRL_POSTED_INT_N_VECTOR","","",null,null],[17,"VMCS_CTRL_EPTP_INDEX","","",null,null],[17,"VMCS_GUEST_ES","","",null,null],[17,"VMCS_GUEST_CS","","",null,null],[17,"VMCS_GUEST_SS","","",null,null],[17,"VMCS_GUEST_DS","","",null,null],[17,"VMCS_GUEST_FS","","",null,null],[17,"VMCS_GUEST_GS","","",null,null],[17,"VMCS_GUEST_LDTR","","",null,null],[17,"VMCS_GUEST_TR","","",null,null],[17,"VMCS_GUEST_INT_STATUS","","",null,null],[17,"VMCS_HOST_ES","","",null,null],[17,"VMCS_HOST_CS","","",null,null],[17,"VMCS_HOST_SS","","",null,null],[17,"VMCS_HOST_DS","","",null,null],[17,"VMCS_HOST_FS","","",null,null],[17,"VMCS_HOST_GS","","",null,null],[17,"VMCS_HOST_TR","","",null,null],[17,"VMCS_CTRL_IO_BITMAP_A","","",null,null],[17,"VMCS_CTRL_IO_BITMAP_B","","",null,null],[17,"VMCS_CTRL_MSR_BITMAPS","","",null,null],[17,"VMCS_CTRL_VMEXIT_MSR_STORE_ADDR","","",null,null],[17,"VMCS_CTRL_VMEXIT_MSR_LOAD_ADDR","","",null,null],[17,"VMCS_CTRL_VMENTRY_MSR_LOAD_ADDR","","",null,null],[17,"VMCS_CTRL_EXECUTIVE_VMCS_PTR","","",null,null],[17,"VMCS_CTRL_TSC_OFFSET","","",null,null],[17,"VMCS_CTRL_VIRTUAL_APIC","","",null,null],[17,"VMCS_CTRL_APIC_ACCESS","","",null,null],[17,"VMCS_CTRL_POSTED_INT_DESC_ADDR","","",null,null],[17,"VMCS_CTRL_VMFUNC_CTRL","","",null,null],[17,"VMCS_CTRL_EPTP","","",null,null],[17,"VMCS_CTRL_EOI_EXIT_BITMAP_0","","",null,null],[17,"VMCS_CTRL_EOI_EXIT_BITMAP_1","","",null,null],[17,"VMCS_CTRL_EOI_EXIT_BITMAP_2","","",null,null],[17,"VMCS_CTRL_EOI_EXIT_BITMAP_3","","",null,null],[17,"VMCS_CTRL_EPTP_LIST_ADDR","","",null,null],[17,"VMCS_CTRL_VMREAD_BITMAP_ADDR","","",null,null],[17,"VMCS_CTRL_VMWRITE_BITMAP_ADDR","","",null,null],[17,"VMCS_CTRL_VIRT_EXC_INFO_ADDR","","",null,null],[17,"VMCS_CTRL_XSS_EXITING_BITMAP","","",null,null],[17,"VMCS_GUEST_PHYSICAL_ADDRESS","","",null,null],[17,"VMCS_GUEST_LINK_POINTER","","",null,null],[17,"VMCS_GUEST_IA32_DEBUGCTL","","",null,null],[17,"VMCS_GUEST_IA32_PAT","","",null,null],[17,"VMCS_GUEST_IA32_EFER","","",null,null],[17,"VMCS_GUEST_IA32_PERF_GLOBAL_CTRL","","",null,null],[17,"VMCS_GUEST_PDPTE0","","",null,null],[17,"VMCS_GUEST_PDPTE1","","",null,null],[17,"VMCS_GUEST_PDPTE2","","",null,null],[17,"VMCS_GUEST_PDPTE3","","",null,null],[17,"VMCS_HOST_IA32_PAT","","",null,null],[17,"VMCS_HOST_IA32_EFER","","",null,null],[17,"VMCS_HOST_IA32_PERF_GLOBAL_CTRL","","",null,null],[17,"VMCS_CTRL_PIN_BASED","","",null,null],[17,"VMCS_CTRL_CPU_BASED","","",null,null],[17,"VMCS_CTRL_EXC_BITMAP","","",null,null],[17,"VMCS_CTRL_PF_ERROR_MASK","","",null,null],[17,"VMCS_CTRL_PF_ERROR_MATCH","","",null,null],[17,"VMCS_CTRL_CR3_COUNT","","",null,null],[17,"VMCS_CTRL_VMEXIT_CONTROLS","","",null,null],[17,"VMCS_CTRL_VMEXIT_MSR_STORE_COUNT","","",null,null],[17,"VMCS_CTRL_VMEXIT_MSR_LOAD_COUNT","","",null,null],[17,"VMCS_CTRL_VMENTRY_CONTROLS","","",null,null],[17,"VMCS_CTRL_VMENTRY_MSR_LOAD_COUNT","","",null,null],[17,"VMCS_CTRL_VMENTRY_IRQ_INFO","","",null,null],[17,"VMCS_CTRL_VMENTRY_EXC_ERROR","","",null,null],[17,"VMCS_CTRL_VMENTRY_INSTR_LEN","","",null,null],[17,"VMCS_CTRL_TPR_THRESHOLD","","",null,null],[17,"VMCS_CTRL_CPU_BASED2","","",null,null],[17,"VMCS_CTRL_PLE_GAP","","",null,null],[17,"VMCS_CTRL_PLE_WINDOW","","",null,null],[17,"VMCS_RO_INSTR_ERROR","","",null,null],[17,"VMCS_RO_EXIT_REASON","","",null,null],[17,"VMCS_RO_VMEXIT_IRQ_INFO","","",null,null],[17,"VMCS_RO_VMEXIT_IRQ_ERROR","","",null,null],[17,"VMCS_RO_IDT_VECTOR_INFO","","",null,null],[17,"VMCS_RO_IDT_VECTOR_ERROR","","",null,null],[17,"VMCS_RO_VMEXIT_INSTR_LEN","","",null,null],[17,"VMCS_RO_VMX_INSTR_INFO","","",null,null],[17,"VMCS_GUEST_ES_LIMIT","","",null,null],[17,"VMCS_GUEST_CS_LIMIT","","",null,null],[17,"VMCS_GUEST_SS_LIMIT","","",null,null],[17,"VMCS_GUEST_DS_LIMIT","","",null,null],[17,"VMCS_GUEST_FS_LIMIT","","",null,null],[17,"VMCS_GUEST_GS_LIMIT","","",null,null],[17,"VMCS_GUEST_LDTR_LIMIT","","",null,null],[17,"VMCS_GUEST_TR_LIMIT","","",null,null],[17,"VMCS_GUEST_GDTR_LIMIT","","",null,null],[17,"VMCS_GUEST_IDTR_LIMIT","","",null,null],[17,"VMCS_GUEST_ES_AR","","",null,null],[17,"VMCS_GUEST_CS_AR","","",null,null],[17,"VMCS_GUEST_SS_AR","","",null,null],[17,"VMCS_GUEST_DS_AR","","",null,null],[17,"VMCS_GUEST_FS_AR","","",null,null],[17,"VMCS_GUEST_GS_AR","","",null,null],[17,"VMCS_GUEST_LDTR_AR","","",null,null],[17,"VMCS_GUEST_TR_AR","","",null,null],[17,"VMCS_GUEST_IGNORE_IRQ","","",null,null],[17,"VMCS_GUEST_ACTIVITY_STATE","","",null,null],[17,"VMCS_GUEST_SMBASE","","",null,null],[17,"VMCS_GUEST_IA32_SYSENTER_CS","","",null,null],[17,"VMCS_GUEST_VMX_TIMER_VALUE","","",null,null],[17,"VMCS_HOST_IA32_SYSENTER_CS","","",null,null],[17,"VMCS_CTRL_CR0_MASK","","",null,null],[17,"VMCS_CTRL_CR4_MASK","","",null,null],[17,"VMCS_CTRL_CR0_SHADOW","","",null,null],[17,"VMCS_CTRL_CR4_SHADOW","","",null,null],[17,"VMCS_CTRL_CR3_VALUE0","","",null,null],[17,"VMCS_CTRL_CR3_VALUE1","","",null,null],[17,"VMCS_CTRL_CR3_VALUE2","","",null,null],[17,"VMCS_CTRL_CR3_VALUE3","","",null,null],[17,"VMCS_RO_EXIT_QUALIFIC","","",null,null],[17,"VMCS_RO_IO_RCX","","",null,null],[17,"VMCS_RO_IO_RSI","","",null,null],[17,"VMCS_RO_IO_RDI","","",null,null],[17,"VMCS_RO_IO_RIP","","",null,null],[17,"VMCS_RO_GUEST_LIN_ADDR","","",null,null],[17,"VMCS_GUEST_CR0","","",null,null],[17,"VMCS_GUEST_CR3","","",null,null],[17,"VMCS_GUEST_CR4","","",null,null],[17,"VMCS_GUEST_ES_BASE","","",null,null],[17,"VMCS_GUEST_CS_BASE","","",null,null],[17,"VMCS_GUEST_SS_BASE","","",null,null],[17,"VMCS_GUEST_DS_BASE","","",null,null],[17,"VMCS_GUEST_FS_BASE","","",null,null],[17,"VMCS_GUEST_GS_BASE","","",null,null],[17,"VMCS_GUEST_LDTR_BASE","","",null,null],[17,"VMCS_GUEST_TR_BASE","","",null,null],[17,"VMCS_GUEST_GDTR_BASE","","",null,null],[17,"VMCS_GUEST_IDTR_BASE","","",null,null],[17,"VMCS_GUEST_DR7","","",null,null],[17,"VMCS_GUEST_RSP","","",null,null],[17,"VMCS_GUEST_RIP","","",null,null],[17,"VMCS_GUEST_RFLAGS","","",null,null],[17,"VMCS_GUEST_DEBUG_EXC","","",null,null],[17,"VMCS_GUEST_SYSENTER_ESP","","",null,null],[17,"VMCS_GUEST_SYSENTER_EIP","","",null,null],[17,"VMCS_HOST_CR0","","",null,null],[17,"VMCS_HOST_CR3","","",null,null],[17,"VMCS_HOST_CR4","","",null,null],[17,"VMCS_HOST_FS_BASE","","",null,null],[17,"VMCS_HOST_GS_BASE","","",null,null],[17,"VMCS_HOST_TR_BASE","","",null,null],[17,"VMCS_HOST_GDTR_BASE","","",null,null],[17,"VMCS_HOST_IDTR_BASE","","",null,null],[17,"VMCS_HOST_IA32_SYSENTER_ESP","","",null,null],[17,"VMCS_HOST_IA32_SYSENTER_EIP","","",null,null],[17,"VMCS_HOST_RSP","","",null,null],[17,"VMCS_HOST_RIP","","",null,null],[17,"VMCS_MAX","","",null,null],[6,"hv_return_t","hypervisor::osx::ffi","Hypervisor Framework return code",null,null],[6,"hv_vm_options_t","","Options for hv_vcpu_create()",null,null],[6,"hv_vcpuid_t","","Type of a vCPU ID",null,null],[6,"hv_uvaddr_t","","Type of a user virtual address",null,null],[6,"hv_memory_flags_t","","Guest physical memory region permissions for hv_vm_map()\nand hv_vm_protect()",null,null],[6,"hv_gpaddr_t","","Type of a guest physical address",null,null],[11,"fmt","hypervisor::osx","",1,null],[11,"new","","Creates a vCPU instance for the current thread",0,{"inputs":[],"output":{"name":"result"}}],[11,"destory","","Destroys the vCPU instance associated with the current thread",0,null],[11,"run","","Executes the vCPU",0,null],[11,"exec_time","","Returns the cumulative execution time of the vCPU in nanoseconds",0,null],[11,"fmt","","",0,null]],"paths":[[3,"vCPU"],[4,"Error"],[4,"hv_x86_reg_t"],[4,"hv_vmx_capability_t"]]}; initSearch(searchIndex);