Entrada/Saída

                                   Cristiano Pires Martins




quinta-feira, 2 de junho de 2011                             1
Introdução
      }   Uma das principais funções de um SO é controlar todos
           os dispositivos de E/S de um computador;
      }   Deve fornecer uma interface amigável entre os
           dispositivos e o restante do sistema;
      }   O código de E/S representa uma fração significativa de
           todo o SO.




quinta-feira, 2 de junho de 2011                                    2
Dispositivos de E/S
      }   Dispositivos de Bloco
           }   Armazena informação em blocos de tamanho fixo, cada um com seu
                próprio endereço;
           }   Tamanho: 512 bytes a 32.768 bytes;
           }   Cada bloco pode ser lido e escrito independentemente de todos os
                outros.
           }   Ex.: discos.
      }   Dispositivos de Caractere
           }   Envia ou recebe um fluxo de caractere, sem considerar qualquer
                estrutura de blocos;
           }   Não é endereçável por bloco e não dispõe de qualquer operação de
                posicionamento;
           }   Ex.: Impressoras, interfaces de redes, mouses, e a maior parte de outros
                dispositivos.
      }   Dispositivos que não se enquadram
           }   Relógio (clock) e Vídeo mapeado em memória.



quinta-feira, 2 de junho de 2011                                                           3
Princípios do Hardware de E/S




    Taxas de dados típicas de dispositivos, redes e barramentos
                                                4

quinta-feira, 2 de junho de 2011                                  4
Controladores de Dispositivos

         }   Componentes de dispositivos de E/S
              }   mecânico
              }   eletrônico
         }   O componente eletrônico é o controlador do
              dispositivo
              }   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 necessária
              }   tornar o bloco disponível para ser copiado para a
                   memória principal

                                                         5

quinta-feira, 2 de junho de 2011                                       5
quinta-feira, 2 de junho de 2011   6
E/S mapeada na memória (1)

             }       Cada controlador tem alguns registradores
                      usados para a comunicação com a CPU;
             }       Por meio de escrita e leitura nesses
                      registradores, o SO comanda o dispositivo;
             }       Com a leitura ele descobre o estado do
                      dispositivo;
             }       Os dispositivos também tem um buffer de
                      dados que o SO pode ler ou escrever;




                                                      7

quinta-feira, 2 de junho de 2011                                   7
E/S mapeada na memória (2)




                 (a) Arquitetura com barramento único
                 (b) Arquitetura com barramento dual
                                                8

quinta-feira, 2 de junho de 2011                        8
Comparação de Arquiteturas Dual Core
         Arquitetura convencional                       Arquitetura AMD64


                                                     Core 0                       Core 1

                                                       Cache
                                                     Cache                       Cache
                                                                                 Cache
                                                     Core 0 0
                                                       Core                      Core 1
                                                                                 Core 1




                                                                         Controller
                                                     CROSSBAR




                                                                         Memory
                      800MHz FSB
                                                        Core 0                        Core 1
                      bottleneck

                                                                                  Controlador de
                                                     HyperTransport
                                                                                  Memória



                                           Link                                   Controlador de memória na
                              800MHz FSB   HyperTransport de                      velocidade da CPU
                                           até 2.0GHz


                          I/O                                  I/O
                          Chipset                              Chipset




                I/O                               I/O




quinta-feira, 2 de junho de 2011                                                                              9
Acesso Direto à Memória (DMA)




                Operação de uma transferência com DMA
                                             10

quinta-feira, 2 de junho de 2011                        10
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



                                                                   11

quinta-feira, 2 de junho de 2011                                                         11
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
                                                         12

quinta-feira, 2 de junho de 2011                                        12
Software de E/S Independente de
    Dispositivo (2)




         (a) Sem uma interface-padrão do driver
         (b) Com uma interface-padrão do driver

                                              13

quinta-feira, 2 de junho de 2011                   13
Discos
         Hardware do Disco




    Parâmetros de disco para o disco flexível original do
    IBM PC e o disco rígido da Western Digital WD 18300
                                          14

quinta-feira, 2 de junho de 2011                        14
Hardware do Disco




     }   Geometria física de um disco com duas zonas
     }   Uma possível geometria virtual para esse disco
                                             15

quinta-feira, 2 de junho de 2011                           15
Hardware do Disco




       }   RAIDs níveis 0 a 2
       }   Discos de segurança e de paridade são os sombreados
                                                 16

quinta-feira, 2 de junho de 2011                                  16
Hardware do Disco




         }   RAIDs níveis 3 a 5
         }   Discos de segurança e de paridade são os sombreados
                                                          17

quinta-feira, 2 de junho de 2011                                    17
Hardware do Disco




           Estrutura de gravação de um CD ou CD-ROM
                                          18

quinta-feira, 2 de junho de 2011                      18
Hardware do Disco




          }   Secção transversal de um disco CD-R e laser
               }   sem escala
          }   CD-ROM prateado tem estrutura similar
               }   sem camada de tinta
               }   com camada de alumínio em vez de ouro
                                                     19

quinta-feira, 2 de junho de 2011                             19
Hardware do Disco




                Disco DVD com lado duplo e camada dupla

                                             20

quinta-feira, 2 de junho de 2011                          20
Formatação de Disco




                 Uma ilustração da torção cilíndrica
                                              21

quinta-feira, 2 de junho de 2011                       21
Formatação de Disco




                            a)     Sem entrelaçamento
                            b)     Entrelaçamento simples
                            c)     Entrelaçamento duplo
                                                            22

quinta-feira, 2 de junho de 2011                                 22
Algoritmos de Escalonamento
de Braço de Disco

   }       Tempo necessário para ler ou escrever um bloco de
            disco é determinado por 3 fatores
                1.     tempo de posicionamento
                2.     atraso de rotação
                3.     tempo de transferência do dado
   }       Tempo de posicionamento domina
   }       Checagem de erro é feita por controladores



                                                23

quinta-feira, 2 de junho de 2011                                23
Algoritmos de Escalonamento
de Braço de Disco




            Algoritmo de escalonamento de disco Posicionamento
                           Mais Curto Primeiro (SSF)
                                                 24

quinta-feira, 2 de junho de 2011                                 24
Algoritmos de Escalonamento
de Braço de Disco




      O algoritmo do elevador para o escalonamento das
                      requisições do disco
                                         25

quinta-feira, 2 de junho de 2011                         25
Tratamento de Erro




        a)     Uma trilha de disco com um setor defeituoso
        b)     Substituindo um setor reserva por um setor defeituoso
        c)     Deslocando todos os setores para pular o setor
               defeituoso
                                                     26

quinta-feira, 2 de junho de 2011                                       26
Hardware de Vídeo




         Vídeos mapeados na memória
         } driver escreve diretamente na RAM de vídeo
            do monitor
                                            27

quinta-feira, 2 de junho de 2011                         27

Aula 05-entrada e-saida

  • 1.
    Entrada/Saída Cristiano Pires Martins quinta-feira, 2 de junho de 2011 1
  • 2.
    Introdução } Uma das principais funções de um SO é controlar todos os dispositivos de E/S de um computador; } Deve fornecer uma interface amigável entre os dispositivos e o restante do sistema; } O código de E/S representa uma fração significativa de todo o SO. quinta-feira, 2 de junho de 2011 2
  • 3.
    Dispositivos de E/S } Dispositivos de Bloco } Armazena informação em blocos de tamanho fixo, cada um com seu próprio endereço; } Tamanho: 512 bytes a 32.768 bytes; } Cada bloco pode ser lido e escrito independentemente de todos os outros. } Ex.: discos. } Dispositivos de Caractere } Envia ou recebe um fluxo de caractere, sem considerar qualquer estrutura de blocos; } Não é endereçável por bloco e não dispõe de qualquer operação de posicionamento; } Ex.: Impressoras, interfaces de redes, mouses, e a maior parte de outros dispositivos. } Dispositivos que não se enquadram } Relógio (clock) e Vídeo mapeado em memória. quinta-feira, 2 de junho de 2011 3
  • 4.
    Princípios do Hardwarede E/S Taxas de dados típicas de dispositivos, redes e barramentos 4 quinta-feira, 2 de junho de 2011 4
  • 5.
    Controladores de Dispositivos } Componentes de dispositivos de E/S } mecânico } eletrônico } O componente eletrônico é o controlador do dispositivo } 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 necessária } tornar o bloco disponível para ser copiado para a memória principal 5 quinta-feira, 2 de junho de 2011 5
  • 6.
    quinta-feira, 2 dejunho de 2011 6
  • 7.
    E/S mapeada namemória (1) } Cada controlador tem alguns registradores usados para a comunicação com a CPU; } Por meio de escrita e leitura nesses registradores, o SO comanda o dispositivo; } Com a leitura ele descobre o estado do dispositivo; } Os dispositivos também tem um buffer de dados que o SO pode ler ou escrever; 7 quinta-feira, 2 de junho de 2011 7
  • 8.
    E/S mapeada namemória (2) (a) Arquitetura com barramento único (b) Arquitetura com barramento dual 8 quinta-feira, 2 de junho de 2011 8
  • 9.
    Comparação de ArquiteturasDual Core Arquitetura convencional Arquitetura AMD64 Core 0 Core 1 Cache Cache Cache Cache Core 0 0 Core Core 1 Core 1 Controller CROSSBAR Memory 800MHz FSB Core 0 Core 1 bottleneck Controlador de HyperTransport Memória Link Controlador de memória na 800MHz FSB HyperTransport de velocidade da CPU até 2.0GHz I/O I/O Chipset Chipset I/O I/O quinta-feira, 2 de junho de 2011 9
  • 10.
    Acesso Direto àMemória (DMA) Operação de uma transferência com DMA 10 quinta-feira, 2 de junho de 2011 10
  • 11.
    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 11 quinta-feira, 2 de junho de 2011 11
  • 12.
    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 12 quinta-feira, 2 de junho de 2011 12
  • 13.
    Software de E/SIndependente de Dispositivo (2) (a) Sem uma interface-padrão do driver (b) Com uma interface-padrão do driver 13 quinta-feira, 2 de junho de 2011 13
  • 14.
    Discos Hardware do Disco Parâmetros de disco para o disco flexível original do IBM PC e o disco rígido da Western Digital WD 18300 14 quinta-feira, 2 de junho de 2011 14
  • 15.
    Hardware do Disco } Geometria física de um disco com duas zonas } Uma possível geometria virtual para esse disco 15 quinta-feira, 2 de junho de 2011 15
  • 16.
    Hardware do Disco } RAIDs níveis 0 a 2 } Discos de segurança e de paridade são os sombreados 16 quinta-feira, 2 de junho de 2011 16
  • 17.
    Hardware do Disco } RAIDs níveis 3 a 5 } Discos de segurança e de paridade são os sombreados 17 quinta-feira, 2 de junho de 2011 17
  • 18.
    Hardware do Disco Estrutura de gravação de um CD ou CD-ROM 18 quinta-feira, 2 de junho de 2011 18
  • 19.
    Hardware do Disco } Secção transversal de um disco CD-R e laser } sem escala } CD-ROM prateado tem estrutura similar } sem camada de tinta } com camada de alumínio em vez de ouro 19 quinta-feira, 2 de junho de 2011 19
  • 20.
    Hardware do Disco Disco DVD com lado duplo e camada dupla 20 quinta-feira, 2 de junho de 2011 20
  • 21.
    Formatação de Disco Uma ilustração da torção cilíndrica 21 quinta-feira, 2 de junho de 2011 21
  • 22.
    Formatação de Disco a) Sem entrelaçamento b) Entrelaçamento simples c) Entrelaçamento duplo 22 quinta-feira, 2 de junho de 2011 22
  • 23.
    Algoritmos de Escalonamento deBraço de Disco } Tempo necessário para ler ou escrever um bloco de disco é determinado por 3 fatores 1. tempo de posicionamento 2. atraso de rotação 3. tempo de transferência do dado } Tempo de posicionamento domina } Checagem de erro é feita por controladores 23 quinta-feira, 2 de junho de 2011 23
  • 24.
    Algoritmos de Escalonamento deBraço de Disco Algoritmo de escalonamento de disco Posicionamento Mais Curto Primeiro (SSF) 24 quinta-feira, 2 de junho de 2011 24
  • 25.
    Algoritmos de Escalonamento deBraço de Disco O algoritmo do elevador para o escalonamento das requisições do disco 25 quinta-feira, 2 de junho de 2011 25
  • 26.
    Tratamento de Erro a) Uma trilha de disco com um setor defeituoso b) Substituindo um setor reserva por um setor defeituoso c) Deslocando todos os setores para pular o setor defeituoso 26 quinta-feira, 2 de junho de 2011 26
  • 27.
    Hardware de Vídeo Vídeos mapeados na memória } driver escreve diretamente na RAM de vídeo do monitor 27 quinta-feira, 2 de junho de 2011 27