Escolar Documentos
Profissional Documentos
Cultura Documentos
Supervisor
Executivo
Kernel
Introdução
A maioria dos sistemas operacionais é fornecida e
acompanhada de utilitários e linguagem de comandos, que são
ferramentas de apoio ao usuário, porém não são parte do
núcleo do sistema. O próximo slide apresenta um modelo de
camadas detalhando a estrutura do sistema operacional e suas
interfaces.
4 – Estrutura do Sistema Operacional
Sistema Computacional
Linha de
Aplicativos Utilitários
Comando
Hardware
Funções do Núcleo
A compreensão da estrutura do Sistema Operacional
não é simples. Diferente de uma aplicação convencional como
sequenciamento de ínicio, meio e fim, as rotinas do sistema
operacional são executadas concorrentemente, sem uma ordem
pré-definida, com eventos dissociados do tempo (eventos
Assincronos). Muitos desses exentos são relacionados ao
hardware e a tarefas internas do próprio sistema operacional
Principais Funções do Nucleo do
Sistema Operacional
•Tratamento de interrupções e exceções;
•Criação e eliminação de Processos e Threads;
•Escalonamento e controle de Processos e Threads;
•Gerência de Memória;
•Gerência do Sistema de Arquivos;
•Gerência do dispositivo de E/S
•Suporte a Redes Locais Distribuídas
•Contabilização e Uso do Sistema;
•Auditoria e Segurança do Sistema.
Problemas de Segurança
System Call
Núcleo do
Sistema Operacional
Boot loader
Post – Power-on Self Test
Shutdown
Arquitetura do Núcleo
O projeto de um Sistema Operacional é bastante
complexo e deve atender a diversos requisitos, algumas
vezes conflitantes, tais como:
•Confiabilidade
•Portabilidade
•Fácil manutenção
•Flexibilidade
•Desempenho
• Sistemas Monolíticos;
• Sistemas em Camadas;
• Sistemas Cliente-Servidor.
4 – Estrutura do Sistema Operacional
Arquitetura Monolítica
aplicação aplicação
Modo usuário
Modo kernel
System call
Hardware
Arquitetura Monolítica
Características
• É a organização mais comum aos sistemas operacionais;
• Em um sistema monolítico temos um conjunto de rotinas
responsável pela interpretação dos parâmetros passados
quando da chamada do sistema por parte de um programa
aplicativo, pela execução do serviço solicitado e pelo retorno
dos resultados;
• Qualquer rotina presente no sistema operacional pode vir a
chamar qualquer outra das rotinas.
Servidor de Servidor de
arquivo processo
Modo
usuário
Modo
Núcleo kernel
Hardware
Características
• O kernel do SO passa a ser responsável pela comunicação
entre processos e pela implementação de operações que seriam
difíceis de serem executadas a partir dos processos servidores.
• A maioria dos serviços que seriam prestados pelo SO,
executados em modo supervisor em uma organização
monolítica, passariam a ser prestados por um conjunto de
processos servidores que seriam executados em modo usuário,
sendo apenas o kernel ainda executado em modo supervisor.
n
VM
VM
VM
Ap 1 Ap2 Apn
Hardware
4 – Estrutura do Sistema Operacional
Máquina Virtual Java
Aplicação
Sistema Operacional
Hardware
4/7
4 – Estrutura do Sistema Operacional
Arquitetura Microkernel
em
ag
me
ns
me
ns
Modo usuário
ag
em
Modo kernel
Microkernel
Hardware
4/8
Exercícios
l. O que é o núcleo do sistema e quais são as suas principais
funções?
2. 0 que são instruções privilegiadas e não privilegiadas? Qual a
relação dessas instruções com os modos de acesso?
3. Explique como funciona a mudança de modos de acesso e dê
um exemplo de como um Programa faz uso desse mecanismo.
4. Como o kernel do sistema operacional pode ser protegido pelo
mecanismo de modos de acesso?
5 Porque as rotinas do sistema operacional possuem instruções
privilegiadas?
6. 0 que é uma system call e qual sua importância para a segurança
do sistema? Como as system calls são utilizadas por um
programa?
Exercícios
7. Quais das instruções a seguir devem ser executas apenas em
modo kernel?
Desabilitar todas as interruções, consultar a data e a hora do sistema,
alterar a data e hora do sistema, alterar informações residentes no
núcleo do sistema, somar duas variáveis declaradas dentro do
programa, realizar um desvio para uma instrução dentro do diretório
do programa e acessar diretamente posições no disco.
8. Pesquise comandos disponíveis em linguagens de controle de
sistemas operacionais.
9. Explique o processo de ativação (boot) do sistema operacional.
10. Compare as arquiteturas monolítica e de camadas. Quais as
vantagens e desvantagens de cada arquitetura?
11. Quais as vantagens do modelo de máquina virtual?
12. Como funciona o modelo cliente-servidor na arquitetura
microkemel? Quais as vantagens e desvantagens dessa arquitetura?
Exercícios
13. Porque a utilização da programação orientada a objetos é um
caminho natural para o projeto de sistemas o operacionais?