TIPOS DE SISTEMAS OPERACIONAIS Pablo Viana TIPOS DE SISTEMAS OPERACIONAIS Tipos de Sistemas Operacionais [email protected] www.laureano.eti.br Sistemas Monoprogramáveis/ Monotarefas Sistemas Multiprogramáveis/ Multitarefas Sistemas com Múltiplos Processadores SISTEMAS MONOPROGRAMÁVEIS Permitem que o processador, a memória e os periféricos permaneçam exclusivamente dedicados a execução de um único programa. Assim, quando um programa aguarda por um evento, o processador permanece ocioso. São de simples implementação, não existindo muita preocupação com proteção. [email protected] www.laureano.eti.br SISTEMAS MONOPROGRAMÁVEIS Estão relacionadas ao surgimento de mainframes e posteriormente a máquinas utilizadas por apenas um usuário. Programa/ Tarefa UCP [email protected] www.laureano.eti.br Memória E/S SISTEMAS MULTIPROGRAMÁVEIS Existem vários programas dividindo os mesmos recursos da máquina (como compartilhamento de memória e do processador). Sistema operacional se preocupa em gerenciar o acesso concorrente aos seus diversos recursos de forma ordenada e protegida. [email protected] www.laureano.eti.br SISTEMAS MULTIPROGRAMÁVEIS Há o aumento da produtividade dos seus usuários e a redução dos custos, a partir do compartilhamento dos diversos recursos do sistema. É permitido que mais de um usuário o utilize. É possível realizar diversas tarefas concorrentemente ou simultaneamente. [email protected] www.laureano.eti.br SISTEMAS MULTIPROGRAMÁVEIS Programa/ Tarefa Programa/ Tarefa UCP [email protected] www.laureano.eti.br Memória Programa/ Tarefa E/S Programa/ Tarefa CLASSIFICAÇÃO A partir do número de usuários que interagem com o sistema podemos classifica-lo como monousuário e multiusuário. Podem ser classificados pela forma em que suas aplicações são gerenciadas. Um sistema operacional pode suportar um ou mais tipos de processamento. [email protected] www.laureano.eti.br [email protected] www.laureano.eti.br SISTEMAS X USUÁRIOS Um usuário Dois ou mais usuários Monoprogramação/ Monotarefa Monousuário N/A Multiprogramação/ Multiterefa Monousuário Multiusuário CLASSIFICAÇÃO DE PROCESSAMENTO Sistemas Multiprogramáveis/ Multitarefa [email protected] www.laureano.eti.br Sistemas Batch Sistemas de Tempo Compartilhado Sistemas de Tempo Real SISTEMA BATCH Primeiros sistemas multiprogramáveis e caracterizam-se por ter seus programas, quando submetidos, armazenados em disco ou fita, onde esperam para se executados seqüencialmente. Não exigem integração com o usuário. Utilizam melhor o processador, porém o tempo de resposta pode ser longo devido ao processamento seqüencial. [email protected] www.laureano.eti.br SISTEMAS DE TEMPO COMPARTILHADO Permitem a integração do usuário com o sistema através de terminais. Também conhecidos como sistemas on-line. Para cada usuário o sistema aloca uma fatia de tempo (time-slice) de processador, e caso o programa não seja concluído neste intervalo de tempo, é substituído por outro usuário e aguarda outra fatia de tempo. [email protected] www.laureano.eti.br SISTEMAS DE TEMPO COMPARTILHADO A memória e os periféricos também são compartilhados. O sistema cria para o usuário um ambiente de trabalho próprio, dando a impressão que todo o sistema esta dedicado a ele. São de implementação complexa, mas aumentam a produtividade e reduz o custo de utilização do sistema. [email protected] www.laureano.eti.br SISTEMAS DE TEMPO REAL Semelhantes em implementação aos sistemas de tempo compartilhado. Diferem no tempo de resposta exigido no processamento das aplicações. Os tempos de resposta devem estar dentro de limites rígidos, que devem ser obedecidos, caso contrário podem ocorrer problemas irreparáveis. [email protected] www.laureano.eti.br SISTEMAS DE TEMPO REAL Não existe a idéia de fatia de tempo. Um programa detém o processador o quanto for necessário, até que apareça outro prioritário (controlado pela própria aplicação e não e pelo sistema). Presentes em controles de processo, como monitoramento de refinarias de petróleo, tráfego aéreo ou em qualquer aplicação onde o tempo de resposta é fator fundamental. [email protected] www.laureano.eti.br SISTEMAS COM MÚLTIPLOS PROCESSADORES Possuem uma ou mais UCPs interligadas, trabalhando em conjunto. Um fator-chave é a forma de comunicação entre as UCPs e o grau de compartilhamento da memória e dos dispositivos de E/S. [email protected] www.laureano.eti.br CLASSIFICAÇÃO DOS SISTEMAS Sistemas com Múltiplos Processadores Sistemas Fortemente Acoplados [email protected] www.laureano.eti.br Sistemas Simétricos Sistemas Assimétricos Sistemas Fracamente Acoplados Sistemas Operacionais de Rede Sistemas Operacionais Distribuídos SISTEMAS FORTEMENTE ACOPLADOS X SISTEMAS FRACAMENTE ACOPLADOS Em sistemas fortemente acoplados existe apenas um espaço de endereçamento compartilhado enquanto no fracamente acoplados cada sistema tem sua própria memória. A taxa de transferência entre UCPs e memória em sistemas fortemente acoplados é normalmente maior que nos fracamente acoplados. [email protected] www.laureano.eti.br SISTEMAS FORTEMENTE ACOPLADOS Multiprocessadores (permitem que vários programas seja executados ao mesmo tempo) compartilhando uma única memória e controlados por apenas um único sistema operacional. Uso intensivo da UCP, onde o processamento é voltado para a solução de um único problema. [email protected] www.laureano.eti.br SISTEMAS FORTEMENTE ACOPLADOS [email protected] www.laureano.eti.br UCP E/S Memória UCP E/S - SISTEMAS ASSIMÉTRICOS 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, terá que requisitar o serviço ao processador mestre. Se o processador mestre falhar, todo o sistema ficará incapaz de continuar o processamento. [email protected] www.laureano.eti.br - SISTEMAS ASSIMÉTRICOS UCP Slave Usuários [email protected] www.laureano.eti.br UCP Master Dispositivos de E/S S.O. Usuários - SISTEMAS SIMÉTRICOS Todos os processadores realizam as mesmas funções. Um programa pode ser executado por qualquer processador, inclusive por vários processadores ao mesmo tempo. Quando um processador falha, o sistema continua sem nenhuma interferência manual, porém com menor capacidade. [email protected] www.laureano.eti.br [email protected] www.laureano.eti.br - SISTEMAS SIMÉTRICOS UCP E/S UCP SO Usuários - MULTIPROCESSAMENTO Com a implementação de sistemas com múltiplos processadores, o conceito de simultaniedade ou paralelismo pôde ser expandido a um nível mais amplo, onde uma tarefa pode ser dividida e executada por mais de um processador. Pode ser dividido em dois níveis: processamento vetorial e processamento paralelo. [email protected] www.laureano.eti.br - PROCESSAMENTO VETORIAL Permite a manipulação de vetores inteiros e combinam dois vetores, produzindo um vetor de saída. Também possuem um processador escalar. O custo de seu alto desempenho é sua organização complexa e preços superiores aos computadores comuns. [email protected] www.laureano.eti.br - PROCESSAMENTO PARALELO É a possibilidade de uma aplicação ser realizada por mais de um processador ao mesmo tempo. O processamento vetorial também pode ser implementado através de múltiplos processadores. O maior problema é saber quando há a necessidade de implementar o paralelismo. [email protected] www.laureano.eti.br - ORGANIZAÇÃO FUNCIONAL O esquema de comunicação interna das UPCs é que determina quantas UPCs o sistema poderá ter e como será o acesso a memória. Podem se dividir em barramento comum, barramento cruzado e memória multiport. [email protected] www.laureano.eti.br - BARRAMENTO COMUM Forma mais simples de comunicação. Todos os componentes ligados a um barramento comum. Somente uma unidade pode estar utilizando o barramento em um determinado instante. Arquitetura simples, econômica e flexível, mas limitado a poucos processadores, dependendo da velocidade de transmissão do barramento. [email protected] www.laureano.eti.br - BARRAMENTO CRUZADO É possível a comunicação simultânea entre as diferentes unidades, criando um a rede de interconexão. É ilimitado o número de processadores que podem ser adicionados ao sistema. Dois processadores não podem ter acesso a um módulo de memória no mesmo instante. O preço de seu alto desempenho esta no custo e complexidade do sistema. [email protected] www.laureano.eti.br - MEMÓRIA MULTIPORT Permite acessos simultâneos a um mesmo módulo de memória. Os acessos simultâneos são realizados através de múltiplas portas. [email protected] www.laureano.eti.br SISTEMA FRACAMENTE ACOPLADOS Possuem dois ou mais sistemas de computação, conectados através de linhas de comunicação. Cada sistema funciona de forma independente, e cada sistema possui seu próprio sistema operacional. Caracterizada pelo processamento distribuído pelos seus diversos processadores. [email protected] www.laureano.eti.br SISTEMA FRACAMENTE ACOPLADOS Link de Comunicação [email protected] www.laureano.eti.br UCP Memória UCP E/S Memória E/S - SISTEMAS OPERACIONAIS DE REDE São independentes e caso a conexão entre um dos nós sofra qualquer problema, os demais continuam operando normalmente , apesar de alguns recursos se tornarem indisponíveis. Cada nó possui seu próprio sistema operacional e permite: [email protected] www.laureano.eti.br Cópia remota de arquivos. Emulação de terminal. Impressão remota. Gerência remota. Correio eletrônico. - SISTEMAS OPERACIONAIS DISTRIBUÍDOS É definido pela existência de um relacionamento mais forte entre seus componentes, onde geralmente os sistemas operacionais são os mesmos. Para o usuário e suas aplicações é como se não existisse uma rede de computadores e sim um único sistema centralizado. Possibilidade de balanceamento de carga. [email protected] www.laureano.eti.br [email protected] www.laureano.eti.br - SISTEMAS OPERACIONAIS DISTRIBUÍDOS - SISTEMAS OPERACIONAIS DISTRIBUÍDOS [email protected] www.laureano.eti.br COMPUTADOR 1 COMPUTADOR 2 - SISTEMAS OPERACIONAIS DISTRIBUÍDOS [email protected] www.laureano.eti.br Uma grande vantagem da implementação de aplicações distribuídas é a capacidade de redundância do sistema. Principalmente em aplicações de missão crítica, onde são conhecidos como sistema de tolerância a falhas (fault tolerance). - ORGANIZAÇÃO FUNCIONAL Barramento: sistemas conectados a uma mesma linha e todos compartilham o meio, caso haja algum problema de comunicação todos os nó ficarão incomunicáveis. Usado em redes locais. Organização distribuída: existem linhas de comunicação ponto-a-ponto entre os sistemas e caminhos alternativos entre os nós. Caso haja algum problema, linhas alternativas permitem que continue funcionando. Usado em redes distribuídas. [email protected] www.laureano.eti.br