Jump to content
Sign in to follow this  
HQuest

Dual boot com OC

Recommended Posts

Essa é pra quem tem apenas um HD (tipo notebooks ou quem tá sem grana pra comprar outro HD), ou tem mais de um HD mas simplesmente quer usar OpenCore pra dual (ou triple) boot. TL;DR: Não modifique tabelas APCI para todos os SO's.

O Clover identifica qual SO (sistema operacional) sendo carregado, e não aplica nenhuma mudança nas tabelas ACPI pra sistemas que não sejam macOS. Assim como o carregador oficial da Apple em seus equipamentos, o OpenCore trata todos os SO's por igual, então é você quem tem que cuidar com as tabelas ACPI. E isso é feito em 2 simples passos:

1. Evite usar patches das tabelas APCI dentro do OpenCore (ACPI > Patches). "Funcionam" pra coisas bem pequenas, mas não são recomendados. Geralmente enquanto eles resolvem um problema, criam outros. Por exemplo, tela azul no Windows.

2. Quando tu criar uma modificação das tabelas ACPI (via arquivos DSDT/SSDT), coloque essas modificações somente para o SO que precisa dessas modificações. Simples assim: "Se o sistema operacional a ser lido se identifica como macOS, então mude essa informação da tabela ACPI para o seguinte:". Traduzindo isso pra linguagem DSL:

If (_OSI ("Darwin")) { ... }

Exemplo:

/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20200110 (64-bit version)
 * Copyright (c) 2000 - 2020 Intel Corporation
 * 
 * Disassembling to symbolic ASL+ operators
 *
 * bla bla bla do ACPI
 */
DefinitionBlock ("", "SSDT", 1, "EhNoisNaFita", "CpuPm", 0x00000001)
{
    External (_PR_.CPU0, DeviceObj)
    // Outros objetos externos

    If (_OSI ("Darwin"))
    {
       // Aqui vão todas as modificações que eu quero fazer pro meu processador.
    }
}

E pronto. Agora que você não muda mais as tabelas ACPI pra outros sistemas que não seja o macOS, tu pode usar o OpenCore (com o seletor nativo ou o gráfico OpenCanopy) pra carregar Windows ou macOS (ou Linux, ou BSD, ou sei lá), sem medo de ser feliz.

No exemplo acima, eu coloquei essa seleção em um arquivo a parte, mas nada impede de ela ser aplicada na sua tabela principal, a DSDT: esse mesmo processo é feito pelo fabricante do teu equipamento, e é assim que eles fazem certas coisas serem compatíveis com as diferentes versões do Windows.

Só não esqueça que o Windows (em especial) gosta de sobrescrever arquivos e acha que é o único SO do planeta. A dica acima não corrige a mentalidade Microsoft, mas se tu não pode ter um disco dedicado para cada SO, não consegue usar o F11 pra escolher de qual disco vai ler o SO, ou prefere algo mais elegante enquanto funcional, tá aí tua solução.

Share this post


Link to post
Share on other sites

Não modifica as tabelas e fica com um hack miado

Os devs tem de acertar isso e não usar essa gambiarra. Querer empurrar nos outros uma solução que não resolve muita coisa

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...