erivelto tschoeke 1/25. hardware estrutura de um sistema operacional interrupções proteção do...
TRANSCRIPT
Erivelto Tschoeke
1/25
Hardware Estrutura de um sistema operacional Interrupções Proteção do núcleo Níveis de privilégio Chamadas de sistema
2/25
Mono-processadores atuais seguem um padrão definido na década de 40 por János (John) Von Neumann Arquitetura Von Neumann
Programa armazenado Programa a ser executado reside na
memória junto com os dados
3/25
4/25
Controladora de Dispositivos
Dispositivos físicosHardware
Software
Aplicativos
Programas Utilitários Nível usuário
Nível sistemaNúcleo
Código de Inicialização
Drivers de Dispositivo
M em óriaPr in cip a l
D ispo sitivo sd e E/ S
Processad o r / U C P
U n id ad e Lóg icae A ri tm ética
Reg istra do res
U n id ad e deC on tro le
5/25
É o núcleo do sistema de computação. Responsável por continuamente ler as
instruções e dados da memória ou de periféricos, processá-los e enviar os resultados de volta a memória ou outros periféricos.
6/25
Unidade Central de Processamento (UCP ou CPU)
Unidade de Controle (UC) Unidade Lógica e Aritmética (ULA) Clock
Memórias de alta velocidade
7/25
Ocorre todas as transferências de dados. Barramento de endereços
Indica a posição de memória (ou dispositivo) a acessar
Barramento de controle Indica a operação a efetuar (leitura ou escrita)
Barramento de dados Transporta a informação indicada entre o
processador e a memória ou controlador de dispositivo
8/25
Barram ento processa dor -m em ória
Ba
rra
me
nto
de
E/S
Ba
rra
me
nto
de
E/S
A da ptado r A da ptado r
M em ó r iaPr in cip a l
U C P
9/25
Memory Management Unit (Unidade de Gerência de Memória)
Responsável por analisar cada endereço solicitado pelo processador, validá-los, efetuar conversões de endereçamento necessárias e executar a operação solicitada pelo processador leitura ou escrita de uma posição de
memória
10/25
m a io rca pa cid ad e d e
a rm a zena m en to
m a io r custo evelocida ded e acesso
M em ór ia Secu nd á r ia
M em ór ia C ache
M em ór ia Pr in cip a l
Reg istrad o res
11/25
Memória secundária Discos Fitas magnéticas
Interface usuário-máquina Teclados Impressoras
Outros dispositivos Placa de vídeo Dispositivos USB’s
São acessados através de circuitos específicos denominados controladores
12/25
13/25
controle
endereços
dados
Processador MMU
Memória
ControladoraUSB
Mouse Teclado
Controladorade vídeo
Monitor
Controladorade disco
Controladorade rede
Unidade de disco
Conexãode rede
Quando um controlador de periférico possui uma informação importante para fornecer ao processador Aguarda até que o processador o consulte Notifica o processador através do
barramento de controle Requisição de interrupção (IRQ – Interrupt
ReQuest)
14/25
1. O processador está executando um programa qualquer (em outras palavras, um fluxo de execução);
2. Um pacote vindo da rede é recebido pela placa Ethernet;3. A placa envia uma solicitação de interrupção (IRQ) ao
processador;4. O processamento é desviado do programa em execução para a
rotina de tratamento da interrupção5. A rotina de tratamento é executada para receber as
informações da placa de rede (via barramentos de dados e de endereços) e atualizar as estruturas de dados do sistema operacional;
6. A rotina de tratamento da interrupção é finalizada e o processador retorna à execução do programa que havia sido interrompido.
15/25
16/25
controle
endereços
dados
Processador MMUControladora
de rede
Programa emexecução
memória1 Rotina de
tratamento dainterrupção
4
6
2
5
5
3
Certas instruções não podem estar disponíveis para as aplicações, pois isso poderia ocasionar um sério problema de integridade no sistema. Por exemplo, um acesso ao disco rígido
para gravação de um arquivo.
17/25
Então, existe 2 tipos de instruções: instruções privilegiadas e instruções não-privilegiadas.
O processador implementa 2 modos de acesso: modo usuário e o modo kernel (ou supervisor).
CPU Intel x86
Sistema Operacional
Aplicação
Não utilizado
Não utilizado
0
1
2
3
18/25
19/25
Hardware
NúcleoNívelnúcleo
Nívelusuário
Aplicação Aplicação Aplicação Aplicação
São portas de entrada para se ter acesso ao núcleo do sistema operacional.
Exemplo: quando o usuário deseja algum serviço, realiza uma chamada a uma de suas rotinas através de system calls (chamadas ao sistema).
Para cada serviço existe um system call associada e cada sistema operacional tem o seu próprio conjunto de chamadas.
20/25
21/25
Aplicação System CallNúcleoNúcleo
Hardware
Gerência de Processos Criação e eliminação de processos, alteração das
características do processo e sincronização e comunicação entre processos.
Gerência de memória Alocação e desalocação de memória.
Gerência de entrada/saída Operações de entrada e saída e manipulação de
arquivos e diretórios.
22/25
23/25
Conjunto de chamadas de sistema oferecidas por um núcleo é chamada de API API Win32 (Windows) POSIX (Unix/Linux)
24/25
“O Mundo está cheio de apáticos, mas eu não ligo.” (anônimo)
25/25