Skip to content

Latest commit

 

History

History
executable file
·
265 lines (206 loc) · 19.9 KB

macos-limits.md

File metadata and controls

executable file
·
265 lines (206 loc) · 19.9 KB

硬件限制

对于 macOS,你需要在涉足安装之前意识到有许多的硬件限制。这些限制直到 Apple 支持更多的硬件时才能解决,所以我们会被 Apple 或者由社区创建的补丁限制。

主要的需要检查的硬件部分有:

对于此话题的更多详细的指南,请查看这些:

CPU 支持

对于 CPU 支持,我们有以下的分析:

  • 32 位和 64 位 CPU 都被支持
    • 这是操作系统支持你的架构的需求,更多信息请查看下方的“CPU 要求”部分
  • 英特尔桌面 CPU 都被支持
    • 在此指南中,从 Yonah 到 Comet Lake 都被支持。
  • 英特尔高端桌面和服务器 CPU。
    • 在此指南中,从 Nehalem 到 Cascade Lake X 都被支持。
  • 英特尔酷睿“i”系列和至强系列笔记本 CPU
    • 在此指南中,从 Arrendale 到 Ice Lake 都被支持。
    • 注意,凌动移动端、赛扬和奔腾 CPU 不被支持
  • AMD 的 Bulldozer(第 15 代)、Jaguar(第 16 代)和 Ryzen(第 17 代)桌面端 CPU
    • 笔记本 CPU 不被支持
    • 注意,不是 macOS 的所有功能都支持 AMD,更多信息请查看下方

更多深层的信息请查看这里:Hackintosh 硬件避坑指南

::: details CPU 要求

架构要求

  • 32 位 CPU 支持 10.4.1 到 10.6.8
    • 注意,10.7.x 需要 64 位用户空间,所以将 32 位 CPU 限制到了 10.6
  • 64-bit CPU 支持 10.4.1 到当前最新版本

SEE 要求:

  • 所有英特尔版本的 OS X/macOS 需要 SSE3
  • 所有 64 位版本的 OS X/macOS 需要 SSSE3
    • 对于缺少 SSSE3 的 CPU(例如一些 64 位奔腾 CPU),推荐运行 32 位用户空间(i386-user32
  • macOS 10.12 和更高版本需要 SSE4
  • macOS 10.14 和更高版本需要 SSE4.2

固件要求:

  • OS X 10.4.1 到 10.4.7 需要 EFI32(例如 IA32(32 位版本)的 OpenCore)
    • OS X 10.4.8 到 10.7.5 支持 EFI32 和 EFI64
  • OS X 10.8 和更高版本需要 EFI64(例如 x64(64 位版本)的 OpenCore)
  • OS X 10.7 到 10.9 需要 PartitionDxe.efi 以启动恢复(Recovery)分区

内核要求:

  • OS X 10.4 和 10.5 需要 32 位的内核扩展,因为只支持 32 位内核空间
    • OS X 10.6 和 10.7 支持 32 位和 64 位的内核空间
  • OS X 10.8 和更高版本需要 64 位内核扩展,因为只支持 64 位内核空间
    • 运行 lipo -archs 以知道你的内核扩展支持什么架构(记得在二进制文件上运行,并且不需要 .kext 后缀名)

特殊要求:

  • Lilu 和它的插件需要 10.8 或更高版本来运行
    • 我们推荐在低版本的 OS X 中使用 FakeSMC
  • OS X 10.6 和更低版本需要启用 RebuildAppleMemoryMap
    • 此项用于解决低版本的内核问题

:::

::: details 英特尔 CPU 支持表

支持来源于原生内核(即没有修改):

CPU 世代 初始支持版本 最高支持版本 注释 CPUID
奔腾 4 10.4.1 10.5.8 仅用于开发包 0x0F41
Yonah 10.4.4 10.6.8 32 位 0x0006E6
Conroe, Merom 10.4.7 10.11.6 不支持 SSE4 0x0006F2
Penryn 10.4.10 10.13.6 不支持 SSE4.2 0x010676
Nehalem 10.5.6 当前版本 N/A 0x0106A2
Lynnfield, Clarksfield 10.6.3 ^^ 10.14+ 无核芯显卡支持 0x0106E0
Westmere, Clarkdale, Arrandale 10.6.4 ^^ ^^ 0x0206C0
Sandy Bridge 10.6.7 ^^ ^^ 0x0206A0(M/H)
Ivy Bridge 10.7.3 ^^ 11+ 无核芯显卡支持 0x0306A0(M/H/G)
Ivy Bridge-E5 10.9.2 ^^ N/A 0x0306E0
Haswell 10.8.5 ^^ ^^ 0x0306C0(S)
Broadwell 10.10.0 ^^ ^^ 0x0306D4(U/Y)
Skylake 10.11.0 ^^ ^^ 0x0506e3(H/S) 0x0406E3(U/Y)
Kaby Lake 10.12.4 ^^ ^^ 0x0906E9(H/S/G) 0x0806E9(U/Y)
Coffee Lake 10.12.6 ^^ ^^ 0x0906EA(S/H/E) 0x0806EA(U)
Amber, Whiskey, Comet Lake 10.14.1 ^^ ^^ 0x0806E0(U/Y)
Comet Lake 10.15.4 ^^ ^^ 0x0906E0(S/H)
Ice Lake ^^ ^^ ^^ 0x0706E5(U)
Tiger Lake N/A N/A 未经测试 0x0806C0(U)

:::

::: details macOS 中的 AMD CPU 限制

很遗憾,很多 macOS 中的功能完全不支持 AMD,且很多其他部分都有损坏。它们包括:

  • 基于 AppleHV 的虚拟机
    • 包括 VMWare、Parallels、Docker、Android Studios 等等
    • 唯一的可能性是 VirtualBox,因为它有自己的虚拟化技术
    • VMware 10 和 Parallels 13.1.0 支持它们自己的虚拟化技术,但是使用过期的虚拟机软件会产生很大的安全风险
  • Adobe 支持
    • 大部分的 Adobe 套装基于英特尔 的 Memfast 指令集,运行于 AMD CPU 会导致崩溃
    • 你可以关闭一些功能,例如 RAW 支持来解决崩溃问题:Adobe Fixes
  • 32 位支持
    • 对于 Mojave 和更低版本中一些依然基于 32 位的软件,需要注意 Vanilla 的补丁不支持 32 位指令集
    • 一个解决办法是安装一个 自定义内核,但是这样会损失你的 iMessage 支持
  • 很多应用程序上持续存在的问题
    • 基于音频的应用程序更容易遇到问题,例如 Logic Pro
    • DaVinci Resolve 已经被发现偶尔会出现问题

:::

显卡支持

显卡支持很复杂,涉及到市面上几乎所有的显卡,通常的分析是下面这样的:

带有独立显卡的笔记本电脑的重要注意事项:

  • 90% 的独立显卡都不会正常工作,因为它们的配置方式不被 macOS 支持(可切换显卡)。如果带有的是 NVIDIA 的独立显卡,那么这通常叫做 NVIDIA Optimus 技术。因为不可能利用独立显卡作为内置屏幕的显示输出,所以一般情况下建议屏蔽它们,并将它们的电源关闭(稍后将会涵盖在此指南中)。
  • 然而,在有些情况下,独立显卡驱动了任何外接显示输出(HDMI、mini DisplayPort 等等),可能工作也可能不工作;在那种情况下,它们会正常工作,你需要保持它打开并运行。
  • 然而,有些笔记本电脑罕见地不支持可切换显卡,所以可以使用独立显卡(如果被 macOS 支持),但是接入并安装通常会导致问题。

被支持的显卡的完整列表,请查看显卡买家指南

::: details 英特尔显卡支持表

显卡世代 初始支持版本 最新支持版本 注释
第 3 代 GMA 10.4.1 10.7.5 需要 32 位内核和补丁
第 4 代 GMA 10.5.0 ^^ ^^
Arrendale(HD Graphics) 10.6.4 10.13.6 只支持 LVDS、eDP 但不支持外接显示输出
Sandy Bridge(HD 3000) 10.6.7 ^^ N/A
Ivy Bridge(HD 4000) 10.7.3 10.15.7 ^^
Haswell(HD 4XXX, 5XXX) 10.8.5 当前版本 ^^
Broadwell(5XXX, 6XXX) 10.10.0 ^^ ^^
Skylake(HD 5XX) 10.11.0 ^^ ^^
Kaby Lake(HD 6XX) 10.12.4 ^^ ^^
Coffee Lake(UHD 6XX) 10.13.6 ^^ ^^
Comet Lake(UHD 6XX) 10.15.4 ^^ ^^
Ice Lake(Gx) 10.15.4 ^^ 需要在启动参数中添加 -igfxcdc-igfxdvmt
Tiger Lake(Xe) N/A N/A 无可用驱动

注意:Apple 在 macOS 11 Big Sur 中保留了 Ivy Bridge 的核芯显卡的驱动,然而它们正在计划移除。请意识到它们可能会在过些时候被删除。

:::

::: details AMD 显卡支持表

显卡世代 初始支持版本 最新支持版本 注释
X800 10.3.x 10.7.5 需要 32 位内核
X1000 10.4.x ^^ N/A
Terascale 10.4.x 10.13.6 ^^
Terascale 2/3 10.6.x ^^ ^^
GCN 1 10.8.3 当前版本 ^^
GCN 2/3 10.10.x ^^ ^^
Polaris 10, 20 10.12.1 ^^ ^^
Vega 10 10.12.6 ^^ ^^
Vega 20 10.14.5 ^^ ^^
Navi 10 10.15.1 ^^ 需要在启动参数中添加 agdpmod=pikera
Navi 20 11.1 ^^ 当前的驱动无法使用

:::

::: details Nvidia 显卡支持表

显卡世代 初始支持版本 最新支持版本 注释
GeForce 6 10.2.x 10.7.5 需要 32 位核心和 NVCAP 补丁
GeForce 7 10.4.x ^^ 需要 NVCAP 补丁
Tesla 10.4.x 10.13.6 ^^
Tesla V2 10.5.x ^^ ^^
Fermi 10.7.x ^^ ^^
Kepler 10.7.x 当前版本 N/A
Kepler V2 10.8.x ^^ ^^
Maxwell 10.10.x 10.13.6 需要 WebDriver
Pascal 10.12.4 ^^ ^^
Turing N/A N/A 无驱动可用
Ampere ^^ ^^ ^^

:::

主板支持

大部分情况下,只要 CPU 被支持,主板也一样支持。以前,B550 主板有一些问题:

但是感谢近期所做的开发,B550 主板现在已经可以配合附加的 SSDT-CPUR 启动。更多的信息将会在收集文件Zen 的 config.plist 部分

存储支持

大部分情况下,所有基于 SATA 的驱动器都被支持,而且大部分 NVMe 的驱动器也一样运行得好。这里只有一小部分例外:

  • 三星 PM981、PM991 and 镁光 2200S NVMe SSD
    • 这些 SSD 不能很好地兼容(会导致内核错误)所以需要 NVMeFix.kext 以修复这些内核问题。注意,即便使用 NVMeFix.kext,这些驱动器仍可能导致启动问题。
    • 另一方面,三星 970 EVO Plus NVMe SSD 也存在同样的问题,但是已经在固件更新中被修复了;在这里获取更新(通过 Windows 下的 Samsung Magician 或可启动的 ISO)。
    • 同时需要注意的是,为 HDD 加速而使用英特尔傲腾内存或者镁光 3D XPoint 的笔记本电脑在 macOS 中不受支持。一些用户曾报告在 Catalina 中成功运行——甚至是读写也完全支持,但是我们强烈推荐移除傲腾内存以排除潜在的启动问题。

有线网络

实际上,所有的有线网络适配器在 macOS 中都有某种形式的支持,无论是使用内建驱动或是社区制作的内核扩展。主要的例外情况:

  • Intel 的 2.5GB 以太网 i225 网卡
    • 在高端桌面 Comet Lake 主板上被发现
    • 可行的变通办法:来源示例
  • Intel 的服务器网卡
  • Mellanox 和 Qlogic 服务器网卡

无线网络

大部分笔记本电脑自带的 Wi-Fi 芯片都不被支持,因为它们通常由英特尔或高通制造。如果你比较幸运,你可能会有一块 Atheros 芯片,但是对它的支持仅持续到了 High Sierra。 最佳选项是获取一块博通(Broadcom)的无线网卡,查看 无线网卡买家指南以获得推荐的产品。

杂项

  • 指纹传感器
    • 目前没有任何方式来模拟 Touch ID 传感器,所以指纹传感器不能工作。
  • Windows Hello 面部识别
    • 一些笔记本电脑带有连接至 I2C 的 Windows Hello 面部识别(并使用你的核芯显卡),它们将不会工作。
    • 一些笔记本电脑带有连接至 USB 的 Windows Hello 面部识别,如果你比较幸运,那你可能会得到摄像头的功能,但没有更多别的作用。
  • 英特尔智音技术(Intel Smart Sound Technology)
    • 带有英特尔智音技术的笔记本电脑,将不会有任何连接到英特尔智音技术的设备正常工作,因为它不被支持。你可以在 Windows 上的设备管理器中查看。
  • 耳机组合插孔
    • 一些带有耳机组合插孔的笔记本电脑可能无法通过它得到音频输入,所以不得不使用内建麦克风或者外接的 USB 音频输入设备。
  • Thunderbolt USB-C 接口
    • (Hackintosh 的)Thunderbolt 接口在 macOS 中的支持目前依然存在问题,目前很多笔记本电脑都带有的 Alpine Ridge 控制器更是如此。有人曾尝试过让控制器保持通电,这可以让 Thunderbolt 接口和 USB-C 工作在热插拔模式下,但这是以内核错误和/或 USB-C 睡眠后中断为代价的。如果你想使用 USB-C 一侧的端口并且可以正常睡眠,你必须将它接入并且保持接入状态。
    • 注意:这不适用于仅限 USB-C 的接口——仅适用于 Thunderbolt 3 和 USB-C 混合的接口。
    • 在 BIOS 中关闭 Thunderbolt 可以解决这个问题。