# Limitações de Hardware

Com o macOS, é preciso estar ciente de que existem muitas limitações de hardware antes de dar o primeiro passo com a instalação. Isso acontece por causa da quantidade limitada de hardware que a Apple suporta, o que nos limita ao que ela vende ou aos patches que a comunidade cria.

As seguintes seções devem ser observadas:

Para guias mais detalhados sobre o assunto, acesse:

# Suporte de CPU

No quesito CPU, as seguintes características são suportadas:

  • CPUs de ambas as arquiteturas, 32 e 64 bits.
    • Isso, no entanto, requer que o sistema ofereça suporte à arquitetura. Veja mais na seção Exigências de CPU, abaixo.
  • CPUs Intel de desktop.
    • Este guia oferece suporte para processadores Yonah a Comet Lake.
  • CPUs Intel de alta performance e de servidor.
    • Este guia oferece suporte para processadores Nehalem a Cascade Lake X.
  • CPUs Intel Core "i" e série Xeon para notebooks.
    • Este guia oferece suporte para processadores Arrandale a Ice Lake.
    • Observe que processadores para notebooks Atom, Celeron e Pentium não são suportados.
  • CPUs AMD Bulldozer (15h), Jaguar (16h) e Ryzen (17h) para desktops.
    • Processadores AMD para notebooks não são suportados.
    • Observe que nem todos os recursos do macOS são suportados em plataformas AMD. Saiba mais a seguir.

Para informações mais detalhadas, acesse o Guia de Compra Anti-Hackintosh (opens new window).

Exigências de CPU

Arquitetura

  • CPUs de 32 bits são suportadas do Mac OS X 10.4.1 Tiger ao Mac OS X 10.6.8 Snow Leopard.
    • Observe que o OS X 10.7 Lion exige a execução do espaço de usuário em 64 bits, limitando CPUs de 32 bits ao Mac OS X 10.6 Snow Leopard.
  • CPUs de 64 bits são suportadas a partir do Mac OS X 10.4.1 Tiger.

Instruções SSE

  • SSE3 é exigido para todas as versões do OS X/macOS Intel.
  • SSSE3 é exigido para todas as versões de 64 bits do OS X/macOS Intel.
    • Para CPUs que não possuem SSSE3 (ex.: certos Pentiums de 64 bits), é recomendado executar o espaço de usuário em 32 bits por meio do argumento de boot i386-user32.
  • SSE4 é exigido a partir do macOS 10.12 Sierra.
  • SSE4.2 é exigido a partir do macOS 10.14 Mojave.

Firmware

  • EFI32 é exigido do Mac OS X 10.4.1 Tiger ao 10.4.7 (isto é, OpenCore de 32 bits (IA32)).
    • Mac OS X 10.4.8 Tiger ao OS X 10.7.5 Lion suportam tanto EFI32 quanto EFI64.
  • A partir do OS X 10.8 Mountain Lion, é exigido EFI64 (isto é, OpenCore de 64 bits (x64)).
  • O driver OpenPartitionDxe.efi é necessário do OS X 10.7 Lion ao 10.9 Mavericks para que seja possível iniciar a partição de recuperação.

Kernel

  • Kexts de 32 bits são exigidas do OS X 10.4 Tiger ao 10.5 Leopard, pois executam o espaço do kernel somente em 32 bits.
    • O Mac OS X 10.6 Snow Leopard e o OS X 10.7 Lion suportam executar o espaço do kernel tanto em 32 quanto em 64 bits.
  • A partir do OS X 10.8 Mountain Lion, são exigidas kexts de 64 bits, pois executam o espaço do kernel somente em 64 bits.
    • Execute o comando lipo -archs para saber quais arquiteturas suas kexts suportam (lembre-se de executar este comando diretamente no binário executável e não no pacote .kext).

Limitações de Núcleos/Threads

  • Versões do OS X 10.10 Yosemite e anteriores podem não iniciar caso a CPU possua mais de 24 threads (como evidenciado pelo kernel panic mp_cpus_call_wait() timeout).
  • Versões a partir do OS X 10.11 El Capitan possuem um limite máximo de 64 threads.
  • O argumento de boot cpus= pode ser usado para contornar o problema.
  • Desativar o HyperThreading também serve para evitar o problema.

Observações Especiais

  • A kext Lilu e seus plug-ins exigem o Mac OS 10.8 Mountain Lion ou superior para funcionar.
    • Recomenda-se utilizar o FakeSMC em versões antigas do OS X.
  • Versões do Mac OS X 10.6 Snow Leopard e anteriores exigem que a opção RebuildAppleMemoryMap esteja ativada.
    • Isto serve para evitar um kernel panic.
Tabela de CPUs Intel Suportadas

Lista baseada no suporte de kernel (kérneis?) não modificados (vanilla):

Geração Suporte Inicial Suporte Final Observações CPUID
Pentium 4 (opens new window) 10.4.1 10.5.8 Usado somente em dev-kits. 0x0F41
Yonah (opens new window) 10.4.4 10.6.8 32 bits 0x0006E6
Conroe¹ (opens new window), Merom (opens new window) 10.4.7 10.11.6 Sem SSE4. 0x0006F2
Penryn¹ (opens new window) 10.4.10 10.13.6 Sem SSE4.2. 0x010676
Nehalem (opens new window) 10.5.6 Atual N/A 0x0106A2
Lynnfield¹ (opens new window), Clarksfield¹ (opens new window) 10.6.3 Sem suporte a GPU integrada da Intel em versões a partir do macOS 10.14 Mojave. 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 Sem suporte a GPU integrada da Intel em versões a partir do macOS 11 Big Sur. 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) Exige CPUID de Comet Lake. 0x0A0671
Tiger Lake¹ (opens new window) N/A N/A Não testado. 0x0806C0(U)

¹Links em inglês devido à falta de tradução.

Limitações de CPUs AMD no macOS

Infelizmente, muitos recursos do macOS são instáveis ou simplesmente não funcionam em processadores AMD. Alguns deles incluem:

  • Máquinas virtuais que dependem do AppleHV.
    • Inclui o VMWare, o Parallels, o Docker, o Android Studio, entre outros.
    • O VirtualBox é a única exceção, pelo fato de possuir hypervisor próprio.
    • O VMWare 10 e o Parallels 13.1.0 possuem hypervisor próprio, no entanto, essas versões são antigas e usá-las representa uma grande ameaça à segurança.
  • Softwares da Adobe.
    • A maioria dos aplicativos da Adobe dependem do conjunto de instruções Memfast, da Intel, o que resulta em travamentos nas CPUs AMD.
    • É possível desativar certas funcionalidades, como suporte a RAW, para evitar tais travamentos: Correções para Adobe (opens new window).
  • Suporte a arquitetura de 32 bits.
    • Para aqueles que ainda dependem de softwares de 32 bits em versões do macOS 10.14 Mojave e anteriores, observe que os patches vanilla não suportam instruções 32 bits.
    • Uma alternativa é a instalação de um kernel modificado (opens new window), no entanto, perde-se o suporte ao iMessage. Além disso, não há suporte oficial para esses kernels (kérneis?).
  • Problemas de estabilidade em muitos aplicativos.
    • Aplicativos de áudio, como o Logic Pro, são os mais vulneráveis a problemas.
    • É sabido que o DaVinci Resolve também apresenta problemas esporádicos.

# Suporte de GPU

Suporte de GPU se torna muito mais complicado devido à existência de uma quantidade quase infinita de placas de vídeo à venda no mercado, mas no geral é o que se segue:

E uma observação importante sobre notebooks com GPUs dedicadas:

  • 90% das GPUs dedicadas não funcionam porque são conectadas internamente de forma que o macOS não oferece suporte (GPUs alternáveis). A Nvidia chama essa função de Optimus. Não é possível utilizar essas GPUs dedicadas para o monitor interno, então é recomendado desativá-las e desligá-las. Isso será abordado neste guia mais para frente.
  • Em alguns casos, a GPU dedicada fica responsável pelas portas HDMI, Mini DisplayPort e outras, o que pode ou não funcionar no macOS. Caso funcione, será necessário manter a GPU ligada e funcionando.
  • E é raro, mas existem alguns notebooks que não possuem GPUs alternáveis, o que torna possível usar a GPU dedicada, se suportada pelo macOS. Porém, a maneira como são conectadas à placa mãe geralmente causam problemas.

Para ver uma lista completa de GPUs suportadas, acesse o Guia de Compra de GPUs (opens new window)

Tabela de GPUs Intel Suportadas
Geração Suporte Inicial Suporte Final Observações
GMA de 3ª Geração (opens new window) 10.4.1 10.7.5 Exige kernel e patches de 32 bits (opens new window)
GMA de 4ª Geração (opens new window) 10.5.0
Arrandale (HD Graphics de 1ª Geração) (opens new window) 10.6.4 10.13.6 Suporta somente conexão interna LVDS. HDMI, eDP e outras portas não são suportadas.
Sandy Bridge (HD 3000) (opens new window) 10.6.7 N/A
Ivy Bridge (HD 4000) (opens new window) 10.7.3 10.15.7
Haswell (HD 4XXX, 5XXX) (opens new window) 10.8.5 Atual
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 Exige o uso dos argumentos de boot -igfxcdc e -igfxdvmt.
Tiger Lake (Xe) (opens new window) N/A N/A Nenhum driver disponível.
Rocket Lake (opens new window) N/A N/A Nenhum driver disponível.

Observação: a Apple manteve os drivers das GPUs integradas do Ivy Bridge (4ª geração) no macOS 11 Big Sur, porém sua remoção é iminente. Esteja ciente disso ao instalar.

Todos os links estão em inglês.

Tabela de GPUs AMD Suportadas
Geração Suporte Inicial Suporte Final Observações
X800 (opens new window) 10.3.x 10.7.5 Exige kernel de 32 bits.
X1000 (opens new window) 10.4.x N/A
Terascale (opens new window) 10.4.x 10.13.6
Terascale 2/3 (opens new window) 10.6.x
GCN 1 (opens new window) 10.8.3 Atual
GCN 2/3 (opens new window) 10.10.x
Polaris 10 (opens new window), 20 (opens new window) 10.12.1
Vega 10 (opens new window) 10.12.6
Vega 20 (opens new window) 10.14.5
Navi 10 (opens new window) 10.15.1 Exige o uso do argumento de boot agdpmod=pikera.
Navi 20 (opens new window) 11.4 Atualmente, somente alguns modelos de Navi 21 funcionam.

Todos os links estão em inglês.

Tabela de GPUs Nvidia Suportadas
Geração Suporte Inicial Suporte Final Observações
GeForce 6 (opens new window) 10.2.x 10.7.5 Exige kernel de 32 bits e patch de NVCAP (opens new window).
GeForce 7 (opens new window) 10.4.x Exige patch de 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 Atual N/A
Kepler V2 (opens new window) 10.8.x
Maxwell (opens new window) 10.10.x 10.13.6 Exige os Webdrivers (opens new window).
Pascal (opens new window) 10.12.4
Turing (opens new window) N/A N/A Nenhum driver disponível.
Ampere (opens new window)

Todos os links em inglês porque a Desciclopédia Brasileira é a maior do mundo, mas a Wikipédia Lusófona não.

# Supore de Placa Mãe

Como regra geral, todas as placas são suportadas contanto que a CPU também seja. Mas no passado, placas B550 apresentavam problemas:

Contudo, graças a desenvolvimentos recentes, placas B550 são suportadas com a adição da SSDT-CPUR (opens new window). Mais informações serão fornecidas tanto no guia Juntando os Arquivos quanto na seção config.plist para Zen.

# Suporte de Armazenamento

Em sua maioria, todos os discos baseados em SATA possuem suporte, assim como a maioria dos SSDs NVMe, com somente algumas poucas exceções:

  • SSDs NVMe Samsung PM981, PM991 e Micron 2200S
    • Estes SSDs não são compatíveis de forma nativa (causam kernel panics) e portanto exigem o uso da kext NVMeFix.kext (opens new window) para evitar travamentos. Observe que esses SSDs ainda podem causar problemas na inicialização mesmo com a NVMeFix.kext.
    • Ainda nesse assunto, os SSDs NVMe Samsung 970 EVO Plus também possuiam esse mesmo problema, mas que foi resolvido com uma atualização de firmware. Baixe a atualização (Windows via Samsung Magician ou ISO inicializável) aqui (opens new window).
    • Observe também que notebooks que usam memória Intel Optane (opens new window) ou Micron 3D XPoint (opens new window) para aceleração de HDD não são suportados no macOS. Alguns usuários reportaram sucesso no macOS 10.15 Catalina, até mesmo com suporte a leitura e escrita, mas recomendamos que a memória seja removida para evitar problemas de inicialização em potencial.
  • Intel 600p

# Rede Cabeada

Praticamente todos os adaptadores de rede possuem alguma forma de suporte no macOS, seja por meio dos drivers nativos ou por meio de kexts feitas pela comunidade. As maiores exceções são:

# Rede Sem Fio

A maioria das placas Wi-Fi pré-instaladas em notebooks não são suportadas. Geralmente são Intel, Qualcomm ou Realtek. Se tiver sorte, talvez encontre uma placa Atheros que tem suporte somente até o macOS 10.13 High Sierra.

A melhor opção é a compra de uma placa Broadcom suportada. Veja a lista completa de recomendações no Guia de Compra de Wi-Fi (opens new window).

Observação: Placas Intel possuem suporte não oficial no macOS por meio de drivers de terceiros. Veja o Guia de Compra de Wi-Fi (opens new window) para mais informações sobre os drivers e as placas suportadas.

# Diversos

  • Leitores de Digitais
    • No momento, não existe uma forma de emular o sensor do Touch ID, portanto leitores de digitais não funcionam.
  • Reconhecimento Facial do Windows Hello
    • O reconhecimento facial não é suportado.
    • Alguns notebooks vem com webcams conectadas no barramento I2C (e usadas através da GPU integrada). Essas não funcionam.
    • Já outros vem com webcams conectadas no barramento USB. Com um pouco de sorte, a câmera pode funcionar, mas nada além disso.
  • Tecnologia Intel Smart Sound (SST)
    • Nenhum dispositivo conectado através do Intel SST funcionará. Geralmente é o microfone interno. É possível verificar no Gerenciador de Dispositivos do Windows.
  • Entrada de Fone de Ouvido Combinada com Microfone (ComboJack, TRRS, Fone de Celular)
    • A parte de entrada de áudio (microfone) pode não funcionar em alguns modelos de notebooks. Nesses casos, será necessário usar o microfone integrado ou algum dispositivo de áudio USB externo.
  • Portas USB-C Thunderbolt
    • O suporte para portas Thunderbolt e USB-C combinadas ainda é instável em hackintoshes, ainda mais com controladores Alpine Ridge, presente na maioria dos notebooks. Foram feitas tentativas de manter o contralador ligado, o que permitiria o hotplug de dispositivos, mas isso causou kernel panics e interrompeu o funcionamento das portas USB-C ao retornar da suspensão. A única forma de usar a porção USB-C dessas portas e ainda ser capaz de suspender o computador é conectando um dispositivo durante a inicialização do sistema e mantendo-o sempre conectado.
    • Observação: isso não se aplica a portas que são apenas USB-C, somente para portas USB-C e Thunderbolt 3 combinadas.
    • Desativar o Thunderbolt na BIOS também resolve este problema.