sistemas de computaçãoentrada e saída - e/s interrupções - etapas 1 dispositivo envia sinal na...

25

Upload: others

Post on 18-Nov-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 2: Sistemas de ComputaçãoEntrada 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 de reconhecimento

Seção

1 Entrada e Saída - E/S

Page 3: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 4: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 5: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 6: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 7: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 8: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 9: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 10: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 11: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 12: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 13: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 14: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 15: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 16: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 17: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 18: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 19: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 20: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 21: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 22: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 23: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 24: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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

Page 25: Sistemas de ComputaçãoEntrada 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 de reconhecimento

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