Sop 03 Entrada Saida

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Sop 03 Entrada Saida as PDF for free.

More details

  • Words: 2,824
  • Pages: 56
Dispositivos de E/S Sistemas Operacionais (SOPBCC) De: Andrew S. Tanenbaum Tradução: Ronaldo A.L. Gonçalves Luís A. Consulado

Responsável pela disciplina: Prof. Dr. Maurício Aronne Pillon Curso de Ciência da Computação

1 Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Entrada/Saída • Princípios do hardware de E/S • Princípios do software de E/S • Camadas do software de E/S • Discos Magnéticos • Escalonamento de Disco

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

2

Princípios de Hardware

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

3

Princípios do Hardware de E/S • Dispositivos são catalogados em: – Orientados a blocos → armazena as informações em  blocos de tamanhos fixos (512 a 32 768 bytes); – Orientados a caracteres → envia e recebe fluxo de  caracteres sem considerar a estrutura de blocos; – Relógios?! Não são endereçáveis por blocos nem  enviam ou recebem fluxos de caracteres.  Simplesmente causam interrupções.

• Existe uma ampla variação de velocidades  entre os dispositivos de E/S; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

4

Princípios do Hardware de E/S

Taxas de dados típicas de dispositivos, redes e barramentos Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

5

Controladores de Dispositivos • Componentes de dispositivos de E/S – mecânico  – eletrônico

• O componente eletrônico é o controlador do  dispositivo (adaptador) – pode ser capaz de tratar múltiplos dispositivos

• Tarefas do controlador – converter fluxo serial de bits em bloco de bytes  – executar toda correção de erro (ECC) necessária – tornar o bloco disponível para ser copiado para a  memória principal Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

6

E/S Mapeada na Memória • Cada  controlador  tem  alguns  registradores  usados  para  comunicação com a CPU; • Por  meio  da  escrita  nesses  registradores  que  o  sistema  operacional comanda o dispositivo; • A  partir  da  leitura  desses  registradores  que  o  sistema  operacional pode descobrir o estado do dispositivo; • Como  a  CPU  se  comunica  com  os  registradores  dos  controladores  e  com  os  buffers  de  dados  dos  dispositivos?

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

7

E/S mapeada na memória (1)

a) Espaços de memória e E/S separados b) E/S mapeada na memória c) Híbrido Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

8

E/S Mapeada na memória • Vantagens: – Registradores de controles são apenas variáveis  na memória e podem ser endereçadas em C; – Não é necessário mecanismo de proteção  especial para impedir o acesso a processos  usuários. – Instruções que permitam referenciar a memória  podem ser usadas para referenciar registradores  de controle; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

9

E/S Mapeada em memória • Desvantagens: – Requer o uso de código assembly para  ler/escrever nos registradores; – Custo adicional ao controle de E/S devido ao uso  de código em assembly; – Uso de cache para as palavras de memória é  desastroso; – Espaço de endereçamento único implica que os  módulos de memória e dispositivos devem  verificar todas as referências de memórias; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

10

Acesso direto a memória • Necessidade de endereçar os controladores dos  dispositivos para poder trocar dados; • A CPU pode solicitar ao controlador byte a byte  (grande desperdício de tempo); • DMA – o controlador tem acesso ao barramento de  sistema independente da CPU. – Registrador de endereço de memória – Registrador contador de bytes – Registradores (um ou mais) de controle Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

11

Acesso direto a memória • Sem o auxílio do DMA – Controlador efetua a leitura do bloco (serialmente,  bit a bit); – Calcula o soma de verificação (verificação de erros); – Causa a interrupção; – Sistema operacional pode ler o bloco do buffer do  controlador (um byte ou uma palavra de cada vez); – Armazena na memória principal;

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

12

Acesso direta a memória • Com o DMA ativo: – (1) CPU programa o controlador de DMA (o que  transferir e o destino destes blocos de dados); – (1) CPU ordena ao disco o carregamento de dados  para o seu buffer interno e verificação da soma; – (1) DMA é chamado quando os dados encontram­se  no buffer e são válidos; – (2) DMA solicita uma requisição de leitura para o  disco; – (3) Disco transfere os dados para a memória Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

13

Acesso direto à memória • Com o DMA ativo: – (4)  Controlador  de  disco  envia  sinal  de  confirmação para o controlador de DMA; – Quando  a  transferência  é  finalizada  o  DMA interrompe a CPU. • Os controladores de DMA variam, alguns  atendem uma única solicitação por vez,  outros múltiplas solicitações simultâneas. Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

14

Acesso Direto à Memória (DMA)

Operação de uma transferência com DMA Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

15

Interrupções revisadas • Funcionamento de interrupções: – Quando um dispositivo de E/S finaliza seu  trabalho, ele gera uma interrupção; – Isto é feito através do envio de um sinal pela  linha de barramento à qual está associado; – O sinal é detectado pelo chip controlador de  interrupção localizado na placa­mãe; – O sinal de interrupção faz com que a CPU pare  de executar a tarefa atual e trate da interrupção. Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

16

Interrupções Revisitadas

Como ocorre uma interrupção. Conexões entre  dispositivos e controlador de interrupção usam linhas  de interrupção no barramento em vez de fios  dedicados Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

17

Princípios do Software de E/S

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

18

Objetivos do Software de E/S • • • •

Tornar o acesso independente de dispositivo; Tratamento de erros; Tipo de transferência (síncrona/assíncrona); Controle do buffer temporário;

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

19

Princípios do Software de E/S Objetivos do Software de E/S (1) • Independência de dispositivo – Programas podem acessar qualquer dispositivo  de E/S sem especificar previamente qual  (disquete, disco rígido ou CD­ROM)

• Nomeação uniforme – Nome de um arquivo ou dispositivo pode ser uma  cadeia de caracteres ou um número inteiro que é  independente do dispositivo

• Tratamento de erro – Trata o mais próximo possível do hardware Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

20

Objetivos do Software de E/S (2) • Transferências Síncronas vs. Assíncronas – transferências bloqueantes vs. orientadas a  interrupção – utilização de buffer para armazenamento  temporário – dados provenientes de um dispositivo muitas  vezes não podem ser armazenados diretamente  em seu destino final

• Dispositivos Compartilháveis vs. Dedicados – discos são compartilháveis – unidades de fita não são Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

21

Técnicas para realização de E/S • E/S programada • E/S orientada a interrupções • Acesso direto a memória

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

22

E/S Programada • CPU controla todas as etapas; • Um usuário deseja imprimir a cadeia de  caracteres ABCDEFGH; – O buffer é transferido do espaço usuário para o  espaço núcleo; – O sistema operacional passa a enviar (caractere à  caractere) a cadeia ao espaço de memória do  dispositivo (E/S mapeada na memória);

• Espera ociosa (desperdício da CPU); Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

23

E/S Programada (1)

Passos da impressão de uma cadeia de caracteres Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

24

E/S Programada (2)

Escrita de uma cadeia de caracteres para a  impressora usando E/S programada Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

25

E/S orientada à interrupção • Considere uma impressora que não armazena os  caracteres, imprime­os a medida que eles chegam; • Objetivo excluir o tempo de espera ociosa da CPU; – O buffer do usuário é copiado para o espaço de  endereçamento do núcleo; – A CPU envia um caractere e faz um chaveamento de  contexto; – Assim que a impressora finalizar o processo de  escrita, ela gera uma interrupção; • Desvantagem: a ocorrência da interrupção para cada  caractere; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

26

E/S usando DMA • Funcionamento: o controlador DMA  responsabiliza­se pelo envio (caractere a  caractere) ao dispositivo; • Vantagem: reduzir o número de interrupções  de um por caractere para um por buffer;

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

27

Camada do Software de E/S

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

28

Camadas do Software de E/S

Camadas do sistema de software de E/S Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

29

Tratadores de Interrupção (1) •

As interrupções devem ser escondidas  o máximo possível – uma forma de fazer isso é bloqueando o  driver que iniciou uma operação de E/S  até que uma interrupção notifique que a E/ S foi completada



Rotina de tratamento de interrupção  cumpre sua tarefa – e então desbloqueia o driver que a  chamou Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

30

Tratadores de Interrupção (2) •

Passos que devem ser executados em software  depois da interrupção ter sido concluída

2.

salva registradores que ainda não foram salvos pelo hardware  de interrupção 3. estabelece contexto para rotina de tratamento de interrupção 4. estabelece uma pilha para a rotina de tratamento de  interrupção 5. sinaliza o controlador de interrupção, reabilita as interrupções 6. copia os registradores de onde eles foram salvos 7. executa rotina de tratamento de interrupção 8. escolhe o próximo processo a executar 9. estabelece o contexto da MMU para o próximo processo a  executar 10. carrega os registradores do novo processo 11. começa a executar o novo processo Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

31

Drivers dos dispositivos • Cada controlador possui registradores para  comandos e status; • O número de registradores variam de dispositivo  para dispositivo; • Cada dispositivo de E/S precisa de um código  específico de tratamento (driver do dispositivo); • Em geral, os drivers são escritos pelo fabricante; • É desejável que um driver trate de uma classe de  dispositivos; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

32

Drivers dos dispositivos • Duas grandes categorias: – Dispositivos de bloco: discos ...; – Dispositivos de caractere: teclado, impressora ...

• Em geral, os sistemas operacionais definem uma  interface padrão para cada categoria. • Alguns funções de um driver: – Tratar requisições abstratas de leitura ou gravação  independente do dispositivo; – Iniciar o dispositivo; – Tratar necessidade de energia – Tratar eventos; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

33

Drivers dos Dispositivos

• Posição lógica dos drivers dos dispositivos • A comunicação entre os drivers e os controladores  de dispositivos é feita por meio do barramento Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

34

Software de E/S Independente  de Dispositivo (1) Interface uniforme para os drivers dos dispositivos Armazenamento em buffer Relatório dos erros Alocação e liberação de dispositivos dedicados Fornecimento de tamanho de bloco independente  de dispositivo

Funções do software de E/S independente de  dispositivo Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

35

Software de E/S Independente de  Dispositivo (2)

(a) Sem uma interface­padrão do driver (b) Com uma interface­padrão do driver Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

36

Software de E/S Independente de  Dispositivo (3)

a) b) c) d)

Entrada sem utilização de buffer Utilização de buffer no espaço do usuário Utilização de buffer no núcleo seguido de cópia para o   espaço do usuário Utilização de buffer duplo no núcleo Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

37

Relatório dos erros • Erros de programação: – Escrever em um dispositivo de entrada (teclado); – Fornecimento de endereços inválidos; – Atitude a ser tomada, retornar o código (tipo) de  erro ocorrido ao processo envolvido;

• Erros reais de E/S: – Tentativa de escrita em um bloco danificado; – Atitude deve ser decidida pelo driver. Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

38

Alocação e liberação de dispositivos  dedicados • Alguns dispositivos, tais como gravadores de  CD/DVD, podem ser usados por apenas um  único processo por vez; • Associar chamadas de sistemas diretamente  ao dispositivo (open);

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

39

Software de E/S no Espaço do  Usuário

   Camadas do sistema de E/S e as principais  funções de cada camada Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

40

Discos Magnéticos

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

41

Discos magnéticos • Leituras e escritas igualmente rápidas; • Adequados ao uso de memórias secundárias  (paginação, segmentação, etc); • Organização de discos: – Cilindros; – Trilhas; – Setores;

• Pode ou não possuir um microcontrolador no  próprio disco. Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

42

Discos Hardware do Disco (1)

• Posicionamento (7X) X capacidade (50milX); • Progresso expressivo na densidade de bits das  superfícies de gravação; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

43

Desempenho dos Discos • Desempenho dos processadores (2X a cada 18  meses) avançam mais rapidamente do que o  dos discos; • Tempo de posicionamento nos discos: – Década de 70  ­ de 50 a 100ms; – Atuais ­ ~10ms;

• Como amenizar este problema? Paralelizando  as tarefas. Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

44

RAID • E/S Paralela, melhor desempenho e confiança; • RAID (Redundant array of inexpensive/  Independent disks) • Idéia de base:  – Instalar uma caixa cheia de discos próxima ao  computador; – Substituir a controladora padrão por uma mais  complexa, a controladora RAID; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

45

Níveis de RAID • RAID 0: o disco é dividido em unidade de distribuição  (strips); • RAID 1: espelhamento (mirroring); • RAID 2: sincronizados (trilhas e setores posicionados  no mesmo ponto). Com código de correção de erros  (Código de Hamming); • RAID 3: semelhante ao RAID 2, porém com paridade; • RAID 4: independente (não sincronizado). Paridade por  faixa; • RAID 5: semelhante ao RAID4, porém com a paridade  distribuída entre os discos; Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

46

Hardware do Disco (3)

• RAIDs níveis 0 a 2 • Discos de segurança e de paridade são os sombreados Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

47

Hardware do Disco (4)

• RAIDs níveis 3 a 5 • Discos de segurança e de paridade são os sombreados Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

48

Controle de Erros • Princípio – Inclusão de informações redundantes junto com  cada bloco de dados gravados. • Identificação de um erro • Deduzir o conteúdo que deveria estar escrito

mensagem n bits

redundância r bits

m bits = n bits + r bits  ­> Palavra de Código 

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Correção de erros • Código de Hamming – Bits que são potência de 2 são bits de  verificação • 1,2,4,8,16 etc

– Os demais bits são preenchidos com os m bits  de dados. – Como descobrir quais são os bits de verificação  de  um bit de dados? • Bit de dados 11 = 1 + 2 + 8 • Bit de dados 29 = 1 + 4 + 8 + 16 Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Correção de um único erro Bits de dados Bits de teste Porcentagem de aumento 8 4 50 16

5

31,25

32

6

18,75

64

7

10,94

128

8

6,25

256

9

3,52

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Correção de Erros (Exemplo) – Palavra de 8bits = m1 ... m8 – Palavra de 12bits c/ código de hammig = x1 ... x12 – Bits de dados:  • • • • • • • •

x3=m1; x5=m2; x6=m3; x7=m4; x9=m5; x10=m6; x11=m7; x12=m8;

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Correção de erro (cont) – Bits de verificação: – – – – – – – –

x1 = x3 + x5 + x7 + x9 + x11 x2 = x3 + x6 + x7 + x10 + x11 x4 = x5 + x6 + x7 + x12 x8 = x9 + x10 + x11+ x12 k1 = y1 + y3 + y5 + y7 + y9 + y11 k2 = y2 + y3 + y6 + y7 + y10 + y11 k3 = y4 + y5 + y6 + y7 + y12 k4 = y8 + y9 + y10 + y11 + y12 » Se k4 k3 k2 k1 for zero não há erro » Senão bit representado por k4 k3 k2 k1 está incorreto!  » O sinal + representa a operação ou exclusivo.

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Escalonamento de braço de disco • FCFS (First Come First Served) • SSTF (Shortest Seek Time First) • SCAN (algoritmo do elevador)

Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

Algoritmos de Escalonamento de Braço de Disco (2)

Algoritmo de escalonamento de disco Posicionamento  Mais Curto Primeiro (SSF) Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

55

Algoritmos de Escalonamento  de Braço de Disco (3)

O algoritmo do elevador para o escalonamento das  requisições do disco Pearson Education                                                                         Sistemas Operacionais Modernos – 2ª Edição

56

Related Documents

Sop 03 Entrada Saida
November 2019 8
Saida Campo
November 2019 12
Sop 03
November 2019 2
Entrada
June 2020 25
Entrada
May 2020 20
Entrada
May 2020 29