• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

acidanthera/MacHyperVSupport: Hyper-V integration support for macOS

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

acidanthera/MacHyperVSupport

开源软件地址(OpenSource Url):

https://github.com/acidanthera/MacHyperVSupport

开源编程语言(OpenSource Language):

C++ 96.6%

开源软件介绍(OpenSource Introduction):

MacHyperVSupport

Build Status Scan Status

Hyper-V integration services for macOS. Requires a Generation 2 virtual machine on Windows 8.1 or higher.

All Intel macOS versions are supported. macOS 12.0 and newer should use MacHyperVSupportMonterey.kext instead.

Supported Hyper-V devices and services

  • Heartbeat
  • Guest shutdown
  • PCI passthrough (partial support)
  • Synthetic graphics (partial support)
  • Synthetic keyboard
  • Synthetic mouse
  • Synthetic network controller
  • Synthetic SCSI controller

OpenCore configuration

ACPI

  • SSDT-HV-DEV: Required on Windows 10 and newer, provides proper processor objects and disables incompatible virtual devices under macOS
  • SSDT-HV-PLUG: Ensures VMPlatformPlugin loads on Big Sur, avoids freezes with the default PlatformPlugin
  • SSDT-HV-VMBUS: Enables correct Startup Disk operation, ensure patches described within are also configured

Booter quirks

  • AllowRelocationBlock - required for macOS 10.7 and older
  • AvoidRuntimeDefrag - required
  • ForceExitBootServices - required for macOS 10.7 and older
  • ProvideCustomSlide - required
  • RebuildAppleMemoryMap - required for macOS 10.6 and older

Kernel

  • Quirks
    • ProvideCurrentCpuInfo - required for proper TSC/FSB values and CPU topology values.
  • The following additional kernel extensions are required:
  • Block
    • com.apple.driver.AppleEFIRuntime
      • Required for 32-bit versions of macOS (10.4 and 10.5, and 10.6 in 32-bit mode). EFI runtime services and NVRAM are unavailable in those versions due to incompatiblities with the Hyper-V UEFI.
  • Force
    • On older versions of macOS, the following kernel extensions may need to be Force injected. Refer to the OpenCore Configuration manual for details.
    • IONetworkingFamily (com.apple.iokit.IONetworkingFamily)
    • IOSCSIParallelFamily (com.apple.iokit.IOSCSIParallelFamily)
  • Patch
    • Disable _hpet_init
      • Arch = i386
      • Base = _hpet_init
      • Comment = Disables _hpet_init due to no HPET hardware present
      • Count = 1
      • Identifier = kernel
      • MaxKernel = 9.5.99
      • Replace = C3
    • Disable IOHIDDeviceShim::newTransportString()
      • Arch = i386
      • Base = __ZNK15IOHIDDeviceShim18newTransportStringEv
      • Comment = Fix crash in IOHIDDeviceShim::newTransportString() caused by NULL _deviceType
      • Count = 1
      • Identifier = com.apple.iokit.IOHIDFamily
      • MaxKernel = 9.6.99
      • MinKernel = 9.5.0
      • Replace = 31C0C3
    • Disable scaling factor for X/Y mouse movement
      • Arch = i386
      • Base = __ZN16IOHIDEventDriver21handleInterruptReportE12UnsignedWideP18IOMemoryDescriptor15IOHIDReportTypem
      • Comment = Workaround for absence of AbsoluteAxisBoundsRemovalPercentage in 10.4
      • Identifier = com.apple.iokit.IOHIDFamily
      • Find = BA1F85EB51
      • MaxKernel = 8.11.99
      • MinKernel = 8.0.0
      • Replace = BA00000000
  • Emulate
    • DummyPowerManagement and CPU spoofing may be required depending on the host CPU for older versions of macOS.

NVRAM

  • Boot arguments
    • -legacy is required for running 32-bit versions of macOS (10.4 - 10.5, 10.6 if running in 32-bit mode). 64-bit applications and NVRAM support are unavailable in those versions.

UEFI

  • Quirks
    • DisableSecurityPolicy - required on Windows 10 and newer

Installer image creation

  • Installer images can either be passed in from USB hard disks, or converted from a DMG to a VHDX image using qemu-img:
    • DMGs need to be in a read/write format first.
    • qemu-img convert -f raw -O vhdx Installer.dmg Installer.vhdx

Boot arguments

Module Debug Message Debug Off
CPU disabler (10.4) -hvcpudbg N/A N/A
Graphics -hvgfxdbg -hvgfxmsgdbg -hvgfxoff
Heartbeat -hvheartdbg -hvheartmsgdbg -hvheartoff
Keyboard -hvkbddbg -hvkbdmsgdbg -hvkbdoff
Mouse -hvmousdbg -hvmousmsgdbg -hvmousoff
Network -hvnetdbg -hvnetmsgdbg -hvnetoff
PCI bridge -hvpcibdbg -hvpcibmsgdbg -hvpciboff
PCI module support -hvpcimdbg N/A N/A
PCI provider -hvpcipdbg N/A N/A
PCI root bridge -hvpcirdbg N/A N/A
Shutdown -hvshutdbg -hvshutmsgdbg -hvshutoff
Storage -hvstordbg -hvstormsgdbg -hvstoroff
VMBus controller -hvvmbusdbg N/A N/A
VMBus device nub -hvvmbusdevdbg N/A N/A

Credits




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap