Sistemas Operacionais
Capítulo 5
Estrutura do Sistema Operacional

5.1 – Introdução

  • Kernel -> conjunto de rotinas que oferecem serviços aos usuários do sistema e suas aplicações, bem como a outras rotinas do próprio sistema.
    • Principais rotinas:
    • tratamento de interrupções;
    • criação e eliminação de processos;
    • sincronização e comunicação entre processos;
    • escalonamento e controle dos processos;
    • gerência da memória;
    • gerência do sistema de arquivos;
    • operações de entrada e saída;
    • contabilização e segurança do sisteama.


5.2 – System Calls (chamadas ao sistema)

  • Comunicação do usuário ou aplicação com o núcleo do sistema operacional.
  • Para cada serviço existe uma system call.
  • System call X modularização.
  • Grupos de funções:
    • Gerência de processos:
      • Criação e eliminação de processos;
      • Alteração das características do processo;
      • Sincronização e comunicação entre processos.
    • Gerência de memória:
      • Alocação e desalocação de memória
    • Gerência de entrada e saída:
      • Operações de entrada/saída;
      • Manipulação de Arquivos.


5.3 – Modos de Acesso

  • Restrição quanto à utilização de algumas funções do sistema 
  • Instruções privilegiadas
    • oferecem perigo ao sistema)
    • funcionam no modo kernel
    • acesso ao conjunto total de instruções do processador
  • Instruções não privilegiadas
    • não oferecem perigo ao sistema
    • funcionam no modo usuário
    • acesso à um número reduzido de instruções
  • A system call altera o modo de acesso do processador para o modo kernel
  • Quando uma aplicação necessita  de um serviço de risco a um sistema, chama uma system call.


5.4 – Sistemas Monolíticos

  • Mais comum de ser encontrada
  • Rotinas interagem livremente umas com as outras


5.5 – Sistema em Camadas

  • Sistema operacional dividido entre camadas sobrepostas
  • Cada módulo possui um conjunto de funções que podem ser utilizadas por outro módulo
  • Módulos de uma camada podem apenas fazer referência a módulos das camadas inferiores
  • Camadas internas tem mais privilégios que as camadas externas


5.6 – Sistema Cliente-Servidor

  • Tendência de tornar o núcleo menor e mais simples possível.
  • Sistema dividido em processos, cada qual responsável por um conjunto de serviços
  • Núcleo é responsável pela comunicação entre clientes e servidores
  • Apenas núcleo executa no modo kernel
  • Caso um servidor dê problemas, não compromete o funcionamento do resto do sistema
  • Mais fácil manutenção do Sistema Operacional
  • Permite que um cliente solicite um serviço e a resposta seja processada remotamente
  • Na prática, implementação muito difícil e combinada com o sistema em camadas.

[voltar]