sexta-feira, 17 de dezembro de 2010

O Mac também fala pecezês

Um dos mitos mais propagados no mundo PC é o de que o Mac seria uma máquina “menos compatível”. Uma bobagem, já que há mais de 20 anos é possível ter um PC IBM-compatível dentro do Mac, enquanto o inverso só se tornou possível bem mais recentemente.

Emuladores são velhos conhecidos dos usuários Mac. Já nos anos 80, os Macs conseguem rodar outros sistemas operacionais graças a esse tipo de programa, que imita um hardware via software. O primeiro exemplo bem-sucedido foi o SoftPC, da Insignia Solutions, que emulava um IBM PC XT, com processador 8088, em um Mac com chip Motorola 68020. Rodava programas de DOS. Em 1994, foi lançado o SoftWindows, que permitia rodar o Windows 3.1 e seus programas no Mac, numa velocidade aceitável. Mais tarde, a Insignia passaria a sofrer a concorrência da Connectix, com o VirtualPC, posteriormente adquirido pela Microsoft.

Cartão de compatibilidade DOS da Apple

A Apple não desencorajou iniciativas como essa. Pelo contrário, até passou a oferecer soluções de hardware, que dispensavam a tradução do código x86 para 68k ou PPC. Eram os famosos cartões de compatibilidade DOS, placas de PC com processador Intel 80486 ou Pentium que vinham espetadas nos slots PDS, NuBUS ou PCI, conforme a versão do Mac. Embora essas máquinas fossem comandadas pelo Mac OS, podiam rodar Windows nativamente. O HD era particionado e, apesar de cada sistema ter sua própria memória, a área de transferência podia ser compartilhada entre os dois. O usuário alternava entre os dois sistemas com uma simples combinação de teclas (command + return). Alguns modelos de Performa e Power Macintosh vinham com esses cartões instalados de fábrica.

E emular Mac em outros sistemas? No Amiga, da Commodore, era possível emular o Mac desde 1988. Como o Amiga também usava CPUs da família 68k, não havia necessidade de emular o processador. Com a transição para o PowerPC, o último chip 68k usado no Mac foi o 68040. O Amiga, por sua vez, chegou a usar o processador 68060, mais veloz e capaz de trabalhar a clocks maiores. Por isso, um Mac virtualizado pelo ShapeShifter ou pelo Fusion em um Amiga com CPU 060 oferecia mais velocidade que um Mac 68k real.

Para PC, desde 1990 um emulador chamado Executor permite rodar programas de Mac sem rodar o Mac OS de verdade. Só em 1999, com o Basilisk II, conseguiu-se uma emulação aceitável do Mac OS no Linux. O Basilisk II foi posteriormente portado para DOS, Windows e até para o Mac OS X!


Mac OS 8.1 rodando, via Basilisk II, em um MacBook com OS X 10.6.5

Como? Emular Mac no Mac? Sim! Nos novos Macs com processador Intel, a única forma de rodar programas do Mac OS clássico é emulando um Mac 68k com o Basilisk II ou um Mac PowerPC com o SheepShaver ou o PearPC. Nas transições de processador (68k para PowerPC e PowerPC para Intel), a Apple empregou emulação, no caso para traduzir o código de programas antigos para o novo chip. Também na mudança do sistema clássico para o OS X, houve uma espécie de virtualização com o entorno Classic, que permitia rodar programas antigos dentro do Mac OS X.

Mesmo antes da volta de Steve Jobs, a Apple já vinha progressivamente adotando cada vez mais componentes padrões da indústria. Isso significa que os Macs estavam ficando cada vez mais parecidos (e compatíveis) com PC. Mas nada comparado à revolução anunciada por Jobs em 2005, quando a Apple migrou para os processadores Intel. Em termos de hardware, a única diferença significativa entre um Mac e um PC genérico é o dispositivo de boot. Enquanto os PCs têm uma ROM que roda o programa BIOS, o Mac usa a Extensible Firmware Interface (EFI).



Hackintosh: como transformar um PC barato em um Mac (sem autorização da Apple)

Com isso, os Macs podem rodar Windows nativamente, graças a um programa da Apple chamado Boot Camp, que instala o BIOS na EFI e permite dual-boot. A recíproca é verdadeira: com algumas gambiarras, PCs genéricos podem rodar o Mac OS X em código x86. É o chamado “Hackintosh”, que funciona até em alguns netbooks. A Apple não autoriza essa prática. A licença de uso do Mac OS X só permite que ele seja instalado em máquinas da Apple.

Windows Internet Explorer rodando no Windows XP em uma máquina virtual do Parallels, no OS X 10.6.5: integração total entre os dois sistemas

Se o Boot Camp ainda não tem a flexibilidade dos antigos Macs DOS-Compatible ou PC-Compatible, a solução é usar virtualizadores como o Parallels Desktop ou o VMWare Fusion, que permitem rodar o Windows dentro do Mac OS X, em uma máquina virtual, sem necessidade de emular o processador e com transparência e integração entre os dois sistemas. Há ainda o CrossOver e o Wine, que possibilitam rodar programas de Windows sem precisar rodar Windows, usando apenas algumas bibliotecas do sistema da Microsoft. E agora digam, quem que não é compatível?

Microsoft Visio rodando no Mac OS X via Crossover

Nenhum comentário:

Postar um comentário