{"id":20898080,"url":"https://github.com/rwth-os/xhypervisor","last_synced_at":"2026-03-15T18:37:36.672Z","repository":{"id":36816415,"uuid":"230453814","full_name":"RWTH-OS/xhypervisor","owner":"RWTH-OS","description":"Rust API to the OS X Hypervisor framework for hardware-accelerated virtualization","archived":false,"fork":false,"pushed_at":"2025-04-01T08:01:21.000Z","size":112,"stargazers_count":22,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-06T10:19:55.342Z","etag":null,"topics":["hypervisor","macos","osx","virtualization","x86-64"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RWTH-OS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-27T14:02:00.000Z","updated_at":"2025-04-14T18:33:05.000Z","dependencies_parsed_at":"2022-08-08T17:16:09.719Z","dependency_job_id":null,"html_url":"https://github.com/RWTH-OS/xhypervisor","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RWTH-OS%2Fxhypervisor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RWTH-OS%2Fxhypervisor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RWTH-OS%2Fxhypervisor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RWTH-OS%2Fxhypervisor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RWTH-OS","download_url":"https://codeload.github.com/RWTH-OS/xhypervisor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253853646,"owners_count":21974146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hypervisor","macos","osx","virtualization","x86-64"],"created_at":"2024-11-18T11:08:50.172Z","updated_at":"2025-10-03T15:46:36.416Z","avatar_url":"https://github.com/RWTH-OS.png","language":"Rust","readme":"# xhypervisor\n\n[![crates.io](https://img.shields.io/crates/v/xhypervisor.svg)](https://crates.io/crates/xhypervisor)\n[![Docs.rs](https://docs.rs/xhypervisor/badge.svg)](https://docs.rs/xhypervisor)\n[![License](https://img.shields.io/crates/l/xhypervisor.svg)](https://img.shields.io/crates/l/xhypervisor.svg)\n\n`xhypervisor` is a Rust library that taps into functionality that enables hardware-accelerated execution of virtual machines on OS X.\nIt is a fork of [hypervisor-rs](https://github.com/saurvs/hypervisor-rs) and modified for the development of [uhyve](https://github.com/hermit-os/uhyve).\nDerived from [ahv](https://github.com/Thog/ahv), we added the support of Apple's Hypervisor Framework on Apple Silicon.\n\nIt binds to the [Hypervisor](https://developer.apple.com/documentation/hypervisor) framework on OS X, and exposes a safe Rust interface through the `hypervisor` module, and an unsafe foreign function interface through the `xhypervisor::ffi` module.\n\n## Prerequisites\n\nTo use this library, you need\n\n* macOS 10, or newer\n* An Intel processor with the VT-x feature or an Apple Silicon processor with virtualization support. To verify this, run and expect the\nfollowing in your Terminal:\n  ```shell\n  $ sysctl kern.hv_support\n  kern.hv_support: 1\n  ```\n\n## Status\n- [x] Accessing x86 registers\n- [x] Accessing aarch64 registers\n- [x] Mapping guest physical memory segments into guest physical address space\n- [x] x86: Accessing fields of Virtual Machine Control Structures (VMCS)\n- [x] Virtual x86 CPUs\n  - [x] Executing and interrupting\n  - [x] Force flushing cached state\n  - [x] Invalidating translation lookaside buffer (TLB)\n  - [x] Accessing floating point (FP) and SIMD state\n  - [x] Obtaining cumulative execution time\n  - [x] Synchronizing guest timestamp-counters (TSC)\n  - [x] Accessing model-specific registers (MSRs)\n- [x] Virtual aarch64 CPUs\n  - [x] Executing and interrupting\n  - [x] GICv3 support (requires macOS 15, or newer)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frwth-os%2Fxhypervisor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frwth-os%2Fxhypervisor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frwth-os%2Fxhypervisor/lists"}