Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
23/05/94

<Power PC >


Alguém já disse isso, só que não me lembro quem foi: fazer previsões é muito difícil, especialmente quando se referem ao futuro. Mas, como se trata de futuro próximo e até agora tudo corre como previsto, atrevo-me a prever que enquanto vocês lêem essa coluna eu estarei na COMDEX Spring, em Atlanta. E, lá estando, muito provavelmente experimentarei um animal de nova estirpe: o Power PC.

Para quem não sabe do que se trata: no início de 91, três empresas resolveram aliar suas forças para liquidar com o domínio da Intel no terreno dos micros da linha PC. As empresas foram a IBM, a Motorola e a Apple. A Motorola entrou com os MPC, uma nova e revolucionária linha de microprocessadores RISC destinados a ocuparem o trono das CPU dos novos micros. A IBM com uma arquitetura igualmente revolucionária para as suas máquinas que usarão essa CPU, os Power PC. E a Apple, que nada tem a ver com a linha PC mas tem muito a ver com a Motorola, também aderiu - na verdade, saiu na frente - e entrou com o Power Mac, permitindo que o software nativo do MacIntosh rode nos Power PC.

Está tudo muito bom, está tudo muito bem. Mas afinal novas máquinas e alianças entre corporações pipocam aqui e ali, duram um pouco mais ou um pouco menos e raramente alcançam alguma importância. Então para que tanto alvoroço? E, afinal, que diabo é esse tal de RISC?

RISC é o acrônimo de "Reduced Instruction Set Computer", ou computador com conjunto reduzido de instruções - contrapondo-se a CISC, de "Complex Instruction Set Computer", ou computador com conjunto complexo de instruções. As CPU da Intel que integram nossos PC, desde o velho 8088 até o novo Pentium, são CISC. Se algum dia você se aventurar a consultar um compêndio de programação em assembly para essas CPU, vai se deparar com um enorme conjunto de instruções. Que vão desde operações elementares como comparar dois valores "gastando" dois ciclos da CPU até coisas extremamente complexas como efetuar divisões de números relativos, gastando dezenas de ciclos da CPU. Já o conjunto de instruções de um microprocessador RISC resume-se a umas poucas instruções elementares, executadas em um único - ou muito poucos - ciclos da CPU.

Mas então a CPU CISC, cujo conjunto de instruções é muito mais rico e capaz de executar operações complexas com uma única instrução deve ser melhor, certo? Bem, depende do ponto de vista. Para programadores em assembly, certamente que sim: o código fonte (aquele que será mais tarde compilado e se transformará no programa executável) fica muito menor. Se ele usasse uma CPU RISC para gerar o mesmo programa teria muito mais trabalho, já que seria obrigado a "quebrar" cada uma das instruções complexas eventualmente em dezenas de instruções elementares.

Mas, hoje em dia, quem programa em assembly? Fora meia dúzia de maníacos e alguns poucos profissionais que são obrigados a isso, ninguém. Particularmente na era da programação orientada para objetos. Agora, tudo é programado em linguagens de alto nível, principalmente C. E quem gera o código executável é o compilador, um programa que recebe o código fonte na linguagem de alto nível e o transforma em código de máquina otimizado. Resultado: para o programador, não importa se a máquina é RISC ou CISC.

Mas para o usuário importa. E muito: máquinas RISC são muito mais rápidas. Na verdade, por razões técnicas que não caberiam nessa coluna, são diabolicamente mais rápidas. Não apenas porque usualmente trabalham em frequências de operação mais elevadas (o chip MPC mais lento roda na bagatela de 60MHz), mas também porque o código de máquina RISC é passível de otimizações que o complexo conjunto de instruções CISC não permite. Como resultado, o mesmo programa compilado para duas CPU, uma RISC e outra CISC, parece um raio na RISC e um cágado na CISC.

Pois o Power PC é uma máquina RISC. Dois protótipos foram apresentados na COMDEX Fall, realizada em Las Vegas no final do ano passado e muito provavelmente - quase com certeza, espero eu - muita novidade rolará nessa COMDEX Spring.

Nessa altura dos acontecimentos, sendo você um leitor esperto como é, provavelmente uma luz vermelha de advertência já deve ter se acendido: usando o Power PC uma CPU totalmente diferente de todas as que até aqui vêm equipando os micros da linha PC, como poderá ele rodar os mesmos programas? Afinal, a CPU é o coração do micro. E em se tratando de animais de espécies tão distintas, como poderão se alimentar do mesmo capim?

De fato, rodar o mesmo código executável assim sem mais nem menos, é impossível. O Power PC somente poderá mostrar toda a sua força depois que um número suficiente de programas sejam desenvolvidos - ou recompilados - especialmente para ele. Mas isso não impede que os programas atuais, sem modificações, possam rodar nos Power PC. Não da forma ideal, mas através de um recurso denominado "emulação".

Se você não sabe o que é isso, tenha um pouco de paciência: semana que vem eu explico. E se sabe, deu um muxoxo e resolveu nem perder tempo lendo a próxima coluna porque esse negócio de emulação transforma a máquina em uma carroça, mude de idéia. Pelo menos dê uma olhada na coluna. Porque o esquema que o Power PC usa para emular as CPU da Intel é de uma engenhosidade tão fantástica que não somente vai lhe surpreender como também será capaz de rodar seus mesmos programas tão rapidamente como em um 486 DX.

Duvida? Pois então espere uma semana e veja se não é verdade.

B. Piropo