Quais as principais características dos primeiros sistemas operacionais?

Introdução

Os sistemas operacionais evoluíram de acordo com a evolução dos computadores e de outras áreas como a área de telecomunicações.  A cada nova geração de computadores novos sistemas operacionais vão sendo desenvolvidos para gerenciar e controlar os novos recursos de cada arquitetura de hardware e permitir o uso de novas tecnologias e processamento suportados pelas novas arquiteturas dos computadores.

Nesta aula vamos ver os diferentes tipos de sistemas operacionais, suas características, vantagens e desvantagens.

Os Tipos de Sistemas Operacionais

Os diferentes tipos de sistemas operacionais existentes são os seguintes:

  • Sistemas Mono programáveis/Mono tarefa
  • Sistemas multiprogramados/multitarefa
  • Sistemas com múltiplos processadores

Cada tipos de sistema operacional reflete a arquitetura de hardware e de telecomunicações de sua época.

Sistemas Mono programáveis/Mono tarefa

Este tipo de sistema operacional permite que apenas um programa seja armazenado na memória para execução. Os demais programas devem aguardar o término da execução do programa que está em memória. Todos os recursos do computador permanecem exclusivamente dedicados ao único programa que está em memória. Este sistema operacional permite portanto a execução de uma única tarefa de cada vez, alocando de forma exclusiva todos os recursos do computador, sendo chamado por isso de sistema mono tarefa.

São sistemas operacionais mais simples de serem implementados pois não se preocupam em tratar de gerenciar o compartilhamento dos recursos pelos programas sendo executados, pois há somente um único programa sendo executado em um dado momento. Não existe preocupação em gerenciar se existem dois programas enviando dados para a impressora ou gravando informações no disco. 

Entretanto, este tipo de sistema operacional permite que os recursos fiquem ociosos quando não estão sendo utilizados pelo programa em execução. Se o programa em execução não acessar o disco durante sua execução então este recurso ficará ocioso quando poderia estar sendo utilizado por um outro programa em uma outra tarefa.

Os sistemas operacionais mono programáveis/mono tarefa foram os primeiros sistemas operacionais e foram utilizados pelos computadores nos anos 60. Foram utilizados também nos microcomputadores e estações de trabalho, lançados nos anos 70 e que eram projetados para uso por apenas um usuário.

Atualmente este tipo de sistema operacional já não é usado mesmo em computadores pessoais pois há necessidade de se realizar mais de uma tarefa ao mesmo tempo.

Sistemas multiprogramados/multitarefa

Este tipo de sistema operacional é uma evolução dos sistemas operacionais mono programados/mono tarefa. Enquanto os sistemas operacionais mono programados/mono tarefa permitiam apenas a execução de um único programa, uma única tarefa, os sistemas multiprogramados/multitarefas permitem que vários programas sejam executados compartilhando os recursos do computador tais como discos, impressora, memória e processador. 

Neste sistema enquanto um programa espera uma entrada de dados pelo usuário um outro programa pode estar sendo processado no mesmo intervalo de tempo. Neste caso tanto a memória quanto o processador são compartilhados e o sistema operacional deve gerenciar e controlar este compartilhamento dos recursos de forma segura e protegida. Como existem vários programas sendo executados, várias tarefas, é função do sistema operacional garantir que um programa não afete o outro, permitindo a execução das tarefas de forma independente umas das outras.

Por permitir o compartilhamento dos recursos pelas várias tarefas sendo executadas este tipo de sistema operacional possibilita a redução de custos em hardware. Entretanto, os sistemas multiprogramados/multitarefa são de implementação muito mais complexa, por ser necessário o gerenciamento e controle de todas as tarefas em execução e do compartilhamento dos recursos entre as tarefas

Classificação dos sistemas multiprogramados/multitarefa

Os sistemas multiprogramados podem ser classificados de duas formas:

Pelo número de usuários que interage com o sistema operacional;

Pela forma como as tarefas são gerenciadas;

Com relação ao número de usuários, os sistemas multiprogramados podem ser: monousuário ou multiusuário. Os sistema multiprogramados monousuário são usados em computadores pessoais e estações de trabalho onde um usuário pode realizar várias tarefas como acessar a internet, enviar um e-mail e editar um documento. Os sistemas multiprogramados multiusuários são sistemas acessados por vários usuários que interagem com o sistema operacional realizando várias tarefas. É o caso de sistemas UNIX em minicomputadores e super minicomputadores.

Com relação a forma como as tarefas são gerenciadas, os sistemas multiprogramados podem ser: 

  • Sistemas Bach
  • Sistemas de Tempo compartilhado ( Time-Sharing ) 
  • Sistemas de Tempo real ( real time ). 

Um sistema operacional multiprogramado pode suportar uma ou mais formas de gerenciamento de tarefa.

Sistemas multiprogramados Bach - Foram os primeiros sistemas operacionais multiprogramados e foram utilizados nos anos 60. Neste tipo de sistema os programas, chamados de jobs, aguardavam disponibilidade de memória principal para serem executados. 

Se houve memória principal disponível mais de um programa era executado. Se não houvesse memória principal disponível, os programas ficavam em uma fila, aguardando a disponibilidade para serem processados. 

Neste sistema não havia desperdício de recursos como a memória principal e mais de um programa podia ser executado. Neste tipo de processamento não há interação com o usuário com os programas. Todas as entradas e saídas de dados são executadas com memória secundária ( discos, fitas ). Este tipo de sistema operacional permite melhor utilização do processador.

Sistemas multiprogramados de tempo compartilhado - Permitem a execução de várias tarefas pela divisão de tempo do uso do processador em pequenos intervalos de tempo denominados fatia de tempo ( time slice ). Os programas em execução se alternam no uso do processador, cada programa em execução fazendo uso de sua fatia de tempo. Desta forma, o tempo de uso do processador é compartilhado pelas várias tarefas em execução pelo sistema operacional. Por este motivo. estes sistemas também são chamados de sistemas time-sharing.

Quando um programa termina seu intervalo de tempo de uso do processador ele é interrompido pelo sistema operacional, sendo substituído por outro programa e fica aguardando um novo intervalo de tempo para ter sua execução reiniciada do ponto onde foi interrompido. 

Este tipo de sistema permite a interação dos usuários com as aplicações através de monitor, teclado e mouse. O sistema operacional possui uma linguagem de comandos que são usados pelo usuário para interagir com o sistema operacional. Os comandos são digitados em uma interface de linha de comandos ou em uma interface gráfica com o uso de mouse. Por permitir a interação entre o usuário com as aplicações, estes sistemas também são conhecidos por sistemas online.

Observação: Atualmente todos os sistemas operacionais fazem uso de interface gráfica para interação com o usuário, porém a interface de linha de comandos também está presente em todos os sistemas operacionais. É muito importante conhecer a linguagem de comandos de um sistema operacional e fazer uso da interface de linha de comandos.

Sistemas multiprogramados de tempo real - Permitem a  execução de várias tarefas de acordo com a prioridade de execução de cada tarefa. A diferença entre os sistemas de tempo real e os sistemas de tempo compartilhado é que nos sistemas de tempo compartilhado o tempo de resposta pode variar um pouco sem no entanto comprometer a execução das tarefas,  enquanto que nos sistemas de tempo real o tempo de resposta é rigidamente controlado e devem estar dentro de limites de tempo definidos que devem ser obedecidos caso contrário podem ocorrer problemas irreparáveis as aplicações. Costuma-se dizer que estes sistemas tem tempo de resposta quase instantâneo por isso são conhecidos por sistemas de tempo real.

Em sistemas de tempo real não existe fatia de tempo para as tarefas em execução. O mecanismo utilizado para o compartilhamento do processador é a prioridade. Uma tarefa permanece em execução pelo processador o tempo que for necessário, até que outra tarefa com maior prioridade seja iniciada. A prioridade de execução das tarefas é determinada pela aplicação e não pelo sistema operacional.

Estes sistemas são usados para aplicações críticas como controle de refinarias, controle de tráfego aéreo, sistemas de defesa, usinas termoelétricas, usinas nucleares, etc. Nestes sistemas o tempo de resposta é crítico para o controle de operações. Por isso são usados sistemas de tempo real.

Sistemas com múltiplos processadores

O sistemas com múltiplos processadores caracterizam-se por ter mais uma CPU interligadas e trabalhando com conjunto. Desta forma é possível a execução simultânea de mais de uma tarefa ou a divisão de uma tarefa em partes que são executadas simultaneamente em mais de um processador.

Os sistemas com multiplos processadores incorporam todos os recursos dos sistemas multiprogramados/multitarefas e acrescentam novas características e vantagens tais como escalabilidade, maior disponibilidade e balanceamento de carga.

A Escalabilidade permite aumentar o poder de processamento com a adição de novos recursos a um computador. Nestes sistemas pode-se adicionar novos processadores para ganho de processamento.

A maior disponibilidade é garantida nestes sistemas pois em caso de falha de um processador outros processadores assumem a tarefa sem que haja as aplicações em execução sejam afetadas, garantindo desta forma a alta disponibilidade de aplicações.

O Balanceamento de carga permite uma melhor distribuição de tarefas entre os diversos processadores disponíveis, melhorando o desempenho geral do sistema.

Estes sistemas são usados par aplicações que requerem uso intenso da CPU tais como simulações, processamento de imagens, processamento científico, prospecção de petróleo, pesquisa aerospacial, etc. São aplicações que existem muito processamento e são beneficiadas pelo uso de mais de um processador.

Classificação dos Sistemas com múltiplos processadores

Em sistemas com múltiplos processadores temos vários processadores executando tarefas simultaneamente e compartilhando a memória principal e os demais recursos do computador. a forma de comunicação destes processadores e o grau compartilhamento da memória e demais recursos são fatores que levam os sistemas com múltiplos processadores a serem classificados em sistemas fortemente acoplados e sistemas fracamente acoplados.

Em sistemas fortemente acoplados temos uma única memória principal sendo compartilhada por todos os processadores. Já em sistemas fracamente acoplados, cada sistema tem sua memória individual.

Sistemas fortemente acoplados

Neste sistema temos vários processadores compartilhando uma única memória física e os demais recursos ( discos, impressora, unidade de fita ) sendo gerenciados por um único sistema operacional. Por terem essas características são conhecidos como multiprocessadores.

Os sistemas fortemente acoplados possuem taxa de transferência de dados muito maior do que os sistemas fracamente acoplados.

Sistemas fracamente acoplados

Neste sistema existem dois ou mais sistemas computacionais conectados através de linhas de comunicação. Um sistema computacional é um conjunto de dispositivos de hardware capaz de realizar processamento. Neste caso cada sistema computacional possui alem dos processadores sua própria memória principal e seus próprios recursos. 

Desta forma, cada sistema computacional é totalmente independente possuindo seu próprio sistema operacional e seus próprios recursos tais como CPU, memoria secundaria, dispositivos de entrada e saída. Os sistemas computacionais são interligados e permitem que os vários processadores trabalhem em uma mesma tarefa ou várias tarefas simultaneamente.

Por terem estas características estes sistemas são chamados de multicomputadores.

Quais as características dos primeiros sistemas operacionais?

O primeiro sistema operacional realmente funcional foi o GM-NAA I/O, da General Motors, criado para funcionar no IBM 704. A ideia era automatizar diversas atividades sem ter que reenviar constantemente códigos bases para fazer uma determinada função, além de gerenciar melhor os recursos do equipamento.

Quais são as principais características dos sistemas operacionais?

Os S.O. (sistemas operativos) mais utilizados são o Windows, o Linux e o MAC OS. As principais características dos SO são: Ambiente de trabalho; Barra de tarefas; Ícones (pastas, atalhos, ficheiros); Acessórios; Painel de controlo; Explorador.

Quais foram os primeiros tipos de sistemas operacionais?

Sistemas operacionais/História.
4.1 1964 - Multics..
4.2 1969 – Unics ou Unix..
4.3 1973 – Unix em C..
4.4 1976 – Apple 2..
4.5 1980 – PC - MS-DOS..
4.6 1984 – Apple Machintosh – Mac OS..
4.7 1984 – GNU – GNU não é Unix..
4.8 1986 – Windows..

Qual foi um dos primeiros sistemas operacionais?

distintas, um grupo de desenvolvedores da AT&T ciaram o Unix em 1969, sendo o primeiro sistema operacional moderno da computação.