Sistemas de ComputaçãoEntrada e Saída - E/S Interrupções - Etapas 1 Dispositivo envia sinal na...

Preview:

Citation preview

Entrada e Saída - E/S

Sistemas de ComputaçãoDécima terceira aula

Haroldo Gambini Santos

Universidade Federal de Ouro Preto - UFOP

2 de setembro de 2009

Haroldo Gambini Santos Sistemas de Computação 1/12

Seção

1 Entrada e Saída - E/S

Entrada e Saída - E/S

Introdução

Benchmarks de computadores:geralmente focados em aplicações CPU bound

Aplicações cientí�cas com muitos cálculos

Jogos 3D com grá�cos detalhados

Haroldo Gambini Santos Sistemas de Computação 2/12

Entrada e Saída - E/S

Introdução

Outro per�l de aplicação:Pouco uso de CPUUso extensivo de leitura e gravação persistente de grandevolume de dados

Haroldo Gambini Santos Sistemas de Computação 3/12

Entrada e Saída - E/S

Introdução

Outro per�l de aplicação:Pouco uso de CPUUso extensivo de leitura e gravação persistente de grandevolume de dados

Aplicações I/O bound

Haroldo Gambini Santos Sistemas de Computação 3/12

Entrada e Saída - E/S

Métrica para IO

TPM: Transactions Per Minute

Ex.: Vazão em termos de operações �nanceiras realizadasÚtil para várias aplicações importantes:

Reservas aéreasTransações com cartão de créditoAutomação bancária

Haroldo Gambini Santos Sistemas de Computação 4/12

Entrada e Saída - E/S

Barramento

Lembrando:Ex.: ISA, PCI, SCSI ...Banda compartilhada por todos os dispositivos neleconectadosAcessos concorrentes: quem ganha ?

Política de arbitramento

Haroldo Gambini Santos Sistemas de Computação 5/12

Entrada e Saída - E/S

Barramento

Lembrando:Ex.: ISA, PCI, SCSI ...Banda compartilhada por todos os dispositivos neleconectadosAcessos concorrentes: quem ganha ?

Política de arbitramento

Haroldo Gambini Santos Sistemas de Computação 5/12

Entrada e Saída - E/S

Política de Arbitramento

Como decidir ?

SCSIID SCSI para prioridades

Perigo de inanição1

1starvation

Haroldo Gambini Santos Sistemas de Computação 6/12

Entrada e Saída - E/S

Política de Arbitramento

Como decidir ?

SCSIID SCSI para prioridadesPerigo de inanição1

1starvation

Haroldo Gambini Santos Sistemas de Computação 6/12

Entrada e Saída - E/S

Acesso ao barramento

Tempo de acesso:solicitaçãoarbitramentoexecução

Timeouts

evitar que processos de baixa prioridade �abusem� do uso dobarramento

Haroldo Gambini Santos Sistemas de Computação 7/12

Entrada e Saída - E/S

Acesso ao barramento

Tempo de acesso:solicitaçãoarbitramentoexecução

Timeouts

evitar que processos de baixa prioridade �abusem� do uso dobarramento

Haroldo Gambini Santos Sistemas de Computação 7/12

Entrada e Saída - E/S

Interrupções

Eventos assíncronosIntervalos de tempo imprevisíveis

Ex1.: teclado

Necessidade de resposta imediataEx2.: uso de disco

Acionadores de disco: 10msMilhões de ciclos de um processador

Haroldo Gambini Santos Sistemas de Computação 8/12

Entrada e Saída - E/S

Interrupções

Eventos assíncronosIntervalos de tempo imprevisíveis

Ex1.: teclado

Necessidade de resposta imediataEx2.: uso de disco

Acionadores de disco: 10msMilhões de ciclos de um processador

Haroldo Gambini Santos Sistemas de Computação 8/12

Entrada e Saída - E/S

Interrupções

Eventos assíncronosIntervalos de tempo imprevisíveis

Ex1.: teclado

Necessidade de resposta imediata

Ex2.: uso de disco

Acionadores de disco: 10msMilhões de ciclos de um processador

Haroldo Gambini Santos Sistemas de Computação 8/12

Entrada e Saída - E/S

Interrupções

Eventos assíncronosIntervalos de tempo imprevisíveis

Ex1.: teclado

Necessidade de resposta imediataEx2.: uso de disco

Acionadores de disco: 10msMilhões de ciclos de um processador

Haroldo Gambini Santos Sistemas de Computação 8/12

Entrada e Saída - E/S

Implementando Interrupções

Diferente sinais para diferentes dispositivosReconhecimento de interrupção

OK do processador para processar interrupção

Vetor de interruçõesEndereço das rotinas para tratamento de interrupçõesGeralmente preenchido com rotinas do SO

Haroldo Gambini Santos Sistemas de Computação 9/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

Interrupções - Etapas

1 Dispositivo envia sinal na sua linha de interrupção

2 Processador recebe requisição e envia sinal dereconhecimento de interrupção

3 Busca no vetor de interrupções e execução do tratador deinterrupções

4 Troca de contexto

5 Execução do tratamento da interrupção

6 Troca de contexto

Haroldo Gambini Santos Sistemas de Computação 10/12

Entrada e Saída - E/S

E/S mapeada em memória

Necessidade de:Envio de comandos para os dispositivos de E/SLeitura dos dados

Registradores de comando dos dispositivosponto de vista do programador: posições de memória

Haroldo Gambini Santos Sistemas de Computação 11/12

Entrada e Saída - E/S

E/S mapeada

Registradores de comando

Comando

Prato

Trilha

Setor

End. Inicial

Tamanho

End. base

End. Base + 4

End. Base + 8

End. Base + 12

End. Base + 16

End. Base + 20

Haroldo Gambini Santos Sistemas de Computação 12/12

Recommended