A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Agenda Entrada e Saída.

Apresentações semelhantes


Apresentação em tema: "Agenda Entrada e Saída."— Transcrição da apresentação:

1 Agenda Entrada e Saída

2 Interrupções Todos os computadores possuem algum tipo de mecanismo pelo qual componentes distintos do processador podem interromper a seqüência normal de execução de instruções do processador.

3 Interrupções Software: gerada por alguma condição que ocorra como resultado da execução de uma instrução - overflow, divisão por zero... Relógio: gerada pelo relógio interno do processador. Esse tipo de interrupção permite que o SO execute certas funções em intervalos de tempo regulares E/S: gerada por um controlador de E/S para sinalizar a conclusão de uma operação ou uma situação de erro.

4 Interrupções Hardware: gerada na ocorrência de uma falha, tal como queda de energia ou erro de paridade na memória. O mecanismo de interrupção visa melhorar a eficiência do processamento. O processador pode executar outras tarefas enquanto uma operação, por exemplo de E/S, está em andamento

5 Múltiplas Interrupções
Duas formas de tratamento: desabilitar as interrupções enquanto uma interrupção está sendo processada. Não leva em consideração prioridades Definir prioridades para as interrupções permitindo que uma interrupção de maior prioridade interrompa a rotina de tratamento de uma interrupção de prioridade mais baixa. Ex: sistema com 3 dispositivos: impressora, disco e uma linha de comunicação, com prioridades crescentes: 2, 4 e 5.

6 Múltiplas Interrupções
Programa do Usuário RTI Impressora RTI Comunicação t=0 t=15 t=25 RTI Disco t=10 t=10 t=40 t=25 t=35

7 Barramentos Um barramento é um caminho entre dois ou mais dispositivos. É um meio de comunicação compartilhado. Consiste em vários caminhos ou linhas de comunicação, cada qual capaz de transmitir sinais que representam um único dígito binário, 0 ou 1. Um sistema de computação contém diversos barramentos que fornecem caminho de comunicação entre seus componentes.

8 Estrutura de Barramentos
As linhas de um barramento podem ser classificadas em três grupos funcionais: Dados: contém tipicamente 16 ou 32 linhas; o número de linhas é conhecido como largura do barramento de dados. Como cada linha pode transmitir 1 bit por vez, o número de linhas determina quantos bits podem ser transferidos de uma vez. Parâmetro importante para o desempenho do sistema.

9 Estrutura de Barramentos
Endereço: usadas para designar a fonte ou o destino dos dados transferidos pelo barramento de dados. Quando o processador deseja ler uma palavra da memória, ele coloca o endereço da palavra desejada nas linhas de endereço. A largura do barramento de endereço determina a capacidade máxima da memória. Em geral, linhas de endereço são utilizadas para endereçar portas de E/S.

10 Estrutura de Barramentos
Controle: são utilizadas para controlar o acesso e a utilização das linhas de dados e de endereço. Como as linhas de dados e de endereço são utilizadas por todos os componentes, deve existir uma maneira de controlar sua utilização. Os sinais de controle são utilizados tanto para transmitir comandos quanto para informações de temporização entre os módulos do sistema.

11 Linhas de Controle Típicas
Escrita na Memória Leitura da Memória Escrita em porta de E/S Leitura de porta de E/S Confirmação (ACK) de transferência Requisição do barramento Requisição de Interrupção Relógio Inicialização (reset)

12 Operação Quando um módulo do sistema deseja enviar dados para outro, ele deve: obter o controle do barramento transferir os dados por meio do barramento Quando um módulo do sistema deseja requisitar dados de outro, ele deve: transferir uma requisição para o outro módulo por meio das linhas de endereço e de controle apropriadas e aguardar o envio.

13 Configuração de Barramento
MP Processador Cache Barramento do Sistema Controlador de Vídeo Rede Local SCSI Barramento de Alta velocidade Modem Interface Serial Interface Barramento de Expansão

14 Parâmetros Básicos Temporização Tipo de barramento:
Dedicado Multiplexado Métodos de Arbitração Centralizado Distribuído Temporização Síncrona Assíncrona

15 Parâmetros Básicos Largura do barramento:
Endereço Dados Tipo de Transferência de dados Leitura Escrita Leitura-modificação-escrita Leitura-após-escrita Em bloco

16 Tipos Dedicado: tem uma função fixa ou é associado a um subconjunto de componentes físicos de um computador Ex: linhas distintas para dados e endereços Multiplexação no tempo: usa uma linha de controle de Endereço Válido. No início de uma transferência de dados, o endereço é colocado no barramento e a linha de endereço válido é ativada. Cada módulo do sistema tem um determinado período de tempo para ver se os dados são endereçados a ele e copiar o endereço. O endereço é removido do barramento e as mesmas linhas são utilizadas para transferência dos dados.

17 Métodos de Arbitração Como apenas uma unidade pode realizar uma transmissão por meio do barramento de cada vez, é necessária a arbitração Centralizado: um único dispositivo, controlador de barramento, é responsável por alocar tempo de utilização do barramento a cada módulo do sistema. Distribuído: não existe controlador central. Cada módulo contém uma lógica de controle de acesso e os módulos agem de forma conjunta para compartilhar o barramento

18 Temporização Modo pelo qual os eventos nesse barramento são coordenados. Síncrona: a ocorrência de eventos é determinada por um relógio. O barramento inclui uma linha de relógio pela qual transmite uma seqüência de 1s e 0s de igual duração. Uma transmissão de um 1 e um 0 é denominado ciclo do relógio. Todos os dispositivos conectados ao barramento podem ler a linha de relógio e todos os eventos no barramento devem começar no início de um ciclo do relógio.

19 Temporização Assíncrona: a ocorrência de um evento no barramento depende da ocorrência de um evento ocorrido anteriormente. O esquema síncrono é mais simples de implementar e testar mas é menos flexível. Em um esquema assíncrono, tantos dispositivos lentos quanto rápidos podem compartilhar o uso do mesmo barramento.

20 PCI Peripheral Component Interconnect.
Desenvolvido pela Intel em Pentium. Especificação de Domínio público. 64 linhas de dados com 66 MHz de clock Taxa bruta de transferência:s Uso em subsistemas de E/S alta velocidade. Barramento Multiplexado no tempo Temporização Síncrona Arbitragem Centralizada

21 E/S Programada Interrupção DMA - Acesso direto à Memória

22 Programada Os dados são transferidos diretamente entre o processador e o módulo de E/S. Processador tem através da execução de um programa controle direto da operação E/S - detecção do estado do dispositivo, envio de comandos de leitura e escrita e a transferência dos dados. Quando o processador envia um comando para o módulo E/S ele tem que esperar até essa operação seja completada.

23 Interrupção O processador envia um comando de E/S e continua a executar outras instruções. Quando o módulo de E/S tiver terminado de executar o seu trabalho ele fará a interrupção do trabalho do processador para disponibilizar a informação requerida. Nesses dois modelos, programada e por interrupção, o processador é responsável por obter dados da MP (operação de saída) e armazenar dados na MP (oper. de entrada)

24 DMA Os dois tipos de E/S apresentados requerem uma ativa intervenção do processador para transferir dados entre a memória e o módulo de E/S. Toda transferência passa pelo processador, assim existem duas desvantagens inerentes: A taxa de transferência é limitada pela velocidade com que o processador pode testar e servir o dispositivo. O processador tem que gerenciar a transferência de dados de E/S

25 DMA A técnica DMA envolve um módulo adicional no barramento do sistema - Controlador DMA Imita o processador - Controla o sistema do Processador. Necessário para que o módulo possa transferir dados de e para a MP através do barramento do sistema. Pode usar o barramento quando este não está sendo usado pelo processador ou forçar o processador a suspender a sua operação.

26 DMA Quando o processador deseja ler ou escrever um bloco de dados ele envia comando ao módulo DMA: Tipo de operação: escrita ou leitura - Linha de controle de leitura ou escrita Endereço do dispositivo de E/S - enviado pela linha de dados. Endereço da MP para início de leitura ou escrita, enviado pela linha de dados e armazenado pelo DMA no seu registrador de endereços. Número de palavras a serem lidas ou escritas - enviado pela linha de dados e armazenado no Contador de dados

27 DMA Depois de enviar o comando, a execução da E/S é delegada ao Módulo DMA. A transferência é feita feita palavra por palavra sem interferência do processador Quando termina a transferência o módulo DMA envia um sinal de interrupção ao processador

28 Desempenho E/S Tempo de Resposta Throughput
Tempo que uma tarefa demora para ser realizada desde que chegou ao sistema. Throughput Número médio de tarefas que são realizadas num determinado intervalo de tempo.

29 Desempenho E/S Sistema em Equilíbrio - Lei de Little
entrada saída Sistema em Equilíbrio - Lei de Little Nº médio de tarefas no sistema = Taxa de Chegada * Tempo médio de resposta

30 Desempenho E/S Abrindo a caixa preta: Fila entrada saída Servidor
Tempo Servidor = Ts – tempo médio para servir uma tarefa. 1/Ts = Taxa média de Serviço Tempo do Sistema = Tsis = Tfila + Ts Taxa de Chegada - Tx =Número médio de Tarefas que chegam por segundo Comprimento do Servidor= Cs – número médio de tarefas em serviço Comprimento da Fila= Cfila – número médio de tarefas na fila Comprimento do Sistema- Csis= Cfila + Cs

31 Desempenho E/S Utilizaçao do Servidor- Us= Tx . Ts ( número entre 0 e 1) Exercício 47: Suponha que um sistema de E/S com um único disco receba em média 50 solicitações de E/S por segundo. Suponha que o tempo médio para que o disco atenda uma solicitação de E/S seja de 10ms. Qual a utilização deste disco?

32 Desempenho E/S Suponha que a forma de entrega de uma tarefa da fila para o servidor seja FIFO – firt in first out – o tempo médio de espera de uma tarefa na fila seria de: Tfila= Cfila . Ts + Tempo médio para completar a tarefa que está sendo realizada quando chega uma nova tarefa Este último termo deve ser representado por um evento aleatório. Uma variável é aleatória se não é possível saber exatamente qual o seu próximo valor mas é possível conhecer a probabilidade de todos os valores que esta varável pode assumir. Para caracterizar uma variável aleatória necessitamos de um valor médio e alguma medida de dispersão.

33 Desempenho E/S Variável Tempo
Tempo Médio Aritmétido – TMA= T1.f1 + T2.f Tn.fn Onde Ti é o tempo para realização da Tarefa i e fi é a freqüência que ocorre a Tarefa i. Variância= (f1.T12 + f2.T fn.Tn2) – TMA2 Coeficiente de Variância – C = Desvio padrão / TMA Tempo Médio de Serviço Residual - TMSR = ½ TMA . (1+ C2) (aleatoriedade)

34 Desempenho E/S Como calcular C. Por sorte a distribuição exponencial se adequa bem a chegada de tarefas para um servidor quando o histórico de eventos não tem influência sobre a probabilidade do evento que chegará agora; na distribuição exponencial o valor de C é 1. Assim: Tfila= Cfila . Ts + Us . TMSR = Cfila . Ts + Us .(½ Ts . (1+12) = Cfila . Ts + Us.Ts Tfila= (Tx . Tfila) . Ts + Us.Ts = (Tx.Ts).Tfila + Us.Ts = Us.Tfila + Us.Ts reorganizando - Tfila= Ts . Us/ (1-Us) Da mesma forma podemos concluir que: Cfila= Us2 / (1-Us)

35 Desempenho E/S Exercício 48: Para o disco do exercício 47 qual o número médio de solicitações de E/S na fila? Considerações: - O sistema está em equilíbrio - As solicitações de serviço estão distribuídas exponencialmente - O servidor pode iniciar a próxima tarefa assim que terminar a anterior - Não há limite para o comprimento de fila - O número de fontes de solicitação é ilimitado. - Há um único servidor.

36 Desempenho E/S Exercício P: Suponha que um processador envie 40 operações de E/S de disco por segundo e que estas solicitações estejam distribuídas exponencialmente. O tempo médio de atendimento destas operações pelo disco é de 20 ms. Responda: 1-) Em média qual a utilização deste disco. 2-) Qual o tempo médio gasto na fila? 3-) Qual o tempo médio de resposta?

37 Desempenho E/S É comum a existência de um número maior de servidores. Neste caso as fórmulas utilizadas anteriormente sofrem alterações: Utilizaçãoservidor = Taxa de Chegada . Tempo servidor Número de Servidores Comprimento fila = Taxa de chegada . Tempo fila Tempo fila= Tempo servidor P tarefas > Número servidores Número servidores . (1-Utilização servidor)


Carregar ppt "Agenda Entrada e Saída."

Apresentações semelhantes


Anúncios Google