A Evolução dos Sistemas Operacionais

 Nos primeiros computadores criados nas décadas de 1940 e 1950, os programas eram desenvolvidos diretamente em linguagem de máquina e exigiam, dos programadores, um altíssimo conhecimento do hardware do computador para seu desenvolvimento. Com isso, os programas eram extremamente complexos, pois a maior parte das instruções eram para fazer o hardware funcionar. Além disso, somente um programa poderia ser executado por vez.

Termo do glossário: Hardware: é a parte física de um computador, formado pelos componentes elétricos, eletrônicos, chips, e circuitos, sendo a máquina física propriamente dita.

No início da computação centenas de fios eram interconectados e centenas ou milhares de chaves eram posicionadas para fazer a programação de um computador. Ao final do processamento algumas luzes no painel eram acesas e os programadores (na época, geralmente engenheiros) faziam as leituras dessas luzes e realizavam alguns cálculos para interpretar os resultados. A Figura 2 apresenta o ENIAC, que foi o primeiro computador eletrônico de propósito geral, com seus painéis com fios e chaves de programação.


Uma das peculiaridades que distinguiram o ENIAC de todos os computadores posteriores foi a forma como as instruções eram configuradas na máquina. Os engenheiros exerciam o papel de programadores, determinando quais módulos deveriam ser interligados e em que ordem. Um grupo de técnicos treinados de posse de esquemas de ligação realizava a conexão dos módulos, de forma que a máquina pudesse ser energizada e os cálculos realizados. Nesta época o computador não era programável, pois seu hardware era modificado para cada tipo de problema diferente, o que representava uma tarefa complexa e delicada. Para realizar a programação eram usados gráficos de programação, mostrados na Figura 3, com a representação da fiação e conexões necessárias para configurar um programa. (STALLINGS,2002).

Interatividade: Você pode visualizar o ENIAC em operação no vídeo ENIAC thefirst general purposeelectroniccomputer,disponível em:



Após os cálculos, o resultado era apresentado em um painel de luzes, mostrado na Figura 4, cujos resultados deviam ser interpretados por um especialista.


Os primeiros computadores eram enormes e de difícil operação, pois eram grandes máquinas de calcular, fabricados com circuitos baseados em relés, dispositivos eletromecânicos e válvulas eletrônicas. Apresentavam constantes problemas de funcionamento devido à queima desses componentes, exigindo que todo trabalho fosse recomeçado. Devido ao custo altíssimo de produção e operação, seu uso era restrito a órgãos militares e governamentais e grandes universidades (JANDL, 2004).

Os computadores passaram a ser desenvolvidos baseados no modelo de máquina genérica proposto pelo matemático Von Neumann, formado por um bloco de memória, um bloco de processamento e um bloco de dispositivos de entrada e saída. Neste modelo, a sequência de passos necessária para a execução de um programa é armazenada na própria memória do computador e pode resolver diferentes tipos de problemas sem necessidade de alterar o hardware. Este conceito de programa armazenado na memória e computador programável é utilizado até hoje.

Na década de 1950, a fabricação do transistor permitiu o desenvolvimento de computadores menores e mais confiáveis, iniciando a comercialização para grandes empresas e órgãos governamentais. Em 1951 foi criado o oUnivac-I (Universal Automatic Computer), que foi o primeiro computador comercial, e em 1953 a IBM lançou o IBM 701, seu primeiro computador digital. A programação desses computadores ainda exigia um alto grau de conhecimento sobre o funcionamento dos mesmos, e dos seus circuitos e dispositivos, de modo que o uso dos mesmos era restrito a especialistas (JANDL, 2004).

Como a possibilidade de programar o computador ao invés de conectar fios e cabos, foi desenvolvido um mecanismo no qual os programas eram codificados em cartões perfurados, mostrados na Figura 5. A Figura 6 apresenta uma máquina para codificar os cartões, que posteriormente eram lidos e interpretados pelo computador para a execução do programa.


Os programas e os dados para serem processados eram organizados em tarefas, que eram lidas por uma máquina leitora de cartões perfurados e os dados eram gravados numa fita magnética. A fita magnética era levada para o computador, que interpretava a tarefa e realizava o processamento, gravando em outra fita magnética os resultados de cada tarefa. Esta fita de saída era lida por outra máquina que fazia a impressão das listagens e relatórios (JANDL, 2004).

Esses primeiros computadores utilizavam cartões perfurados como entrada e muitas páginas de impressão de dados como saída. Desta forma, era necessário um enorme conhecimento dos programadores e técnicos da época para compreender o que os incontáveis caracteres significavam. 

Assim, a programação que inicialmente era realizada totalmente baseada em ligar e desligar chaves e conectar e desconectar cabos, passou a ser realizada por meio da codificação de programas, que continuam fazendo com que chaves e circuitos sejam ligados ou desligados, porém de forma eletrônica, pois um programa de computador é um conjunto de instruções para o processador sob a forma de código binário (uma sequência de zeros e uns), que fazem com que milhares de chaves e circuitos sejam ligados e desligados para realizar os cálculos e computar os resultados.

Ainda assim, a programação era uma tarefa complexa, pois cada programador precisava conhecer todos os detalhes do hardware do computador. Com o passar do tempo, os fabricantes de computadores passaram a desenvolver um programa que controlasse o hardware do computador e esse programa passou a fornecer as funcionalidades do hardware para os demais programas. Assim, ao desenvolver um programa de computador, o programador simplesmente fazia, de forma bem mais simples, uma requisição a esse programa para acessar as funcionalidades do hardware. Com isso, o programador passou a não se preocupar mais com o funcionamento do hardware e pôde focar na programação específica do seu aplicativo.

Esse software que gerencia o hardware ficou encarregado de todo o serviço complexo. Esse software, responsável por gerenciar o hardware, é chamado de Sistema Operacional (SO). Um SO é, portanto, um software que habilita as aplicações a interagir com o hardware de um computador (DEITEL, 2005).

Termo do glossário:
Software: é uma sequência de instruções escritas para serem executadas por um computador com o objetivo de executar tarefas específicas. São os programas de computador.

Sistema operacional: é um programa ou um conjunto de programas que habilita as aplicações a interagir com o hardware de um computador, gerenciando os recursos e oferecendo uma interface amigável para o usuário. 

A utilização de um sistema operacional permitiu o uso e programação do computador de forma mais segura, confiável e coerente, pois a gerência dos recursos do hardware deixou de ser preocupação do programador. Isso também permitiu que vários programas fossem executados simultaneamente, como um lote de tarefas, dando origem ao termo processamento em lote (batch processing). Os sistemas em lote impulsionaram o uso comercial dos computadores na década de 1950, quando foi desenvolvida a primeira linguagem de programação de alto nível: o IBM FORTRAN (Formula Translator), em 1957 (JANDL, 2004).


Comentários

Postagens mais visitadas deste blog

Transferência de arquivo por FTP

TIPOS DE PROCESSOS

Tipos de Servidores