30
IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings capítulo 2, Operating Systems: Internals and Design Principles, W. Stallings

IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

Embed Size (px)

Citation preview

Page 1: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Sistemas Operacionais

0. Visão geral de um sistema computacional

Textos base:

capítulo 1, Computer Organization and Architecture, W. Stallings

capítulo 2, Operating Systems: Internals and Design Principles, W. Stallings

Page 2: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Arquitetura de computadores

Arquitetura de computadores refere-se às características visíveis pelo programador conjunto de instruções, número de bits de

dados, mecanismos de E/S, modos de endereçamento

exemplo: deve haver uma instrução de multiplicação?

Page 3: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Organização de computadores

Organização de computadores refere-se a como estas características são implementadas detalhes de h/w como sinais de controle,

interfaces, tecnologia de memória exemplo: como implementar a instrução de

multiplicação?

Page 4: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Arquitetura x Organização

Fabricantes oferecem famílias de modelos, com mesma arquitetura e diferentes organizações custo e desempenho diferentes compatibilidade de código mudança da organização com tecnologia

Page 5: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Estrutura e Função Um computador é um sistema

hierárquico. Em cada nível, o projetista se preocupa com sua estrutura e sua função

Estrutura é a forma como os componentes se relacionam

Função é a operação de cada componente parte dessa estrutura

Page 6: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Função

Funções básicas de um computador são: Processamento de dados Armazenamento de dados Movimentação de dados Controle

Page 7: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Visão funcional

Visão funcional de um computador

Equip. demoviment.de dados

Mecanismode controle

Facilidadedearmazenam.

Facilidadedeprocessam.

Ambiente deoperação

Page 8: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Estrutura: visão macro

Computador

Memóriaprincipal

E/S

Sistema decomunicação

Periféricos

Linhas decomunicação

UCP

Computador

Page 9: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Estrutura: a UCP

ComputadorULA

Unidadedecontrole

Interconexãointerna à UCP

Registradores

UCP

E/S

Memória

Sistem.Com.

UCP

Page 10: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Estrutura: unidade de controle

UCP

Memóriadecontrole

Registradores edecodificadores

Seqüencia-mento

Unid.controle

ULA

Regist.

Barraint.

Unid. de controle

Page 11: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Computador: visão macro

Page 12: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Ciclo de instrução

Início ParadaBusca novainstrução

ExecutaInstrução

Ciclo de busca Ciclo de execução

Page 13: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Ciclo de busca

PC contém o endereço da próxima instrução

Instrução é buscada e colocada no IR para ser interpretada

PC é incrementado (quase sempre!)

Page 14: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Ciclo de execução

UCP interpreta instrução e executa ação: UCP memória: transferência de dados UCP E/S: transferência de dados processamento de dados: operação lógica ou

aritmética controle: alteração da seqüência de operação combinação dessas ações

Page 15: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Organização da UCP

Funções da UCP: buscar instruções interpretar instruções buscar dados processar dados

UCP precisa fazer armazenamento temporário: registradores

Page 16: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Registradores

Espaço de trabalho temporário Quantidade e função varia entre

processadores Uma das principais decisões de projeto Nível superior da hierarquia de memória

Page 17: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Registradores visíveis

São os que podem ser referenciados através de linguagem de máquina de uso geral (dados e endereçamento) de dados (e.g., acumulador) de endereço: segmento, índice, pilha, ... códigos de condição (só leitura)

Page 18: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Registradores de controle e estado

Visibilidade restrita Essenciais: PC, IR, MAR, MBR PSW: Program Status Word

códigos de condição (sinal, zero, vai-um, estouro, permissão/inibição de interrupção, supervisor)

Outros: SP, apontador de PCB, interrupção vetorizada

Page 19: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Conceito de interrupção Mecanismo pelo qual outros módulos (e.g.,

E/S) interrompem processamento normal da UCP

Tipos mais comuns de interrupção: programa (e.g., 0) temporização (e.g., escalonamento) E/S (e.g., fim de escrita em disco) falha de h/w (e.g., falta de energia)

Page 20: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Fluxo de controle em programa

Page 21: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Transferência de controle

1

2

i

i+1

Programa do usuário

M

Tratador de interrupção

Page 22: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Tratador de interrupção

Programa que determina a natureza da interrupção e que realiza o tratamento adequado

Controle é transferido para este programa após salvamento de algumas informações

É parte do sistema operacional

Page 23: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Início

Parada

Busca novainstrução

Executainstrução

Verifica inter-rupção: processa

interrupção

Ciclo de busca Ciclo de execução Ciclo de interrupção

Interrupçõesinibidas

Interrupçõespermitidas

Ciclo de interrupção

Page 24: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Tratamento da interrupção

Algum controlador dedispositivo gera umainterrupção

UCP termina execuçãoda instrução corrente

UCP sinalizareconhecimento dainterrupção

UCP armazenaPSW e PC napilha de controle

UCP carrega novovalor do PC baseadana interrupção

Salva o resto dainformação de estadodo processador

Processa interrupção

Restaura ainformação de estadodo processador

Restaura PSW e PCanteriores

H/W S/W

Page 25: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Interrupções múltiplas (1)

Desabilita interrupções: seqüencial UCP ignora outras interrupções enquanto

processa uma interrupção interrupções pendentes só são verificadas ao

fim do tratamento da interrupção corrente interrupções tratadas na ordem seqüencial

de ocorrência

Page 26: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Tratamento seqüencial

Page 27: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Interrupções múltiplas (2)

Definição de prioridades interrupções de menor prioridade podem ser

interrompidas por interrupções de maior prioridade

quando há o término do tratamento da(s) de maior prioridade, UCP trata a(s) de menor prioridade

Page 28: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Tratamento com prioridades

Page 29: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Técnicas de comunicação de E/S

E/S programado: (a) E/S por interrupção: (b) E/S por DMA: (c)

Page 30: IC - UFF Sistemas Operacionais 0. Visão geral de um sistema computacional Textos base: capítulo 1, Computer Organization and Architecture, W. Stallings

IC - UFF

Exemplo: leitura de um blocoInsert Readcommand toI/O Module

Read Statusof I/OModule

CheckStatus

Read wordfrom I/OModule

Write wordinto memory

Done?

Yes

No

Next Instruction

CPU Memory

I/O CPU

ErrorCondition

I/O CPU

CPU I/O

Ready

NotReady

Insert Readcommand toI/O Module

Read Statusof I/OModule

CheckStatus

Read wordfrom I/OModule

Write wordinto memory

Done?

Yes

No

Next Instruction

CPU Memory

I/O CPU

ErrorCondition

I/O CPU

CPU I/O

Ready

Do somethingelse

Interrupt

Next Instruction

CPU DMA

Interrupt

DMA CPU

Do somethingelse

Issue Readblock commandto I/O module

Read statusof DMAmodule

(a) (b)

(c)