PC

Emulação Rosetta 2 vs Windows x86 da Apple, tudo explicado

Emulação Rosetta 2 vs Windows x86 da Apple, tudo explicado

A Apple fez história quando lançou os novos MacBooks com seu processador Apple M1 baseado em ARM, substituindo os processadores Intel depois de mais de uma década. Com uma transição tão grande, havia uma tarefa gigantesca nas mãos da Apple para manter a compatibilidade do aplicativo no M1. No entanto, parece que a Apple conseguiu isso por meio de sua poderosa camada de tradução - Rosetta 2. Já vimos como o Windows em ARM falhou em atrair os usuários por causa de problemas de compatibilidade com aplicativos x86. Então, o que torna o Rosetta 2 tão poderoso e por que a emulação do Windows x86 não parece ter essa promessa? Bem, para encontrar a resposta, vamos comparar o Rosetta 2 da Apple com a emulação do Windows x86 lado a lado.

Emulação Rosetta 2 vs Windows x86 da Apple: tudo o que você precisa saber

Aqui, mencionamos todas as seções que abordamos para que você possa encontrar facilmente todas as informações. Você pode clicar no link para mover-se facilmente entre as diferentes seções. Índice + -

Como funciona o Rosetta 2 da Apple?

Após a introdução do Rosetta em 2006 durante a transição PowerPC-Intel, a Apple anunciou um Rosetta 2 muito melhorado em 2020 para uma transição Intel-Apple Silicon perfeita. Para os não iniciados, Rosetta 2 é o camada de tradução que permite usar aplicativos baseados em Intel em Macs Apple Silicon. Mas como funciona essa poderosa camada de tradução? Há poucas informações sobre este assunto, portanto, tentaremos dissecar o Rosetta 2 e entender como funciona o Rosetta 2.

Em primeiro lugar, Rosetta 2 é uma camada de tradução, o que significa que traduz os conjuntos de instruções da arquitetura Intel x86 em arquitetura Apple Silicon baseada em ARM. Quando digo conjunto de instruções, significa os comandos (também chamados de código de máquina na computação) necessários para executar um programa de uma arquitetura em outra. Desde a As arquiteturas x86 e ARM são drasticamente diferentes, esta tradução é necessária para o bom funcionamento de aplicativos baseados em Intel.

Agora surge a pergunta: como essa tradução acontece e como o Rosetta está conseguindo executar aplicativos x86 pesados ​​em Macs ARM perfeitamente? Você pode atribuir o motivo principal ao Compilador antecipado (AOT) que a Apple implantou no Rosetta 2. Anteriormente com o Rosetta em 2006, a Apple estava usando apenas o compilador Just-in-time (JIT) para tradução binária estática. Agora, com o compilador AOT no Rosetta 2, a Apple Silicon é capaz de traduzir e compilar o código em tempo real por meio de tradução binária dinâmica.

Isso significa que o Rosetta 2 agora usa os compiladores AOT e JIT, dependendo do cenário. Mesmo antes de você abrir um aplicativo, o Rosetta 2 usa o compilador AOT durante a instalação do aplicativo para traduzir o código. Isso torna o aplicativo baseado em Intel comportar-se como um aplicativo universal feito nativamente para o Apple Silicon. Nos casos em que os parâmetros não são conhecidos ou os valores serão gerados no tempo de execução, Rosetta 2 usa JIT para tradução em tempo real.

Em conjunto, Rosetta 2 é capaz de traduzir conjuntos de instruções x86 para código específico de ARM muito antes e de uma forma mais rápida, trazendo a diferença de desempenho entre aplicativos nativos universais e aplicativos baseados em Intel para uma margem estreita.

Como funciona a emulação do Windows x86?

Ao contrário da Apple, a Microsoft não adotou totalmente o ARM e tem havido um desenvolvimento lento nessa frente. A empresa licenciou até agora apenas alguns laptops com Windows ARM, incluindo o Surface Pro X e alguns PCs sempre conectados da HP, Lenovo, etc. A principal razão por trás da lenta adoção de laptops com Windows ARM é, aparentemente, o falta de suporte para aplicativos x86-64 bits (baseados em Intel de 64 bits) que cobrem a maior parte dos aplicativos modernos do Windows.

A partir de agora, os laptops Windows baseados em ARM suportam apenas aplicativos nativos construídos no conjunto de instruções ARM e aplicativos baseados em Intel de 32 bits que são executados por meio de emulação Windows x86. Você pode concluir que A emulação do Windows x86 tem sido um gargalo para uma transição suave para ARM. Chegando à questão, por que a Microsoft não consegue lançar algo como Rosetta 2 no Windows 10?

IrfanView em execução por meio do emulador x86 no Windows 10X

Bem, para responder à sua pergunta, já o faz. Ao contrário da percepção popular, Na verdade, a Microsoft usa a mesma abordagem que Rosetta- traduzir os binários em código de máquina por meio de sua camada WOW64. De acordo com um documento da Microsoft de 2018, “A camada WOW64 do Windows 10 permite que o código x86 seja executado na versão ARM64 do Windows 10. A emulação x86 funciona compilando blocos de instruções x86 em instruções ARM64 com otimizações para melhorar o desempenho. Um serviço armazena em cache esses blocos de código traduzidos para reduzir a sobrecarga da tradução de instruções e permitir a otimização quando o código for executado novamente. ”

Além disso, em setembro de 2020, a Microsoft anunciou que uma nova emulação x86 está chegando aos laptops com Windows ARM no próximo ano. Além disso, também trará suporte para aplicativos de 64 bits baseados em Intel em silicone ARM. Quanto ao compilador, há pouquíssimas informações sobre o assunto. No entanto, sabe-se que a Microsoft tem usado o JIT para tradução e compilação em tempo real. Teremos que esperar e ver o que o novo emulador x86 tem na loja quando for lançado no próximo ano.

Emulação Rosetta 2 vs Windows x86 da Apple: desempenho de tradução

Embora a nova emulação do Windows x86 deva chegar no próximo ano, existem alguns outros problemas que tornam a tradução do x86 no Windows muito mais lenta do que no Rosetta. Em primeiro lugar, o macOS deve oferecer suporte a apenas duas arquiteturas: ARM de 64 bits e x86 de 64 bits. A Apple acabou com o suporte a aplicativos de 32 bits em 2019. Em comparação, o Windows em ARM oferece suporte à arquitetura ARM de 32 bits e 64 bits; x86 de 32 bits e x86 de 64 bits que será lançado no próximo ano. Com tal sobrecarga de recursos, é difícil tornar a tradução mais rápida.

Em seguida, o Windows tem que manter compatibilidade com versões anteriores com milhares de programas, plug-ins, ferramentas, bibliotecas desatualizadas e outros enfeites. Considerando que, o controle rígido da Apple sobre a plataforma garante que os desenvolvedores estejam sempre na estrutura moderna para o desenvolvimento de aplicativos que, por sua vez, ajuda a fazer essa grande transição. Além disso, como a Apple já fez uma transição bem-sucedida de PowerPC para Intel Macs (2006-2009) no passado, ela tem uma experiência muito melhor para puxar algo assim.

Por último, a diferença de desempenho entre o Snapdragon 8cx da Qualcomm (encontrado em laptops ARM baseados em Windows) e o Apple M1 é significativa. Mesmo o mais recente Snapdragon 888 está pelo menos uma geração atrás do Apple A14 Bionic. Mas há boas notícias. A Qualcomm anunciou a próxima iteração do processador para desktop - o Snapdragon 8cx Gen 2 5G - em setembro, e estará disponível em laptops com Windows ARM no próximo ano. A combinação de um novo chip e emulação aprimorada pode resolver o problema da Microsoft.

Emulação Rosetta 2 vs Windows x86 da Apple: qual é o vencedor?

Está claro que Rosetta 2 é muito poderoso e a Apple fez um trabalho fantástico ao trazer suporte de aplicativo para programas baseados em Intel. No momento, o Windows em ARM pode não parecer tão promissor, mas dado o anúncio da Microsoft sobre o novo método de emulação, isso certamente aumenta a esperança para os usuários do Windows. Resta ver se a Microsoft superará a Apple no próximo trimestre. De qualquer forma, isso é tudo nosso. Se você tiver alguma dúvida, comente abaixo e nos informe.

As 5 principais alternativas do Twitter que você deve experimentar
Existem apenas dois tipos de pessoas no mundo, as que são viciadas no Twitter e as que não gostam do Twitter. Se você pertence à última categoria, est...
Como ver as letras das músicas no Apple Music no Mac
Para alegria dos assinantes do Apple Music, há um tempo, a Apple lançou um novo recurso que permite aos usuários ver a letra da música que está tocand...
Como transferir fotos do iPhone para o PC
Não é segredo que os iPhones funcionam extremamente bem com Macs. Mas não tanto com PCs. Tanto é assim, que até a versão do iTunes para Windows explod...