# 硬件限制

这里使用 OpenCore 作为黑苹果的系统引导,下面对 OpenCore 官网 (opens new window) 进行摘要的翻译。

主要检查的硬件包括下面几个部分:

# CPU

对于 CPU 的支持,有以下几点:

  • 32位和64位的cpu都支持

    • 需要系统版本支持的架构,详情看下面cpu要求部分
  • intel 的桌面版 cpu 支持

    • 从 Yonah 架构 (2006年初)到 Comet Lake 架构(第十代)的 cpu 是支持的
  • intel 的高端 cpu 和服务器 cpu

    • 从 Nehalem 架构(2008年)到 Cascade Lake X 架构(第10代Core X HEDT处理器)的 cpu 是支持的
  • intel的 "i" 系列和 Xeon (至强)系列的笔记本 cpu 是支持的

    • 从 Arrandale 架构(2010年)到 Ice Lake 架构 (第十代) 的 cpu 是支持的
    • 注意 Mobile Atoms、Celeron 和 Pentium 的 cpu 不支持的
  • AMD的桌面级 cpu Bulldozer (15代)、Jaguar (16代)和 Ryzen (17代) CPU 是支持的

    • 笔记本的 cpu 是不支持的
    • 注意 macOS 的一些特性是不支持的 AMD 的 cpu 的,详情看下面

# CPU 要求

  • 架构要求

    • 32 位的 cpu 支持从 10.4.1 到 10.6.8
    • 64 位的 cpu 支持从 10.4.1 到当前
  • SEE (opens new window) 要求

    • 所有 intel 版本的 OS X/macOS 都需要 SSE3
    • 64 位的 OS X/macOS 都需要 SSSE3
    • 对于没有 SSSE3 的 64 位 Pentium,我们建议运行 32 位用户空间 (i386-user32)
    • macOS 10.12 和更新版本需要 SSE4
    • macOS 10.14 和更新版本需要 SSE4.2
    • SSE4.1 CPU 支持的话,可以使用 telemetrap.kext (opens new window)
    • 新的 AMD 驱动程序需要 SSE4.2 支持 Metal,解决这个问题,请参见这里:MouSSE: SSE4.2 emulation (opens new window)
  • 固件要求

    • 从 10.4.1 到 10.4.7 需要 EFI32
    • 从 10.4.8 到 10.7.5 都支持 EFI32 和 EFI64
    • 从 10.8 到 10.9 都支持 EFI64
    • 从 10.7 到 10.9 需要 OpenPartitionDxe.efi 启动恢复模式
  • 内核要求:

    • 10.4 和 10.5 需要 32 位的 kext,因为只支持 32 位内核空间
    • 10.6 和 10.7 支持 32 和 64 位内核空间
    • 10.8 和更新的系统需要 64 位 kext,因为只支持 64 位内核空间
    • 运行 lipo -archs 来看系统支持什么架构的 kext (记的运行这个命令用二进制文件,而不是 .kext 包)
  • 核心/线程限制:

    • 如果 cpu 线程超过 24 线程,在 OS X 10.10 和以下的系统或许不能启动。(有一个 mp_cpus_call_wait() timeout 明显报错)
    • OS X 10.11 和更新的系统有 64 线程的限制
      • 使用 cpu= 的启动参数可以用来绕过线程的限制,或者禁用超线程

# intel CPU 支持

CPU 型号 初始支持版本 最后支持版本 备注 CPUID
Pentium 4 (opens new window) 10.4.1 10.5.8 只能使用 dev 包 0x0F41
Yonah (opens new window) 10.4.4 10.6.8 32位 0x0006E6
Conroe (opens new window), Merom (opens new window) 10.4.7 10.11.6 没有 SSE4 0x0006F2
Penryn (opens new window) 10.4.10 10.13.6 没有 SSE4.2 0x010676
Nehalem (opens new window) 10.5.6 当前版本 N/A 0x0106A2
Lynnfield (opens new window), Clarksfield (opens new window) 10.6.3 No iGPU support 10.14+ 0x0106E0
Westmere, Clarkdale, Arrandale (opens new window) 10.6.4 0x0206C0
Sandy Bridge (opens new window) 10.6.7 0x0206A0(M/H)
Ivy Bridge (opens new window) 10.7.3 No iGPU support 12+ 0x0306A0(M/H/G)
Ivy Bridge-E5 (opens new window) 10.9.2 N/A 0x0306E0
Haswell (opens new window) 10.8.5 0x0306C0(S)
Broadwell (opens new window) 10.10.0 0x0306D4(U/Y)
Skylake (opens new window) 10.11.0 0x0506e3(H/S) 0x0406E3(U/Y)
Kaby Lake (opens new window) 10.12.4 0x0906E9(H/S/G) 0x0806E9(U/Y)
Coffee Lake (opens new window) 10.12.6 0x0906EA(S/H/E) 0x0806EA(U)
Amber (opens new window), Whiskey (opens new window), Comet Lake (opens new window) 10.14.1 0x0806E0(U/Y)
Comet Lake (opens new window) 10.15.4 0x0906E0(S/H)
Ice Lake (opens new window) 0x0706E5(U)
Rocket Lake (opens new window) Requires Comet Lake CPUID 0x0A0671
Tiger Lake (opens new window) N/A N/A 未测试 0x0806C0(U)

# AMD CPU 在 macOS 系统中的限制

不幸的是在 macOS 系统中的很多特性完全不支持 AMD cpu,还有很多其他的特性部分缺失。这些包括:

  • 虚拟机依赖 AppleHV

    • 包括 VMWare, Parallels, Docker, Android Studio, 等等
    • VirtualBox 是个例外,因为它有自己的 hypervisor
    • VMware 10 和 Parallels 13.1.0 确实支持他们自己的 hypervisor,然而用这样老的 VM 软件会存在大的安全隐患。
  • Adobe 支持

    • 很多 Adobe 的软件依赖 intel 的 Memfast 指令集,导致用 AMD 的 cpu 用 Adobe 的软件会闪退
    • 你可以禁用一些功能来避免闪退,比如禁用 RAW 支持:Adobe 修复 (opens new window)
  • 32 位软件支持

    • 对于那些在 Mojave 和更低版本的软件仍然依赖 32 位的软件,注意 Vanilla 补丁不支持 32 位 的指令集。
    • 变通的方式是安装一个定制的内核 (opens new window),然而也会失去 iMessage 的功能并且对于这些内核没有提供支持。
  • 很多软件的稳定性问题

    • 基于音频的软件最容易出现问题,例如 Logic Pro
    • 达芬奇也有少许已知的问题

# GPU 显卡

由于市场上的很多数量的 GPU, GPU 的支持变得越来越复杂,但是主要几点如下:

  • AMD 的基于 GCN 架构的 GPU 在最新版本的 macOS 系统是支持的

  • Nvidia (英伟达) 的 GPU 支持是复杂的:

    • Nvidia 的 Maxwell(9XX) 和 Pascal(10XX) 系列的 GPU 被限制在 macOS 10.13: High Sierra
    • Nvidia 的 Turing(20XX, 16XX) 系列的 GPU 不支持任何版本的 macOS
    • Nvidia 的 Ampere(30XX) 系列的 GPU 不支持任何版本的 macOS
    • Nvidia 的 Kepler(6XX, 7XX) 系列的 GPU 在 macOS 11: Big Sur 及以上的版本是支持的
  • Intel 的 GT2+ 系列的核显是支持的

    • 从 Ivy Bridge 架构到 Ice Lake 架构的核显是支持的
    • 注意使用 Pentiums、Celerons 和 Atoms架构上的 GT2 系列的核心显卡和低端的 GT1 核显是不支持 macOS 的

特别需要注意的是,对于带有独立显卡的笔记本:

  • 90% 的独立显卡不工作,因为它们装配方式(可切换的的显卡(switchable graphics))是 macOS 所不支持的。对于 NVIDIA 独立显卡,这被叫做 Optimus。不太可能去使用这些独立显卡作为内部显示,因此一般建议禁用独立显卡。
  • 无论如何,在一些情况下,这些独立显卡或许能够点亮外接显示设备(HDMI, mini DisplayPort, 等等),在这种情况下它能够工作,你需要保持这个卡处于运行状态。
  • 无论如何,还是有一些很少的笔记本不是 可切换的的显卡(switchable graphics),因此这些独立显卡能够使用(如果这些显卡是免驱的),但是这种 wiring 和配置通常会导致一些问题。

# intel GPU 支持

GPU 型号 初始支持版本 最后支持版本 备注
3rd Gen GMA (opens new window) 10.4.1 10.7.5 需要32位的内核和补丁 (opens new window)
4th Gen GMA (opens new window) 10.5.0
Arrandale(HD Graphics) (opens new window) 10.6.4 10.13.6 只有 LVDS 接口支持,eDP 和 外接输出不支持
Sandy Bridge(HD 3000) (opens new window) 10.6.7 N/A
Ivy Bridge(HD 4000) (opens new window) 10.7.3 11.6.1
Haswell(HD 4XXX, 5XXX) (opens new window) 10.8.5 当前版本
Broadwell(5XXX, 6XXX) (opens new window) 10.10.0
Skylake(HD 5XX) (opens new window) 10.11.0
Kaby Lake(HD 6XX) (opens new window) 10.12.4
Coffee Lake(UHD 6XX) (opens new window) 10.13.6
Comet Lake(UHD 6XX) (opens new window) 10.15.4
Ice Lake(Gx) (opens new window) 10.15.4 需要启动参数 -igfxcdc and -igfxdvmt
Tiger Lake(Xe) (opens new window) N/A N/A 没有驱动可用
Rocket Lake (opens new window) N/A N/A 没有驱动可用

# AMD GPU 支持

GPU 型号 初始支持版本 最后支持版本 备注
X800 (opens new window) 10.3.x 10.7.5 需要32位内核
X1000 (opens new window) 10.4.x N/A
TeraScale (opens new window) 10.13.6
TeraScale 2/3 (opens new window) 10.6.x
GCN 1 (opens new window) 10.8.3 当前版本
GCN 2/3 (opens new window) 10.10.x
Polaris 10(RX 400 系列) (opens new window), 20(RX 500 系列) (opens new window) 10.12.1
Vega 10 (opens new window) 10.12.6
Vega 20 (opens new window) 10.14.5
Navi 10(RX 5000 系列) (opens new window) 10.15.1 需要启动参数 agdpmod=pikera
Navi 20(RX 6000 系列) (opens new window) 11.4 部分支持

# Nvidia (英伟达) GPU 支持

GPU 型号 初始支持版本 最后支持版本 备注
GeForce 6 (opens new window) 10.2.x 10.7.5 需要 32 位内核和NVCAP 补丁 (opens new window)
GeForce 7 (opens new window) 10.4.x 需要 NVCAP 补丁 (opens new window)
Tesla (opens new window) 10.4.x 10.13.6
Tesla v2 (opens new window) 10.5.x
Fermi (opens new window) 10.7.x
Kepler (opens new window) 10.7.x 11.6.1 N/A
Kepler v2 (opens new window) 10.8.x N/A
Maxwell (opens new window) 10.10.x 10.13.6 需要 NVIDIA Web Drivers (opens new window)
Pascal (opens new window) 10.12.4
Turing (opens new window) N/A N/A 没有驱动可用
Ampere (opens new window) N/A N/A 没有驱动可用

# 主板

对于大多数情况,主板的支持是和 CPU 同步的。B550 主板之前有个问题 (opens new window),现在得到了解决,B550 主板可以借助 SSDT-CPUR (opens new window) 启动。

# 硬盘

对于大多数情况,所有的 SATA 接口的硬盘和 NVMe 接口的硬盘是支持的。只有少许例外:

  • Samsung PM981, PM991 and Micron 2200S NVMe SSDs
    • 这些 SSDs 不适配(导致内核崩溃),因此需要 NVMeFix.kext (opens new window) 来修复这个内核崩溃的问题,注意这些硬盘即使用了 NVMeFix.kext 仍然可能会出现启动问题。
    • 与之相关的,Samsung 970 EVO Plus NVMe SSDs 也有同样的问题,但是它可以通过固件更新解决,在这里获取更新(在 windows 上通过 Samsung Magician 或者 可引导的 ISO)
    • 另外需要注意的是,用 Intel Optane Memory (opens new window) 或者 Micron 3D XPoint (opens new window) 来作为 HDD 加速的是在 macOS 上不支持的。一些用户反馈使用这个在 Catalina 是成功启动的,但是我们强烈推荐去掉这些驱动来防止任何潜在的启动问题。
  • Intel 600p

# 有线网卡

几乎所有有线网络适配器在 macOS 中都具有某种形式的支持,无论是由内置驱动程序还是社区制造的 kexts 提供支持。主要例外情况:

# 无线网卡

大多数笔记本的无线网卡是不支持的,由于他们通常是 Intel 或者 高通的。如果你是幸运的,你可能有个受支持的 Atheros 卡,但是仅在 High Sierra 版本以上是支持的。

最好的选择的是买个受支持的博通网卡。无线网卡购买指南 (opens new window)

注意: intel 无线网卡是非官方(第三方驱动)支持的。

# 杂项

  • 指纹识别
    • 目前没有方法去防真 Touch ID 传感器,因此指纹识别是不工作的
  • Windows Hello 面部识别
    • 一些笔记本的 Windows Hello 面部识别是用 I2C 方式连接的(通过 iGPU 使用), 这些通常不工作。
    • 一些笔记本的 Windows Hello 面部识别是用 USB 方式连接的,如果你是幸运的,你获取能够将摄像头驱动,但是没任何其他的。
  • Intel Smart Sound Technology (智能声音技术)
    • 采用英特尔SST的笔记本电脑将无法通过其连接任何东西(通常是内部麦克风)工作,因为它不受支持。您可以在Windows上使用设备管理器进行检查。
  • 耳机插孔组合
    • 某些带有组合耳机插孔的笔记本电脑可能无法通过它们获得音频输入,并且必须通过USB使用内置麦克风或外部音频输入设备。
  • 雷雳 USB-C 端口
    • 黑苹果的Thunderbolt的支持目前在macOS中仍然很不稳定,在大多数当前笔记本电脑都有的Alpine Ridge控制器上更是如此。有人试图保持控制器通电来允许Thunderbolt和USB-C热插拔工作,但它的代价是内核崩溃和/或USB-C在睡眠后中断。如果要使用端口的 USB-C 端并使其能够进入睡眠状态,则必须在启动时将其插入并保持插入状态。
如果你觉得本网站内容对您有帮助,可以使用支付宝 扫一扫 进行打赏