… muito tempo, utilizando PCs desktops (e portáteis) com SoCs e CPUs baseadas no set de instruções x86! Embora esta tenha sido a escolha óbvia (e única) para esta classe de equipamentos, existem set de instruções alternativos que apesar de não serem tão badalados, (acredito que) fariam um trabalho bem melhor que o atual x86. Sim, estou falando dos set de instruções ARM e do RISC-V, os quais possibilitam criar processadores com arquiteturas bem mais eficientes…
Ambos são baseados em arquiteturas RISC (Reduced Instruction Set Computer), a qual se destaca por usar um conjunto menor e mais simples de instruções (daí o nome), executando cada uma de forma muito rápida e eficiente. No entanto, ele possui mais complexidades para a programação em alto nível, já que (em tese) os computadores modernos executam tarefas mais complexas (e pesadas), que por sua vez exigem set de instruções capazes de executar operações complexas e de múltiplos passos usando uma única instrução de máquina.
Até então, este tinha sido o principal motivo pelo qual, a adoção da arquitetura CISC (Complex Instruction Set Computer) se tornou promissora nesta classe de equipamentos, como é o caso do x86. Mas na prática, o set de instrução ARM não só tem se mostrado capaz de lidar com as altas exigências da computação pessoal moderna, como também ainda se destaca por oferecer um baixo consumo de energia. Por isto, muitos especialistas no assunto já acreditavam que um dia, teríamos processadores ARM capazes de rivalizar com os equivalentes x86 em seu próprio território, ao contrário do que era imaginado há alguns anos atrás.
Em 2020, a Apple surpreendeu o mundo ao trazer os SoCs de alta performance da série M, os quais atualmente equipam tanto os PCs desktops quanto os portáteis da empresa. E eles não deixam nada a desejar em ambos os quesitos, estabelecendo um importante marco técnico para a empresa: ela não precisava mais se preocupar em projetar SoCs para os PCs desktops (voltados para o desempenho) e para os dispositivos portáteis (voltados para o consumo), pois o mesmo design serviria para ambos os típos de hardwares (embora com diferenças de núcleos).
Se por um lado, a questão do hardware já esta praticamente resolvida, o mesmo não se pode dizer em relação ao software: o ecossistema formado em torno do set de instruções ARM é bastante fragmentado, se comparado com o x86! Neste último, temos apenas a Intel e a AMD estabelecendo um rígido padrão (compatível com o IBM PC) com firmwares padronizados (BIOS e UEFI), além de mecanismos de auto-descoberta para os componentes eletrônicos conectados à placa-mãe. Com isto, qualquer imagem ISO de instalação (seja Windows, Linux ou qualquer outro sistema operacional) é plenamente compatível com o hardware em uso.
Já no ecossistema ARM, cada hardware requer uma imagem especialmente customizada para ser utilizada na instalação do sistema operacional. Mas, devido à falta de uma padronização (a empresa opera através de licenciamento, permitindo que cada fabricante crie seu próprio chip modificado), instalar uma distribuição Linux genérica (como o Ubuntu ou Fedora) em um dispositivo ARM não é tão simples quanto baixar uma ISO, gravá-la em um pendrive e conectá-la à uma porta USB inicializável. Para variar, muitas delas nem sequer possuem drivers livres…
Se apenas instalar o Linux já é algo relativamente complicado, imaginem então manter uma instalação dual-boot e de quebra, lidar com as constantes quebras provocadas pelo próprio Windows? Em vista disso, muito provavelmente não irei buscar novos equipamentos baseados em SoCs ARM, tal como desejo há anos! Enquanto eu ainda for “dependente” deste contestado sistema operacional (sem ele, não há como lecionar os fundamentos da TI para os estudantes iniciantes), irei continuar por um bom tempo com máquinas x86.
Ao menos, ainda estou (relativamente) satisfeito com elas… &;-D