Escolar Documentos
Profissional Documentos
Cultura Documentos
Fortaleza-CE, Brasil
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sumário
Tipos de SOs
Monoprogramável
Multiprogramáveis
Interrupção
Multiprocessados
Fortemente Acoplados
Fracamente Acoplados
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Tipos de SOs
O Compartilhamento de Memória e Unidade Central de
Processamento (UCP)
Consistem na principal forma de classificação dos tipos de Sistemas
Operacionais.
Tipos de SOs
Multiprogramável ou Multitarefa
Vários processos compartilham memória e uma única Unidade Central de
Processamento (UCP), simulando a execução de tarefas “simultâneas”;
Multiprocessados
Vários processos compartilham a memória, podendo ter dois ou mais
processos em execução simultânea (um em cada processador).
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Subclassificações
Monoprogramável
Caracterı́stica Principal
Além do S.O., apenas uma aplicação reside
na memória em cada instante.
Monoprogramável
Principal Problema
Caracterı́sticas: Processador dedicado a um único
◮ Implementação simples; programa causando Grande Tempo
ocioso na espera por I/O.
◮ Aplicações com o controle total
do sistema;
◮ Não existe a preocupação com
proteção;
◮ Máquinas utilizadas por apenas um
usuário.
◮ Dedicação exclusiva de todos os
dispositivos a um único programa;
◮ Ociosidade dos dispositivos.
◮ Grande tempo de espera por
dispositivos.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Multiprogramação
Motivação:
◮ Tornar mais eficiente o aproveitamento dos recursos do computador;
◮ Execução “simultânea” de vários programas;
◮ Diversos programas são mantidos na memória;
◮ O próprio Sistema Operacional (SO) é um programa.
Multiprogramação
Solicitação de
Entrada/Saı́da (E/S)
Processo solicita à chamada
de Sistema
Término de
Entrada/Saı́da (E/S)
Dispositivo envia a
Interrupção.
Interrupção
Interrupção
Interrupção
Importância
Permite que módulos interrompam processamento normal do processador.
Tipos
◮ Gerado pelo programa: divisão por zero, referência a memória fora
do espaço permitido, etc.
◮ Gerado pelos dispositivos:
◮ relógio (timer): disparo de um programa em um tempo
determinado;
◮ condição de erro: overflow, violação de memória ou instrução
inválida.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Caracterı́stica
Vários programas dividindo os mesmos recursos da máquina.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Multiprogramáveis I
Multiprocessamento
Sistemas Batch:
Caracterı́sticas
◮ Respostas lentas;
◮ Ideia era centralizar o processamento em CPDs (máquinas muito
caras).
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Timesharing
Uma “fatia de tempo” (time slice) do processador é alocada para cada
processo. Possui caracterı́stiacs:
◮ O sistema cria um ambiente próprio ao usuário;
◮ Dá a impressão de que todo o sistema esta dedicado a ele;
◮ Implementação complexa com alta produtividade e redução de custo
de utilização do sistema.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Multiprocessados
Definição
Possuem uma ou mais UCPs interligadas, trabalhando em conjunto.
Caracterı́sticas importantes:
◮ A forma de comunicação entre as UCPs;
◮ Grau de compartilhamento da memória e dos dispositivos de
Entrada/Saı́da (E/S);
◮ Podem compartilhar o mesmo sistema operacional ou cada um pode
possuir o seu próprio sistema.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Multiprocessados
Caracterı́sticas:
◮ Permitem que vários programas sejam executados ao mesmo tempo
ou que um programa seja dividido em subprogramas para execução
simultânea por mais de um processador;
◮ O multiprocessamento mantém todos os conceitos de
multiprogramação, mas aplicados a vários processadores.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Multiprocessados
Problemas
Com o multiprocessamento, novos problemas de concorrência foram
surgindo, pois vários processadores podem estar acessando as mesmas
áreas de memória, além da dificuldade de interligação dos componentes.
Fortemente Acoplados
Um sistema fortemente acoplado tem mais de um processador
ligado ao barramento.
◮ Aumento da capacidade de processamento ;
◮ Compartilhamento de periféricos e memória ;
◮ Tolerância a falhas;
◮ Processamento Paralelo;
Fortemente Acoplados
Caracterı́stica Principal
Uma única memória para todos os processadores.
Assimétricos Exemplo
Processadores com
funcionalidades
especı́ficas. Um mestre e
um escravo.
Sistemas Assimétricos
Caracterı́sticas
◮ Somente um processador (mestre) pode executar serviços do
sistema operacional.
◮ Sempre que o processador do tipo escravo precisar realizar uma
operação de E/S, tera que requisitar o serviço ao processador
mestre.
◮ Se o processador mestre falhar, todo o sistema ficara comprometido.
◮ Processadores podem ter tarefas pré-definidas;
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Simétricos
◮ Todos os Exemplo
processadores
realizam as
mesmas funções.
Sistemas Simétricos
Caracterı́sticas
◮ Todos os processadores realizam as mesmas funções;
◮ Cópias do sistema operacional em cada processador;
◮ Um programa pode ser executado por qualquer processador ou por vários
processadores ao mesmo tempo.
◮ Quando um processador falha, o sistema não e comprometido, porem com
menor capacidade.
◮ Comunicação entre os processadores;
◮ Escalonamento de tarefas para as Unidade Central de Processamentos (UCPs);
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Fracamente Acoplados
Definição
Dois ou mais sistemas de computação conectados através de linhas de
comunicação.
Fracamente Acoplados
Caracterı́sticas
◮ Comunicação através de redes de computadores;
◮ Cada sistema tem seu Sistema Operacional (SO) gerenciado seus
próprios recursos;
◮ Caracteriza-se por processamento distribuı́do pelos seus diversos
processadores.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Tolerância à falhas
Se uma estação falhar, a rede continua funcionando sem os recursos
daquela que falhou.
Objetivo
A ideia é prover o compartilhamento de recursos e troca de informações.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Exemplos
Os sistemas operacionais de redes permitem cópia de arquivos, impressão
e até gerência remotas, além de serviços de correio eletrônico, emulação
de terminais.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Distribuı́dos
Dinâmica
Possibilidade de balanceamento de carga.
Funcionamento
Para o usuário e suas aplicações e como se não existisse uma rede de
computadores e sim um único sistema centralizado.
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Sistemas Distribuı́dos
Caracterı́sticas principais:
◮ Mecanismo único de comunicação entre processos
◮ Gerenciamento único de processo (criação, destruição,
escalonamento, etc..)
◮ Sistema de arquivos uniforme
◮ Chamada de sistemas e comandos uniformes
Tipos de SOs Monoprogramável Multiprogramáveis Multiprocessados
Comparação
Estruturas do SO
Fortaleza-CE, Brasil
Introdução Monolı́tico Camadas Máquinas Virtuais MicroKernel
Sumário
Introdução
Monolı́tico
Arquitetura em Camadas
Máquinas Virtuais
Cliente-servidor
Introdução Monolı́tico Camadas Máquinas Virtuais MicroKernel
Estrutura
SO Monolı́tico
SO Monolı́tico
SO Monolı́tico
SO em Camadas
Sistema é dividido em nı́veis sobrepostos.
◮ Cada módulo oferece um conjunto de funções que pode ser
usado por outros módulos respeitando a hierarquia.
◮ Pode acessar apenas as camadas mais externas ao modulo
◮ Exemplos de SO arquiteturado em Camadas: THE,
WINDOWS, maioria das versões UNIX.
SO em Camadas
Sistema é dividido em nı́veis sobrepostos.
◮ Cada módulo oferece um conjunto de funções que pode ser
usado por outros módulos respeitando a hierarquia.
◮ Pode acessar apenas as camadas mais externas ao modulo
◮ Exemplos de SO arquiteturado em Camadas: THE,
WINDOWS, maioria das versões UNIX.
Arquitetura em Camadas
Vantagens:
◮ Isola o SO
◮ Facilita sua alteração e depuração
◮ Cria uma hierarquia de nı́veis de modos de acesso
◮ Protege as camadas mais privilegiadas
Desvantagens:
◮ Uma desvantagem deste modelo é o desempenho.
◮ Cada nova camada implica em novo modo de acesso.
A maioria dos atuais sistemas comerciais utiliza duas camadas,
onde existem os modos de acesso usuário (não-privilegiado) e kernel
(privilegiado).
Introdução Monolı́tico Camadas Máquinas Virtuais MicroKernel
Máquina Virtual
Máquina Virtual
Máquina Virtual
É possı́vel que cada máquina tenha seu próprio S.O. e que seus
usuários executem aplicações como se todo o computador estivesse
dedicado a eles.
Máquinas Virtuais
Exemplo
Máquinas Virtuais
Os ambientes de MV podem ser divididos em duas grandes
famı́lias:
SO Cliente-Servidor ou Microkernel
Objetivo: Tornar o núcleo menor e mais simples possı́vel
◮ Sistema e dividido em processos;
◮ Quando uma aplicação deseja algum serviço ela solicita ao
processo responsável
◮ Facilita a manutenção do SO;
◮ Apenas o núcleo do sistema executa o modo kernel;
◮ Núcleo realiza a comunicação entre os Servidores e os Clientes
(Aplicações dos Usuários).
Visão do SO Microkernel
Microkernel
◮ Surgiu na década de 80 no sistema operacional Mach, cujo
núcleo oferece basicamente quatro serviços: gerência de
processos, gerência de memória, comunicação por troca de
mensagens e operações de Entrada/Saı́da (E/S), todos em
modo usuário.
◮ Este modelo permite isolar as funções do SO por processos
servidores pequenos e dedicados a serviços especı́ficos,
tornando o núcleo menor, mais fácil de depurar.
◮ A arquitetura possibilita ainda a criação de sistemas
distribuı́dos.
Introdução Monolı́tico Camadas Máquinas Virtuais MicroKernel
Microkernel
Observações
Referências I
Abreviaturas I