Tipos de Sistemas Operacionais
3.1 Introdução
-
Evolução dos Sistemas Operacionais -> Hardware
-
Programa e Job X Processo e Subprocesso X Tarefa e Thread.
-
Tipos de Sistemas Operacionais
-
Monoprogramáveis / Monotarefa
-
Multiprogramáveis / Multitarefa
-
Multiplos Processadores
3.2 - Sistemas Monoprogramáveis / Monotarefa
-
Execução de um único programa (JOB).
-
Relacionados ao surgimento dos mainframes -> PCs, estaçoes
de trabalho
-
Todos recursos do sistema ligados a apenas uma tarefa
3.3 – Sistemas Multiprogramáveis / Multitarefa
-
Mais complexos e eficientes que os monoprogramáveis.
-
Vários programas dividem os mesmos recursos.
-
Sistema Operacional gerencia o acesso concorrente aos recursos e
dispositivos.
-
Aumento de produtividade
-
Mais de um usuário pode interagir com o sistema.
-
Sistemas Monousuários X Multiusuários
-
Sistemas Batch X Tempo Compartilhado X Tempo Real
3.3.1 – Sistemas Batch (LOTE)
-
Execução Sequencial.
-
Os JOBS não exigem interação com o usuário,
como compilação, sorts, backups.
3.3.2 – Sistemas de Tempo Compartilhado (Sistemas OnLine)
-
Interação usuário – Vídeo, Teclado,
Mouse, etc..
-
Usuário comunica direto com o Sistema Operacional.
-
Cada usuário possue fatias de tempo dos recursos, aparentando
estarem dedicados.
3.3.3 – Sistemas de Tempo Real
-
Tempos de respostas devem estar dentro de limites rígidos.
-
Recursos dedicado ao Programa de maior prioridade, controlado pela
própria aplicação.
3.4 – Sistemas com Múltiplos Processadores
-
Uma ou mais CPUs interligadas, trabalhando em conjunto.
-
Fator Chave = Comunicação entre CPUs e grau de compartilhamento
dos recursos.
-
Sistemas Fortemente Acoplados X Fracamente Acoplados
3.5 – Sistemas Fortemente Acoplados
-
Vários processadores compartilhando única memória
e apenas um Sistema Operacional
-
Vários programas podem ser executados ao mesmo tempo
-
Um programa pode ser dividido em subprogramas.
-
Ampliação da capacidade, adquirindo apenas novos processadores,
menos custos.
3.5.1 – Sistemas Assimétricos
-
Um processador primário responsável pelos demais e
pelo Sistema Operacional
-
Outros processadores são secundários e executam programas
de usuários
-
Se o processador primário falhar, o sistema para.
-
O Sistema pode ser reconfigurado para outro processador assumir
-
Utilização ineficiente do Hardware devido a assimetria
dos processadores, que não realizam as mesmas funções.
3.5.2 – Sistemas Simmétricos
-
Todos processadores têm as mesmas funções.
-
Podem executar o Sistema Operacional Independentemente.
-
Sistema Operacional e Hardware responsáveis pela distribuição
dos recursos.
-
Se o sistema falha, o sistema continua rodando.
-
Mais poderosos que o s assimétricos, melhor balanceamento
do processamento e das operações de I/O.
-
Implementação bastante complexa.
3.5.3 - Multiprocessamento
-
Uma tarefa pode ser dividida e executada, ao mesmo tempo, por mais
de um processador.
-
Processamento Vetorial
-
Permite manipulação de vetores inteiros
-
Exemplo “c = a + b” substitui ”para i=1 até 100 fazer c[i]
= a[i] + b[i]”
-
Possui também um processador escalar
-
Identifica o tipo de instrução e envia ao processador
adequado
-
Processamento Paralelo
-
Aplicação pode ser executada por mais de um processador
-
A aplicação precisa ser dividida em partes independentes
3.6 – Sistemas Fracamente Acoplados
-
Possui dois ou mais sistemas de computação interligados
-
Cada nó possui seu sistema operacional gerenciando os recursos.
3.6.1 – Sistemas Operacionais de Rede
-
Cada nó possui
-
seu próprio Sistema Operacional, podendo eles serem diferentes
-
conexão à outros nós
-
recursos de hardware compartilhados
-
total independência dos outros
-
Caso algum nó caia, o sistema pode continuar rodando apesar
de alguns recursos indisponíveis
-
Exemplo : Local Area Network (LAN).
3.6.2 – Sistemas Operacionais Distribuídos
-
Cada nó possui
-
Seu próprio Sistema Operacional que devem ser todos iguais.
-
Recursos de hardware
-
Possui um relacionamento mais forte entre seus componentes.
-
Para o usuário é como se não existisse uma
rede de computadores, mas apenas um único sistema centralizado.
-
Vantagem da possibilidade do balanceamento da carga (processador
mais ocioso é escolhido).
-
Num Cluster, qualquer usuário conectado ao mesmo poderá
Ter acesso aos dispositivos compartilhados, independente de que
sistema ele está rodando a aplicação.
-
Permite que a aplicação seja dividida em diferentes
partes, podendo cada uma ser processada em um sistema independente
(aplicação distribuída).
-
Possui a vantagem da redundância, se ocorrer algum problema
com algum componente outro assume o papel do defeituoso.
[voltar]