Sistemas Operacionais - 03 - Tipos e Estrutura dos SO
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Sistemas Operacionais - 03 - Tipos e Estrutura dos SO

on

  • 241 views

Sistemas Operacionais - 03 - Tipos e Estrutura dos SO

Sistemas Operacionais - 03 - Tipos e Estrutura dos SO

Statistics

Views

Total Views
241
Views on SlideShare
241
Embed Views
0

Actions

Likes
0
Downloads
17
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Sistemas Operacionais - 03 - Tipos e Estrutura dos SO Presentation Transcript

  • 1. Estruturas dos Sistemas Operacionais Sistemas Operacionais Prof. Mauro Duarte
  • 2. 29/04/14 Sistemas Monolíticos: ● Não existe nenhuma organização dentro do núcleo do sistema operacional: Um sistema operacional monolítico caracteriza-se por não possuir nenhuma estrutura interna no seu núcleo. O núcleo do sistema é composto por um conjunto de procedimentos, compilados em um único arquivo, que podem chamar uns aos outros. Alguns procedimentos implementam chamadas ao sistema operacional, e outros são procedimentos utilitários, usados para executar tarefas comuns a estas chamadas.
  • 3. 29/04/14 Sistemas Monolíticos: ● O projeto do sistema não é estruturado: – O sistema é um conjunto de procedimentos compilados num único arquivo objeto. – Os procedimentos possuem uma interface bem definida. – Os procedimentos podem chamar uns aos outros. – Os procedimentos dependem da implementação dos outros para funcionar.
  • 4. 29/04/14 Sistemas Monolíticos: ● O modelo de chamadas ao sistema permite uma estruturação: – Um processo que usa os procedimentos de serviço. – Um conjunto de procedimentos de serviço que implementam a chamada de sistema. – Um conjunto de procedimentos de utilitários usados pelos procedimentos de serviço.
  • 5. 29/04/14 Sistemas Monolíticos: ● O núcleo o Linux é um exemplo de sistema monolítico: – O acesso ao hardware é feito a partir dos controladores de dispositivos. – É dividido em cinco subsistemas.
  • 6. 29/04/14 O núcleo do Linux é monolítico e possui 5 subsistemas principais: Escalonador; Comunicação entre processos; Gerente de memória; Sistema de arquivo virtual; Interface de rede.
  • 7. 29/04/14 Sistema em Camadas: ● O sistema operacional é estruturado com uma hierarquia em camadas, onde cada camada implementa uma parte do sistema.
  • 8. 29/04/14 Sistema em Camadas(2): ● O primeiro Sistema Operacional a adotar tal modelagem foi oTHE, desenvolvido por Edsger Dijkstra e seus alunos, a fim de que funcionasse em um computador holandês, denominado de Electrologica X8.
  • 9. 29/04/14 Sistema em Camadas: ● OTHE possui a seguinte estrutura de seis camadas: – Camada 0: Alocação do processador e responsável pela multiprogramação; – Camada 1: Gerenciamento (alocação) de memória para os processos; – Camada 2: Comunicação entre operador-processo (Interpretador de Comandos e o Sistema Operacional) e comunicação entre processos; – Camada 3: Gerenciamento de Entrada/Saída; – Camada 4: Programas de Usuário; – Camada 5: Operador de Sistema;
  • 10. 29/04/14 Sistema em Camadas: Na estruturação do sistema como uma hierarquia em camadas, o núcleo do sistema operacional é dividido em camadas, sendo que cada uma delas trata do gerenciamento de alguma parte do hardware, fornecendo para as camadas superiores uma visão abstrata da parte do hardware gerenciada por esta camada.
  • 11. 29/04/14 Sistema em Camadas: ● A hierarquia em camadas fornece uma estruturação para o núcleo do sistema operacional, mas um nível não é obrigado a usar os serviços de um nível inferior.
  • 12. 29/04/14 Sistema em Anéis: ● O modelo em camadas inspirou o Sistema MULTICS, onde ao invés de camadas, o sistema foi estruturado em uma série de Anéis Concêntricos, onde o mais interno tinha maior privilégio que o mais externo.
  • 13. 29/04/14 Sistema em Anéis: ● Semelhante ao Sistema Monolítico, quando um Anel Externo necessitava de um procedimento contido em um Anel Interno, era necessário executar uma Chamada de Sistema, também conhecida comoTRAP. No caso do MULTICS, tal modelagem não era somente um auxílio, mas estava realmente presente no sistema e inclusive era protegido por hardware.
  • 14. 29/04/14 Sistema em Anéis: ● A estrutura baseada em anéis tem as seguintes vantagens sobre a estrutura em camadas: – Cada anel possui uma prioridade de acesso. – A prioridade do anel depende da posição do anel na hierarquia. – A proteção do acesso é assegurada pelo hardware.
  • 15. 29/04/14 Exemplos: ● THE (camadas) ● MULTICS (anéis) ● MS-DOS (camadas) ● UNIX (anéis) ● Linux (monolítico)
  • 16. 29/04/14 Modelo cliente-servidor: ● Baseado no conceito de cliente e servidor. ● O núcleo do sistema, chamado de micronúcleo ou microkernel, essencialmente trata da troca de mensagens entre clientes e servidores.
  • 17. 29/04/14 Modelo cliente-servidor(2):
  • 18. 29/04/14 Modelo cliente-servidor: ● O microkernel trata somente da troca de mensagens entre os processos rodando no modo usuário, e do acesso aos dispositivos físicos, mas não do seu gerenciamento. ● As outras partes do sistema são processos que executam em modo usuário.
  • 19. 29/04/14 Modelo cliente-servidor: ● Código do núcleo reduzido, coloca-se quase todas as partes do sistema em modo usuário.
  • 20. 29/04/14 Modelo cliente-servidor: ● Existem processos servidores, rodando no modo usuário, executando quase todos os serviços do sistema. ● O processo cliente que deseja um serviço do sistema envia uma mensagem ao processo servidor que executa o serviço. ● Ao receber a mensagem de um cliente, o processo servidor executa o serviço, e depois envia uma resposta ao cliente.
  • 21. 29/04/14 Modelo cliente-servidor: ● Vantagens do modelo: – O sistema é dividido em partes menores que são mais fáceis de manter e gerenciar; – Como os servidores executam em modo usuário, um erro de programação não compromete o sistema; – Facilita a implementação de sistemas distribuídos, pois os servidores não precisam estar na mesma máquina.
  • 22. 29/04/14 Modelo cliente-servidor:
  • 23. 29/04/14 Modelo cliente-servidor: ● OWindows NT é um exemplo de sistema operacional baseado no modelo cliente-servidor. ● Assim como o Mac OS X. O sistema Mac OS X, que executa nos computadores da linha Machintosh, é baseado no sistema NeXTStep, que usa o microkernel Mach para gerencial o hardware do computador. Existe um único servidor rodando no sistema, que é uma versão do sistema BSD (baseado no UNIX). O BSD acessa o hardware através do Mach, e não diretamente através de driver de dispositivos. Os programas ou usam as chamadas BSD, ou as chamadas ao Mach.
  • 24. 29/04/14 Modelo cliente-servidor: ● O sistema operacional MINIX, a partir da versão 2.0, também é um sistema baseado no modelo cliente-servidor.
  • 25. 29/04/14 Para estudar mais: págs 37-43