Uma História Curta do Vale do Silício ou Como Ensinar Uma Pedra a Pensar pt2
Na primeira parte, aprendemos os princípios fundamentais que regem a operação de um processador. Discutimos como a criação teórica de um processador simples, desde a lógica dos transistores até a implementação de uma arquitetura de conjunto de instruções (ISA) é não apenas viável como um execlente exercício para qualquer programador de computadores.
Nesta parte vamos conhecer a história por trás do projeto dos processadores modernos.
Bell Labs ou o Início dos Semicondutores
Tudo começou no icônico Bell Labs, que teve como colabores muitos laureados do Prêmio Nobel ao longo dos anos. Foi lá que, em 1947, John Bardeen, Walter Brattain e William Shockley inventaram o transistor - de germânio - uma inovação que lhes rendeu o Prêmio Nobel de Física em 1956. William Shockley decidiu fundar seu próprio laboratório de pesquisa e como sua família era originalmente da Califórnia, por coincidência do destino escolheu estabelecer sua instituição em Mountain View.
Na época, essa região era "só mato" e contrastava com o ambiente de inovação de Boston ou Nova Iorque. Apesar disso e se valendo de seu imenso prestígio Shockley conseguir recrutar um grupo talentoso de cientistas de instituições renomadas, como do próprio Bell Labs, MIT e Harvard para trabalhar no desenvolvimento de semicondutores no outro lado do Estados Unidos. William Shockley era um cientista brilhante, mas suas habilidades como gestor deixavam a desejar.
Dois anos após a formação de seu laboratório, seus colaboradores mais talentosos, frustrados com a administração, decidiram seguir um caminho diferente. Estes oito cientistas ficaram conhecidos como "Os Oito Traidores" e buscavam não apenas focar em pesquisa revolucionária, mas principalmente aplicar seus esforços na criação de produtos economicamente viáveis. Com capital de risco fundaram a Fairchild Semiconductor e poucos meses depois introduziram no mercado o transistor de silício.
A Prole da Fairchild ou a Arquitetura x86
Após o sucesso da Fairchild Semiconductor, dois de seus membros fundadores, Robert Noyce e Gordon Moore, deram início à Intel Corporation em 1968. A empresa causou um impacto significativo no mercado em 1971 ao lançar o 4004, o primeiro microprocessador comercialmente disponível. Este avanço foi possível graças à tecnologia de Integração em Larga Escala (LSI), que possibilitou a integração de milhares de transistores em um único chip.
Desde o princípio, a Intel vislumbrou a iminente revolução do computador pessoal. A materialização desta visão veio em 1978, quando a Intel introduziu o 8086, um microprocessador de 16 bits que inaugurou uma era x86. Este processador se destacou pela sua arquitetura avançada e pela capacidade de executar uma vasta gama de instruções, características típicas da arquitetura CISC, em uma época em que escrever diretamente em linguagem de montagem era necessário isso representava uma grande vantagem pois tornava a programação de computadores mais simples e produtiva.
No entanto, o verdadeiro triunfo desta arquitetura residia em sua compatibilidade retroativa. Isso significava que programas desenvolvidos para uma versão antiga do processador poderiam ser executados em versões mais recentes sem necessidade de alterações. Este era um decisão muito relevante para a época, quando sistemas operacionais em microprocessadores eram uma raridade, a recompilação de programas não era uma opção simples e a portabilidade ainda era um sonho distante.
Paralelamente, outra empresa surgia no cenário da computação: a Advanced Micro Devices, ou AMD. Fundada em 1969 por Jerry Sanders, um ex-executivo da Fairchild, a AMD começou como uma fabricante de circuitos integrados lógicos e de RAM, mas logo obteve licença para produzir versões compatíveis com o x86. Isso marcou o início de uma rivalidade saúdavel que persiste até os dias de hoje e ajudou a consolidar o x86 como padrão da indústria.
A Ascensão de Popularidade e Complexidade do x86
Ao longo dos anos, enquanto a tecnologia avançava e os processadores se tornavam mais potentes e eficientes, a ISA do 8086 também evoluía. Ela foi expandida, refinada e otimizada, incorporando novas instruções e recursos para atender às crescentes demandas do software moderno. Por exemplo, com o advento da computação gráfica e dos jogos, foram adicionadas instruções específicas para melhorar o desempenho gráfico. Da mesma forma, para atender à crescente necessidade de segurança, instruções para criptografia e proteção de dados foram integradas.
A computação pessoal viveu uma época de ouro, com avanços tecnológicos ocorrendo a um ritmo vertiginoso graças à autorrealizável lei de Moore. O x86 e o Windows tornaram-se a força dominante no mundo da computação pessoal. A sinergia entre os modelos de negócios da Microsoft e da Intel criou uma clara distinção entre software e hardware. No entanto, essa expansão e evolução não estavam sem desafios. Manter a compatibilidade com um conjunto de instruções criado décadas atrás, enquanto se introduziam inovações contemporâneas, exigia uma engenharia meticulosa e, muitas vezes, compromissos.
Novos processadores tinham que incorporar e manter lógica que, de outra forma, poderiam ser considerados obsoletos. O 8086 original poderia ter sido projetado e implementado por uma equipe de uma duzia de engenheiros em alguns meses. Enquanto os processadores modernos x86, a família Core, são o resultado do trabalho de milhares de engenheiros durante décadas de esforço contínuo sobre soluçoes legadas e têm alguns bilhões de transistores.
Ao mesmo tempo em que o x86 prosperava, a IBM, com a arquitetura PowerPC, finalmente iniciava uma incursão forte ao mercado de computação pessoal, em colaboração com a Apple e Motorola. Tecnicamente, o PowerPC possuía várias vantagens sobre o x86, como uma arquitetura mais eficiente a limpa. No entanto, a escala massiva da Intel e sua capacidade de investir pesadamente em melhorias continuadas do x86 não permitiram que a IBM nivelasse o campo de jogo.
A Vitória da Compatibilidade: O Início do Fim para o x86
Em 2006, a Apple tomou a decisão de trocar a arquitetura da plataforma Mac de PowerPC para o x86. Esta mudança, não foi dolorosa para a maioria dos usuários, embora percepítivel. O fato de ter sido possível é uma prova do quão longe a computação havia chegado em termos de portabilidade e compatibilidade. Esse fenômeno sublinhou a capacidade do x86 de evoluir, mas paradoxalmente, sinalizou um dos primeiros sinais de seu eventual declínio.
A surpresa é que, enquanto o x86 se consolidava como a única alternativa para PCs, ele também começou a conquistar um espaço tradicionalmente dominado por supercomputadores e mainframes. Nesses mercados, era comum que software e hardware fossem vendidos juntos, um modelo que a Sun - também criada por um dos membros fundadores da Fairchild, e a IBM, adotavam. Na mesma medida em que o sucesso do x86 nos computadores pessoais deveu-se em grande parte ao Windows, o seu triunfo nos servidores é graças ao Linux.
No entanto, tem um problema para a Intel. O computador pessoal, outrora o pilar do progresso tecnológico, cedeu espaço para dispositivos móveis. No cenário móvel, a arquitetura ARM emergiu como a rainha indiscutível, superando a Intel que, agora, não consegue competir com a escala massiva do dispositivos movéis. A arquitetura ARM está, progressivamente, conquistando o espaço dos computadores pessoais e nos servidores.
Mais uma vez a Apple, liderou essa transição. Desta vez, os avanços na portabilidade e compatibilidade de software fizeram com que a mudança de arquitetura passasse quase despercebida para a maioria dos usuários. Assim como o x86 eventualmente tomou o lugar de mainframes, o ARM está, de forma semelhante, começando a dominar o espaço dos computadores pessoais.
A Sun Microsystems, que era a gigante absoluta no mundo dos servidores e estações de trabalho, foi uma das primeiras a sentir o peso desta economia de escala. O modelo de negócios da Sun, que oferecia sistemas fechados com software e hardware integrados para poucos, mas grande clientes com muito dinheiro, não conseguiu competir com o custo e a flexibilidade das soluções baseadas em x86.
Agora, a Intel enfrenta um desafio semelhante. Enquanto a ARM avança no mercado de servidores e computadores pessoais, o imenso volume de dispositivos móveis impulsiona o desenvolvimento e a otimização contínua da arquitetura. O cenário é uma reminiscência do que aconteceu com a Sun: uma arquitetura mais flexível e econômica, apoiada por uma escala de produção maciça, desafiando a gigante outrora inquestionável.
Eventualmente, a Sun deixou de existir, suas tecnologias foram adquiridas pela Oracle, e seu escritórios em Mountain View, foram adquiridos pelo Google, em um aceno simbólico que conecta os primórdios do Vale do Sílicio da Fairchild com seu epicentro contemporâneo.
A indagação que permanece é: a Intel seguirá o mesmo destino da Sun Microsystems, sendo superada por uma arquitetura emergente e um modelo de negócios mais flexivel? Ou encontrará uma maneira de inovar e manter sua posição de liderança no mundo da computação?
Obrigado por continuar essa jornada conosco. Fique atento para os próximos posts da série "Como Ensinar Uma Pedra a Pensar", aonde iremos tentar responder essas perguntas e fazer outras!
Um abraço e bons estudos! Até a próxima!