English | 中文
ExHyperV aims to provide a graphical, easy-to-use configuration tool for advanced Hyper-V features by delving into technical details such as Hyper-V documentation, WMI, and HCS.
Due to limited personal time and energy, the project may contain untested scenarios or bugs. If you encounter any hardware/software issues during use, please feel free to report them via Issues!
Features will be gradually improved over time. If there is a specific feature you would like to see prioritized, or if you love this project, you can support it via the donation button at the bottom of the document and leave a message!
ExHyperV uses the WPF-UI framework to provide a smooth, modern user interface experience with sci-fi visual effects. It supports both dark and light themes and automatically switches based on the system theme.
Supported languages: Simplified Chinese & English.

ExHyperV.exe directly./src/ExHyperV.sln file with Visual Studio to compile.Alternatively, you can download the .NET SDK, open the project directory, and run:
cd src
dotnet build
This section will be maintained long-term. It is written based on Hyper-V related documentation and development practices, and may contain inaccuracies.
[!NOTE] Hyper-V is a high-performance virtual machine manager (Hypervisor) based on Type-1 architecture.
When you enable the Hyper-V feature, the host system becomes a privileged virtual machine belonging to the Root Partition. The created virtual machines belong to Child Partitions; they are isolated from each other and cannot perceive each other's existence.
Virtualization technologies belonging to the Type-1 architecture include: Hyper-V, Proxmox (KVM), VMware ESXi (VMkernel), Xen, etc., with performance utilization rates generally above 98%.
Virtualization technologies belonging to the Type-2 architecture include: VMware Workstation, Oracle VirtualBox, Parallels Desktop, etc., with performance utilization rates around 90%~95%.
Based on these facts, you can view virtual machines as isolated small rooms where you can run potentially threatening programs, test system functions, multi-box games, or other uses without worrying about messing up the host system (Except in cases where FLR is not supported in PCIe Passthrough, where a VM restart might restart the host, or viruses with lateral movement capabilities—please pay attention to network security).
You can enable/disable Hyper-V via the Control Panel or a simple Powershell command (requires Pro or Server edition). After confirming with Y and rebooting, processes like vmms.exe, vmcompute.exe, and vmmem will run continuously in the background, and the Hyper-V Manager icon will appear in the Start menu.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
[!NOTE] The scheduler coordinates how physical processor CPU time is allocated to virtual machine processors.
Hyper-V has three types of schedulers: Classic / Core / Root. They can be categorized into two types: Manual (Classic, Core) and Automatic (Root). Core can be seen as a variant of Classic that improves security but may reduce performance in some scenarios.
The Classic Scheduler dates back to Windows Server 2008. It is based on the principle of fair allocation using traditional time slicing. It randomly allocates VM processor time to any available logical processor on the host. If host resources are idle, it is more likely to allocate logical processors from different physical cores rather than hyper-threads to achieve better performance.
The Core Scheduler appeared later, introduced in Windows Server 2016 and Windows 10 Build 14393. Its purpose is to mitigate side-channel attacks. Even if host resources are idle, it tends to allocate two threads of the same physical core rather than more physical cores. This strategy helps improve security and VM isolation but significantly reduces the CPU performance allocated to VMs when host resources are idle. Starting from Windows Server 2019, Windows Server defaults to using the Core Scheduler.
The Root Scheduler was released in Windows 10 Build 17134. It collects metrics on workload CPU usage and makes automatic scheduling decisions. It is very suitable for hybrid CPU architectures (Big/Little cores). Starting from Build 17134, Windows Hyper-V (Pro) defaults to using the Root Scheduler.
The system type is independent of the scheduler type; you can switch arbitrarily, effective after rebooting the host.
[!NOTE] The ability of the virtual machine to request execution time on logical processors from the host.
Usually set to even numbers like 2, 4, 8, 16.
Increasing vCPUs significantly improves the processing speed of parallel tasks, but too many unnecessary vCPUs may bring scheduling pressure to the Hypervisor.
If the total number of VM cores exceeds the host's physical logical core count (Overselling), applications requiring immediate response will be greatly affected.
The lower limit percentage of execution time provided for this virtual machine. Reserve Value = Reserve * Core Count.
The upper limit percentage of execution time provided for this virtual machine. Limit Value = Limit * Core Count.
The priority of this virtual machine in competing for CPU execution time, ranging from 0 to 10000.
When enabled, it monitors I/O requests communicated through VMBus. If abnormal behavior such as interrupt storms occurs, it reduces CPU execution time allocation to prevent affecting the host system in the root partition. Ordinary users do not need to enable this.
When enabled, it passes through the CPU's VT-x/AMD-V instruction set extensions, allowing you to run a virtual machine inside a Hyper-V virtual machine. This slightly increases CPU virtualization overhead.
After enabling Nested Virtualization and Hyper-V features in the VM, the VM's Task Manager will show L1/L2/L3 cache topology and will no longer be marked as "Virtual Machine: Yes," which helps with avoiding virtualization detection.
When enabled, it masks part of the CPU instruction set—exactly which part depends on cpu-migration-compatibility.md—to facilitate live migration across hosts with different hardware. Ordinary users do not need to enable this.
When enabled, it significantly strips down the CPU instruction set. This is beneficial for running Windows 7 or earlier operating systems but detrimental to running modern operating systems.
When enabled, the virtual machine can perceive that its vCPUs appear as paired logical cores, helping the OS kernel inside the VM to better perform L1/L2 cache optimization and process scheduling.
When enabled, it passes through the CPU's hardware counters, allowing development tools inside the virtual machine to directly access physical CPU performance monitoring hardware. Requires host support.
When enabled, allows the virtual machine operating system to read the actua
| 日期 | 榜单 | 排名 | 周期新增 | 总 STAR |
|---|