A informática do passado da qual não tenho a menor saudade

Nenhum usuário é obrigado a conhecer a máquina onde trabalha e os computadores com interface gráfica permitem este distanciamento. A arquitetura dos computadores antigos era muito mais complicada de ser resolvida, e eu sou um daqueles que não têm a menor saudades daqueles tempos.

 

Foi por volta do final da década de 1970 que eu me propus a compreender o que estava por trás de um programa de computador, e inicialmente por uma necessidade cada vez mais presente de ter confiança no processamento de dados obtidos no laboratório de pesquisa. A ciência é baseada em alguma coisa mensurável e posteriormente analisável, para que alguma hipótese de explicação de um fenômeno seja testada quanto à sua veracidade.

Os primeiros computadores foram construídos, como o próprio nome sugere, para serem sofisticadas máquinas de calcular. O matemático Alan Turing foi quem, posteriormente, imaginou e construiu o que ele chamou de “Universal Turing Machine”, um computador capaz de ser usado para um monte de outras tarefas, o que se revelou verdadeiro com o decorrer do tempo. Na realidade, o computador se tornou uma máquina capaz de múltiplas tarefas, uma das poucas máquinas capazes deste tipo de versatilidade.

Mas, na década de 1970 a microinformática ainda era incipiente, assim como as linguagens de programação que pudessem ser aplicadas pelo usuário principiante. Naquela época ganharam “popularidade” na automação de cálculos diversos as chamadas máquinas de calcular.

A máquina que estava dentro do nosso laboratório, e que ninguém do departamento usava, era uma HP 9810A, dotada de slots para cartuchos pré-programados para executar rotinas específicas de cálculo. Os programas eram penosos de serem escritos, mas a máquina gravava as rotinas em cartão magnético, que seriam usados posteriormente. O meu primeiro programa foi escrito para o cartucho de estatística. Ele se destinava ao cálculo das curvas de calibração dos métodos de dosagem e à determinação das amostras desconhecidas.

A programação da HP 9810A era primitiva, mas me ajudou a entender o que é e como funciona um programa. Somente anos mais tarde eu fui ao Núcleo de Computação

Eletrônica da UFRJ para aprender CP/M e Basic. Vários dos meus colegas desistiram e saíram daquele curso, e não é para menos, porque os computadores da época apareciam na nossa frente como autênticas caixas pretas.

A evolução da micro arquitetura dos computadores pessoais

Um microcomputador moderno é basicamente composto por uma placa principal, a chamada “placa mãe”, na qual residem os principais componentes, entre eles, um processador central que controla o funcionamento da máquina, a CPU (ou Central Processing Unit) e um banco de memória de acesso aleatório, a RAM. E na placa mãe estão dispostos todos os slots (conectores) para expansão da máquina.

Parece simples, mas o funcionamento de cada componente não poderia ser mais complexo! E nos primeiros computadores, toda vez que se adicionava um novo componente, ele precisaria ser programado de modo a não ter conflitos com os demais componentes. Isso só foi mudar quando esses componentes passaram a trabalhar no conceito do “plug and play”, isto é, todas as configurações de uma placa de expansão seriam feitas automaticamente.

As primeiras placas com este recurso ainda eram híbridas, isto é, se o ajuste automático não funcionasse, a placa poderia ser fisicamente programada através de jumpers ou microswitches. E nesta época ainda não era raro o plug & play não funcionar, e este recurso passou a ser chamado jocosamente pelo usuário final de “plug & pray” (conecte e reze para funcionar direito).

O drama dos switches

Uma peça para ajuste, de uso frequente em placas mãe ou placas de expansão, foi o chamado “dip switch”, que consiste em uma série de microswitches dispostos em linha, daí o nome “Dual Inline Package” ou DIP. Cada switch (interruptor) pode ser ajustado para ON ou OFF. A sequência de interruptores determina o funcionamento da placa. O fabricante da placa precisa informar a função de cada switch e o mapeamento para a configuração de uma determinada função.

 

 

Só quem ajustou dip switches é que sabe que drama aquilo costumava ser. Quando eu trabalhava no departamento de bioquímica da antiga UWCC em Cardiff houve um professor que solicitou a instalação de uma placa de expansão de memória, a ser usada em um computador 80286 da época. Mas, a placa não funcionou, e um dos meus orientadores disse a este professor que eu resolveria o problema.

Quando eu abri aquele computador a primeira coisa que eu notei foi que o mapeamento do dip switch daquela placa estava errado. E para acertar ponto a ponto de cada switch eu levei mais de uma hora, sendo que não adiantava explicar o que eu estava passando para o professor, o qual ficou espantado ao ver que eu estava demorando tanto! Quando este martírio acabou a placa passou a ser lida, a memória conferida e exibida na tela, durante a rotina de partida do micro, o que era convencional naquela época e ainda é até hoje nas rotinas POST (Power On Self Test).

O dip switch teria sido uma ótima ideia para substituir os jumpers, que consistem em um condutor elétrico encapsulado e que pode curto-circuitar dois pinos que, uma vez unidos, fazem a configuração de uma determinada função. Jumpers eram usados em placas de circuito impresso e ainda estão em uso mesmo no último modelo de placa mãe.

Ironicamente, o jumper é mais seguro do que o dip switch, porque este último pode oxidar com o tempo de uso e perde os contatos para as funções ligado (posição ON) e desligado (posição OFF).

Jumpers foram extensamente usados em discos rígidos, durante a época na qual para se instalar mais de um disco era preciso configurar um como Master (disco Mestre ou principal) e os outros como Slave (Escravos ou secundários). Se esta configuração não fosse feita corretamente um ou mais discos não eram reconhecidos pelo sistema. Este drama só teve fim com a adoção dos barramentos SATA.

A versatilidade dos novos barramentos

O barramento é uma via de comunicação eletrônica entre componentes. Diferentemente dos computadores de antigamente todos os barramentos, para dispositivos diversos, vêm sofrendo melhorias cada vez mais avançadas, e com compartilhamento de pistas para mais de um dispositivo.

Na tabela abaixo pode-se ver o modo de operação de drives M.2 junto com a placa gráfica instalada em modo X16 (16 pistas no barramento). Se o drive estiver operando em modo PCIe e instalado em um soquete adequado (no caso, M.2_1), 4 pistas são cedidas para o seu funcionamento. A mudança de velocidade na placa gráfica é praticamente imperceptível.

Tanto Intel quanto AMD apostaram as suas fichas na construção de processadores centrais (CPUs) com mais de um núcleo operacional. O avanço é mais sentido nos processadores AMD Ryzen, capazes de operar com 16 núcleos ou mais, permitindo 32 filas ou mais de processamento de dados.

Esta microarquitetura de uma única CPU emula com sucesso a que foi desenhada para os super computadores, que são dotados de um enorme número de CPUs trabalhando simultaneamente. Então, pode-se dizer que um processador AMD Ryzen (ou o seu equivalente Intel) é um mini super computador, pelo menos perfeitamente capaz de desempenhar tarefas complexas em relativo curto espaço de tempo!

O mesmo raciocínio se aplica às placas gráficas modernas, que possuem coprocessadores aritméticos dedicados. Anos atrás, a interação CPU-GPU passou a ser um fator determinante no aproveitamento de execução de rotinas, não só para jogos, mas para operações gráficas em geral.

Longe agora se vai o tempo em que módulos de memória deixaram de ser inseridos às dezenas em soquetes na placa mãe e passaram para slots dedicados de expansão de memória RAM. Aquele problema que eu enfrentei na década de 1990 só existiria hoje caso os timings da memória fossem incompatíveis com a placa mãe e/ou com a CPU em uso. Os fabricantes de placa mãe e os fabricantes de módulos de memória fornecem habitualmente tabelas com módulos previamente testados, os quais o usuário pode confiar na hora de montar o seu computador.

O meu último computador montado não carece mais de expansão

Computadores atuais já de algum tempo para cá estão cada vez menos carentes de trocas de componentes, a não ser por algum motivo específico, e eu inclusive já comentei previamente sobre isso.

Na minha última montagem eu usei uma placa mãe Asus ROG Crosshair IV, com chipset de 4ª geração. Achei prudente não montar a Crosshair V, mais moderna, porque eu já tive trauma com uma placa mãe Asus que usava uma ventoinha para resfriar o chipset, e quando deu defeito não tinha substituição, inutilizando a placa toda. Bem verdade que as ventoinhas modernas são muito mais robustas, porém o meu antigo trauma teve prevalência na hora da escolha.

A troca do chipset X570 pelo X470 não teve nenhum impacto importante na minha montagem, e o motivo é simples: as atualizações de firmware, junto com as atualizações dos drivers para processadores AMD Ryzen me garantem uma total tranquilidade na hora de substituir a CPU. No meu caso, eu saí de uma CPU Ryzen 7 2800X (8 núcleos) para uma Ryzen 9 3900, esta última com 12 núcleos, muito acima do que eu preciso para a minha carga de trabalho atual.

Quanto ao banco de memória, por várias vezes eu cheguei a pensar em aumentar de 16 GB para 32 GB, mas rapidamente percebi que a troca é quase inútil.

E quanto aos IRQ’s e respectivos conflitos, eu deixo isso para o sistema operacional resolver sozinho, ou seja, atualmente os ajustes de plug & play são bem menos problemáticos. Se eu quiser saber onde ficou cada um dos ajustes, basta entrar no Gerenciador de Dispositivos:

 

 

O IRQ (Interrupt Request) é necessário para permitir que o comando de um dado componente (teclado ou mouse, por exemplo) possa ser executado pelo sistema no momento certo. O comando é interrompido, até que o sistema possa achar o tempo adequado para que ele possa ser executado.

É hoje impressionante o número de requisições IRQ que o sistema executa. O que, por si só justifica plenamente a instalação de CPUs com múltiplos núcleos e filas de execução. Em tempos de outrora, um simples filtro de áudio levava alguns minutos para rodar, hoje apenas alguns segundos.

Conflitos e problemas, evidentemente, continuam a acontecer mesmo no mais moderno dos sistemas, mas estar longe deles é muito mais próximo do ideal do que anteriormente, e com isso o uso de um microcomputador atual reveste-se de especial importância para quem monta ou usa.

Saudade dos computadores antigos? Da minha parte, nenhuma, e não é somente a velhice falando. Eu vejo o YouTube recheado de vídeos de estudiosos e/ou saudosistas se envolvendo com computadores obsoletos. Nesses vídeos aulas são dadas sobre soluções de problemas que não existem mais. Como ilustração do passado, os vídeos são ótimos, mas viver os mesmos problemas no computador de casa, nunca mais!

Se a turma da Microsoft entendesse isso melhor, não teria feito tantas e tão absurdas exigências para instalar o Windows 11. Outrolado_

. . .

 

A longevidade dos computadores modernos diminui upgrades

 

Avaliação dos pré-requisitos para instalar o Windows 11

Paulo Roberto Elias é professor e pesquisador em ciências da saúde, Mestre em Ciência (M.Sc.) pelo Departamento de Bioquímica, do Instituto de Química da UFRJ, e Ph.D. em Bioquímica, pela Cardiff University, no Reino Unido.

5 comentários sobre “A informática do passado da qual não tenho a menor saudade

  1. Bom dia, Paulo. De computador sou mero usuário e, gostaria de entender mais.
    Acredite se quiser, estou digitando estas mal traçadas linhas num modelo de mesa, bem antigo com windows 7 e com um speed da vivo com 8mg. Dá para o gasto: leio os noticiários e vejo meus filmes, principalmente os clássicos antigos. Você falou no artigo das máquinas calculadoras. Lembro-me como se fosse hoje, lá no inicio dos anos 1970, trabalhando com contabilidade foi quando apareceu um amigo do patrão portando uma daquelas com os números vermelhos. Que assombro!
    Fazia “até” divisão em segundos. O chefe já com idade avançada balbuciava : “coisa do outro mundo”. Tempos que não voltam mais!
    Grande abraço.

    • Celso, bom dia. Realmente, o aparecimento das calculadoras foi um passo importante e facilitador das rotinas de cálculo ao longo daquele tempo. Mas, se você me permitir, eu vou elaborar um pouco mais sobre o seu comentário:

      O fato é que até mesmo as calculadoras científicas se mostraram desajeitadas e inadequadas para trabalhos mais complexos, e este foi o principal motivo pelo qual eu comecei pensar em programar, ainda que timidamente. Com os recursos da programação, mesmo os mais primitivos, era possível obter, além da precisão de cálculo (o que era resolvido facilmente depois com um micro de 8 bits), a verificação com confiança os dados de entrada e a impressão desses dados e dos resultados.

      Tudo isso aumentou o grau de confiabilidade no processamento das análises e demais procedimentos no laboratório, coisa que com as calculadoras era difícil de se conseguir. Por exemplo, a alimentação por baterias ou pilhas, problema que me deixou na mão várias vezes!

      O curioso é que na chamada academia, o começo da microinformática trouxe um impacto negativo. Na minha defesa de tese de mestrado, um examinador, que depois viria a ser nada menos do que presidente da Fiocruz, fez críticas contundentes a mim pelo uso de programas. E ele se considerava um cientista. Eu te confesso que nunca entendi porque pessoas deste tipo resistiam em manter a cabeça aberta para o progresso.

      Comigo, as calculadoras continuaram a ser usadas, mas para cálculos banais, nunca jamais para tratamento estatístico de qualquer natureza. Até porque os pacotes de estatística começaram a usar algoritmo de inteligência artificial, facilitando e indicando a escolha do método de tratamento.

      Os meus antigos programas de estatística, escritos em Basic, sobreviveram até a década de 1990 e ajudaram a muita gente, porque naquela época cabiam em um disquete de 3 1/2″ e rodavam em qualquer micro. Eu tive uma orientada que perdeu um monte de ensaios em cromatógrafo por falta de verificação da curva de calibração das colunas. Com o meu modesto e antigo programa ela resolveu tudo em uma tacada só!

      As pessoas hoje usam computadores dentro dos celulares e equipamentos similares, mas passa tudo transparente para quase 100% dos usuários, te garanto.

  2. Olá Paulo Roberto, como sempre seus textos são ótimos. Fugindo um pouco do assunto, mas sabendo que, hoje em dia, todos os aparelhos de áudio e vídeo tem um verdadeiro computador embutido, gostaria de sugerir um assunto sobre o qual estou à margem, posto que, cada vez mais aparecem sistemas diferentes de reprodução que não conversam entre si. Estou falando do Dolby Atmos, DTS X e recentemente um tal de Auro 3D e o 360 Reality Audio. Ainda existem os sistemas de som multi room, como AirPlay, MusicCast, Chromecast e outros, proprietários. O que fazer com essa salada de opções? Isso só afasta usuários.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *