MacHyperVSupport.kext适用于 macOS 的 Hyper-V 集成服务。需要 Windows Server 2012 R2/Windows 8.1 或更高版本上的第 2 代虚拟机。目前不支持 Windows Server 2016。
支持所有 Intel macOS 版本。
支持的 Hyper-V 设备和服务
- 心跳
- 来宾关闭(使用守护进程)
- 时间同步(使用守护进程)
- 主机到来宾文件复制(使用守护进程)
- PCI直通(部分支持)
- 合成图形(部分支持)
- 合成键盘
- 合成鼠标
- 综合网络控制器
- 合成 SCSI 控制器
二进制文件
- MacHyperVSupport.kext:核心 Hyper-V 支持 macOS 10.4 到 11.0 的 kext。
- MacHyperVSupportMonterey.kext:核心 Hyper-V 支持 macOS 12.0 及更新版本的 kext。
- hvfilecopyd:文件复制用户空间守护进程。
- hvshutdownd:关闭用户空间守护进程。
- hvtimesyncd:时间同步用户空间守护进程。
开放核心配置
ACPI
- SSDT-HV-VMBUS:启用正确的启动盘操作,确保还配置了其中描述的补丁。
- SSDT-HV-DEV:在 Windows Server 2019 / Windows 10 及更新版本上需要,提供适当的处理器对象并在 macOS 下禁用不兼容的虚拟设备。
- SSDT-HV-DEV-WS2022:Windows Server 2022 / Windows 11 及更高版本需要,禁用 macOS 下的其他不兼容虚拟设备。
- SSDT-HV-PLUG:确保 VMPlatformPlugin 在 Big Sur 及更高版本上加载,避免使用默认 PlatformPlugin 冻结。
- 确保上述 SSDT 中描述的所有补丁都存在于
ACPI->Patch
.
Booter quirks
AllowRelocationBlock
- macOS 10.7 及更早版本需要AvoidRuntimeDefrag
- 必需的ForceExitBootServices
- macOS 10.7 及更早版本需要ProvideCustomSlide
- 必需的RebuildAppleMemoryMap
- macOS 10.6 及更早版本需要
Kernel
- Quirks
ProvideCurrentCpuInfo
- 需要正确的 TSC/FSB 值和 CPU 拓扑值。
- 需要以下额外的kext内核扩展:
- Lilu - 补丁和库函数
- VirtualSMC - SMC 模拟器
- Block
- com.apple.driver.AppleEFIRuntime
- 32 位版本的 macOS(10.4 和 10.5,以及 32 位模式下的 10.6)需要。由于与 Hyper-V UEFI 不兼容,EFI 运行时服务和 NVRAM 在这些版本中不可用。
- com.apple.driver.AppleEFIRuntime
- Force
- 在旧版本的 macOS 上,可能需要强制注入以下内核扩展。有关详细信息,请参阅 OpenCore 配置手册。
- IONetworking 系列 (
com.apple.iokit.IONetworkingFamily
) - IOSCSIParallelFamily (
com.apple.iokit.IOSCSIParallelFamily
)
- Patch
- 禁用 _hpet_init
- 拱 =
i386
- 基地=
_hpet_init
- 评论 =
Disables _hpet_init due to no HPET hardware present
- 计数 =
1
- 标识符 =
kernel
- 最大内核 =
9.5.99
- 替换 =
C3
- 拱 =
- 禁用 IOHIDDeviceShim::newTransportString()
- 拱 =
i386
- 基地=
__ZNK15IOHIDDeviceShim18newTransportStringEv
- 评论 =
Fix crash in IOHIDDeviceShim::newTransportString() caused by NULL _deviceType
- 计数 =
1
- 标识符 =
com.apple.iokit.IOHIDFamily
- 最大内核 =
9.6.99
- 最小内核 =
9.5.0
- 替换 =
31C0C3
- 拱 =
- 禁用 X/Y 鼠标移动的比例因子
- 拱 =
i386
- 基地=
__ZN16IOHIDEventDriver21handleInterruptReportE12UnsignedWideP18IOMemoryDescriptor15IOHIDReportTypem
- 评论 =
Workaround for absence of AbsoluteAxisBoundsRemovalPercentage in 10.4
- 标识符 =
com.apple.iokit.IOHIDFamily
- 查找 =
BA1F85EB51
- 最大内核 =
8.11.99
- 最小内核 =
8.0.0
- 替换 =
BA00000000
- 拱 =
- 禁用 _hpet_init
- Emulate
- 根据旧版本 macOS 的主机 CPU,可能需要 DummyPowerManagement 和 CPU 欺骗。
NVRAM
- Boot arguments引导参数
-legacy
运行 32 位版本的 macOS(10.4 - 10.5,如果以 32 位模式运行则为 10.6)是必需的。这些版本不提供 64 位应用程序和 NVRAM 支持。
UEFI
- Quirks
DisableSecurityPolicy
- Windows Server 2019 / Windows 10 及更新版本需要
安装程序映像创建
- 安装程序映像可以从 USB 硬盘传入,也可以使用以下方法从 DMG 转换为 VHDX 映像
qemu-img
:- DMG 需要首先采用读/写格式。
qemu-img convert -f raw -O vhdx Installer.dmg Installer.vhdx
引导参数
有关每个模块的引导参数,请参阅模块列表。
驱动模块列表
核心控制器(HyperVController)
核心 Hyper-V 控制器模块。
引导参数 | 描述 |
---|---|
-hvctrldbg | 在 DEBUG 构建中启用调试打印 |
CPU 禁用器 (HyperVCPU)
在 macOS 10.4 下禁用额外的 CPU。
引导参数 | 描述 |
---|---|
-hvcpudbg | 在 DEBUG 构建中启用调试打印 |
文件复制 (HyperVFileCopy)
提供主机到来宾文件复制支持(来宾服务)。需要hvfilecopyd
运行用户空间守护进程。
引导参数 | 描述 |
---|---|
-hvfcopydbg | 在 DEBUG 构建中启用调试打印 |
-hvfcopymsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvfcopyoff | 禁用此模块 |
图形桥 (HyperVGraphicsBridge)
为 macOS 提供基本图形支持。
引导参数 | 描述 |
---|---|
-hvgfxbdbg | 在 DEBUG 构建中启用调试打印 |
-hvgfxbmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvgfxboff | 禁用此模块 |
心跳 (HyperVHeartbeat)
向 Hyper-V 提供心跳报告。
引导参数 | 描述 |
---|---|
-hvheartdbg | 在 DEBUG 构建中启用调试打印 |
-hvheartmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvheartoff | 禁用此模块 |
键盘 (HyperVKeyboard)
提供键盘支持。
引导参数 | 描述 |
---|---|
-hvkbddbg | 在 DEBUG 构建中启用调试打印 |
-hvkbdmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvkbdoff | 禁用此模块 |
鼠标 (HyperVMouse)
提供鼠标支持。
引导参数 | 描述 |
---|---|
-hvmousdbg | 在 DEBUG 构建中启用调试打印 |
-hvmousmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvmousoff | 禁用此模块 |
网络(HyperVNetwork)
提供网络支持。
引导参数 | 描述 |
---|---|
-hvnetdbg | 在 DEBUG 构建中启用调试打印 |
-hvnetmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvnetoff | 禁用此模块 |
PCI 桥 (HyperVPCIBridge)
提供 PCI 直通支持。
引导参数 | 描述 |
---|---|
-hvpcibdbg | 在 DEBUG 构建中启用调试打印 |
-hvpcibmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvpcioff | 禁用此模块 |
PCI 模块设备 (HyperVModuleDevice)
为 PCI 直通提供 MMIO 分配/解除分配功能。
引导参数 | 描述 |
---|---|
-hvpcimdbg | 在 DEBUG 构建中启用调试打印 |
PCI 供应商 (HyperVPCIProvider)
在第 2 代 VMS 上为假 PCI 根桥 (HyperVPCIRoot) 提供 IOACPIPlatformDevice nub。
引导参数 | 描述 |
---|---|
-hvpcipdbg | 在 DEBUG 构建中启用调试打印 |
PCI 根桥 (HyperVPCIRoot)
为第 2 代 VM 上的正确 macOS 功能提供伪造的 PCI 根桥,并提供对 PCI 直通的支持。
引导参数 | 描述 |
---|---|
-hvpcirdbg | 在 DEBUG 构建中启用调试打印 |
关机(HyperVShutdown)
通过虚拟机连接和 PowerShell 提供软件关闭。需要hvshutdownd
运行用户空间守护进程。
引导参数 | 描述 |
---|---|
-hvshutdbg | 在 DEBUG 构建中启用调试打印 |
-hvshutmsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hv关闭 | 禁用此模块 |
存储(HyperVStorage)
提供 SCSI 存储支持。
引导参数 | 描述 |
---|---|
-hvstordbg | 在 DEBUG 构建中启用调试打印 |
-hvstormsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvstoroff | 禁用此模块 |
时间同步(HyperVTimeSync)
提供主机到来宾时间同步支持。需要hvtimesyncd
运行用户空间守护进程。
引导参数 | 描述 |
---|---|
-hvtimedbg | 在 DEBUG 构建中启用调试打印 |
-hvtimemsgdbg | 在 DEBUG 构建中启用消息数据的调试打印 |
-hvtimeoff | 禁用此模块 |
VMBus 控制器 (HyperVVMBus)
提供 VMBus 设备和服务的根。
引导参数 | 描述 |
---|---|
-hvvmbusdbg | 在 DEBUG 构建中启用调试打印 |
VMBus 设备核心 (HyperVVMBusDevice)
为子 VMBus 设备模块提供连接点。
引导参数 | 描述 |
---|---|
-hvvmbusdebdbg | 在 DEBUG 构建中启用调试打印 |
更新日志 · 历史版本
“MacHyperVSupport.kext-v0.9.5”
展开/收缩
“MacHyperVSupport.kext-v0.9.4”
展开/收缩
“MacHyperVSupport.kext-v0.5-0.9.3多版本合集”
展开/收缩
【解压密码:imacos.top】
评论0