Erivelto Tschoeke 1/25. Hardware Estrutura de um sistema operacional Interrupções Proteção do...

Post on 17-Apr-2015

108 views 0 download

Transcript of Erivelto Tschoeke 1/25. Hardware Estrutura de um sistema operacional Interrupções Proteção do...

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