Dispositivos [Entrada E SaíDa]

27.274 visualizações

Publicada em

Developed in www.inforium.com.br
Bacharelado em Sistemas de Informação
Brasil - MG
Sergeduardo

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
27.274
No SlideShare
0
A partir de incorporações
0
Número de incorporações
193
Ações
Compartilhamentos
0
Downloads
384
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Dispositivos [Entrada E SaíDa]

  1. 1. Sistemas Operacionais Dispositivos de Entrada e Saída
  2. 2. Princípios básicos de software de entrada e saída. <ul><li>Software de E/S </li></ul><ul><ul><li>Complexo </li></ul></ul><ul><ul><li>Padronizar as rotinas de entrada e saída. </li></ul></ul><ul><ul><li>Tratar as formas de acesso aos periféricos </li></ul></ul><ul><ul><li>É formado por ‘4’ camadas. </li></ul></ul><ul><li>Tais características permitem a inclusão de novos dispositivos sem necessidade de alterar a interface com o usuário final. </li></ul>
  3. 3. Princípios básicos de software de entrada e saída. <ul><li>Organização do Software de E/S. </li></ul><ul><li>O hardware interage com os drivers de dispositivos através das interfaces físicas (paralelas ou serias), interrupções e DMA. </li></ul>Figura 1.1 – Camadas do software
  4. 4. Drivers de dispositivo <ul><li>Drivers de dispositivos – (Device Drivers) </li></ul><ul><ul><li>Todo código dependente de dispositivo deve estar nos drivers de dispositivos. </li></ul></ul><ul><ul><li>Composta por módulos onde cada um é responsável por fornecer acesso a um dispositivo de E/S específico. </li></ul></ul><ul><ul><li>Objetivo: Ocultar as diferenças dos dispositivos fornecendo uma abstração mais genérica possível a camada superior, conforme figura 1.1 , fazendo com que a camada acima veja estes dispositivos de uma forma uniforme. </li></ul></ul>* .exe Drivers Usuários Software Aplicativo Sistemas Operacionais Hardware <ul><li>O exemplo abaixo ilustra genericamente este relacionamento. </li></ul>
  5. 5. <ul><li>Podem ser orientados a caractere ou a bloco </li></ul><ul><ul><li>Orientados a bloco: o armazenamento e transferência de informações é feito através de blocos de tamanho fixo. Geralmente entre 512 b e 32 Kb. </li></ul></ul><ul><ul><li>Orientados a caractere: realizam transferência byte a byte, sem a necessidade de considerar uma estrutura de endereçamento. </li></ul></ul><ul><ul><li>Ex. Portas seriais, impressoras, interfaces de rede, mouses, etc. </li></ul></ul>Drivers de dispositivo
  6. 6. <ul><li>Implementa funções e procedimentos a todos os dispositivos de E/S. </li></ul><ul><ul><li>As principais são : </li></ul></ul><ul><ul><li>Escalonamento de E/S: Reordena o acesso á dispositivos de E/S compartilhados por vários processos, visando a melhora do sistema. </li></ul></ul><ul><ul><li>Ex: discos magnéticos. </li></ul></ul><ul><ul><li>Denominação: Cada periférico possui um nome lógico para sua identificação, generalizando as rotinas de acesso. </li></ul></ul><ul><ul><li>Buferização : Processo que armazena os dados temporariamente no decorrer de uma transferência entre camadas do software de E/S. </li></ul></ul><ul><ul><li>Ex: Numa transferência de 128Kb será possível transferir de 4Kb em 4Kb . </li></ul></ul><ul><ul><li>Cache de dados: Armazena dados frequentemente acessados na memória RAM, com intuito de facilitar e agilizar as requisições do sistema. </li></ul></ul>E/S independente de dispositivo
  7. 7. <ul><ul><li>Principais funções e procedimentos: </li></ul></ul><ul><ul><ul><li>Alocação e liberação: Em dispositivos que permitem o acesso de um usuário por vez, se faz necessário o gerenciamento pelo software de E/S, a fim de evitar acessos concorrentes. É então adotada a técnica de spooling que disponibiliza os pedidos em uma fila, para que sejam atendidos um a um. </li></ul></ul></ul><ul><ul><li>Ex: Fila de impressão. </li></ul></ul><ul><ul><ul><li>Direitos de Acesso: Define a forma de acesso aos dispositivos para cada usuário, o SO deve garantir o acesso de forma correta. </li></ul></ul></ul><ul><ul><ul><li>Tratamento de erros: O software de E/S deve informar a camada superior a ocorrência de erros de uma operação. </li></ul></ul></ul>E/S independente de dispositivo
  8. 8. E/S à nível de usuário <ul><li>O usuário interage com o SO independente da implementação. Para o usuário não importa qual é o processo realizado para ‘imprimir’ por exemplo. </li></ul><ul><li>Visualiza a abstração das funções pela interface oferecida a ele. </li></ul>
  9. 9. Dispositivos periféricos típicos <ul><li>Dentre os vários dispositivos de E/S, seria impossível abordar todos aqui, portanto descreveremos os comuns e fundamentais ao funcionamento do computador, como: Disco Rígido, Vídeo, Teclado e Rede, apontando suas peculiaridades pertinentes a entrada e saída de dados. </li></ul>
  10. 10. DISCOS RIGIDOS ( Hard Disk , HD ou Winchester ) <ul><li>Na arquitetura de um computador podemos considerar o HD um dos componentes mais importantes, pela sua grande capacidade de armazenamento de dados e principalmente por guardar todos os dados do sistema operacional </li></ul>
  11. 11. 1 - Prato, mídia ou platter - aonde os dados são gravados 2 - Atuador ou actuator - parte mecânica responsável pelo posicionamento das cabeças de leitura e gravação 3 - Componentes internos de controle do atuador, ligados a placa controladora lógica externa 4 - Cabeças de leitura e gravação ou magnetic heads - conectadas ao atuador, responsáveis pela leitura e gravação de dados na mídia 5 e 6 - Hard Disk Assembly superfície aonde são montados os componentes de um hard disk 7 - Placa controladora lógica ou logic board - responsável pela inicialização, controle mecânico e envio de dados do hard disk para o computador. 8 - Conectores externos padrão IDE - conexão por onde são enviados os dados para a placa-mãe e conseqüentemente ao processador DISCOS RIGIDOS ( Hard Disk , HD ou Winchester )
  12. 12. DISCOS RIGIDOS ( Hard Disk , HD ou Winchester ) <ul><li>Tempo de acesso </li></ul><ul><ul><li>Para se realizar um acesso ao HD, é necessário posicionar o cabeçote de leitura e escrita sob um determinado setor e trilha onde o dado será lido ou escrito. Esse procedimento de acordo com a organização de um HD requer um certo tempo de acesso: </li></ul></ul><ul><ul><li>São definidos por três fatores: </li></ul></ul><ul><ul><ul><li>Seek Time : é o tempo de que a cabeça de leitura leva para ir de uma trilha a outra, isto é deslocar o cabeçote de leitura e escrita até o cilindro correspondente à trilha a ser acessada. </li></ul></ul></ul>
  13. 13. DISCOS RIGIDOS ( Hard Disk , HD ou Winchester ) <ul><li>Tempo de latência ( t latency ) </li></ul><ul><ul><li>Tempo necessário, uma vez que o cabeçote já esteja na trilha correta, para que o setor a ser lido, ou escrito, possa se posicionar sob o cabeçote de leitura e escrita. Esse tempo também é denominado de atraso rotacional ( rotational delay ). </li></ul></ul><ul><ul><li>Definição: Atraso necessário para a cabeça de leitura/escrita chegar ao setor desejado </li></ul></ul>
  14. 14. DISCOS RIGIDOS ( Hard Disk , HD ou Winchester ) <ul><li>Transfer time (t transfer ) </li></ul><ul><ul><li>Corresponde ao tempo necessário à transferência dos dados, isso é, à leitura ou escrita dos dados </li></ul></ul><ul><li>Cache </li></ul><ul><ul><li>Os discos rígidos atuais possuem uma pequena quantidade de memória cache embutida na controladora, que executa várias funções com o objetivo de melhorar o desempenho do disco rígido. Neste cache ficam guardados os últimos dados acessados pelo processador, permitindo que um dado solicitado repetidamente, possa ser diretamente transmitido a partir do cache, dispensando uma nova e lenta leitura dos dados pelas cabeças de leitura. </li></ul></ul>
  15. 15. DISCOS RIGIDOS ( Hard Disk , HD ou Winchester ) <ul><li>Disposição do HD </li></ul>
  16. 16. Estrutura Raid ( Redundant Array if Independent Disks ) Matriz Redundante de Discos Independentes <ul><li>Apesar do nome ser complicado, o conceito é bem simples: fazer com que vários discos rígidos trabalhem em conjunto como se fosse um só: </li></ul><ul><li>Exemplos mais usados: </li></ul><ul><li>Raid 0 Raid 1 Raid 5 </li></ul>
  17. 17. Vídeo <ul><li>Utilizam a memória mapeada. Para cada caractere armazenado existem ‘2’ bytes associados a matriz. </li></ul><ul><ul><li>Um associado ao código ASCII </li></ul></ul><ul><ul><li>Outro a um atributo, como: ‘piscando, itálico, etc.’ </li></ul></ul><ul><li>Estrutura de matriz com linhas e colunas </li></ul><ul><ul><li>Acesso a matriz, exibição do vídeo: </li></ul></ul><ul><ul><ul><li>Como texto é organizado em uma matriz de caracteres. </li></ul></ul></ul><ul><ul><ul><li>Já como gráfico é organizada em pixels , onde a placa define a resolução e as cores de cada pixel determinando o tipo da controladora, (EGA,VGA,SVGA, e mais). </li></ul></ul></ul>
  18. 18. Teclado <ul><li>Teclado responsável pela entrada de dados no SO. </li></ul><ul><ul><li>Cada tecla pressionada é reconhecida e armazenada pelo scancode em uma matriz, por meio de uma interrupção de hardware . </li></ul></ul><ul><ul><li>Um tratador de interrupções consulta uma tabela para substituir o código da matriz, por um caractere e armazena-lo </li></ul></ul><ul><ul><li>no buffer do teclado. </li></ul></ul><ul><ul><li>Através de chamadas de sistema o SO recupera esses caracteres e os devolve ao usuário pelo aplicativo. </li></ul></ul>
  19. 19. <ul><li>Gerenciamento das janelas </li></ul><ul><ul><li>Método Dedicado </li></ul></ul><ul><ul><ul><li>O número de entradas é limitado pelo buffer da estrutura associada ao terminal. </li></ul></ul></ul><ul><li>Em ambos os casos o driver de teclado seleciona a janela através do conceito de janela ativa. </li></ul>Teclado <ul><li>Gerenciamento das janelas </li></ul><ul><ul><li>Método Centralizado </li></ul></ul><ul><ul><ul><li>O driver do teclado se relaciona com o SO para enviar os caracteres a janela correta. Por meio de buffers a cada janela aberta é criado uma estrutura de dados que consome os caracteres digitados. </li></ul></ul></ul>
  20. 20. Rede <ul><li>Interface de rede </li></ul><ul><ul><li>Provê a interconexão entre máquinas baseada em alguma tecnologia (ethernet), que determine velocidade de transmissão e a capacidade de receber e transmitir ao mesmo tempo, ( fullduplex). Todos os procedimentos são gerenciados pelo protocolo TCP/IP. </li></ul></ul><ul><ul><li>A placa de rede transforma sinais digitais em sinais analógicos, possui memória para armazenamento de dados durante uma transferência. Trabalha orientada a eventos, como: final de uma transmissão, recepção de uma mensagem. </li></ul></ul>
  21. 21. Rede <ul><li>Organização do software de rede </li></ul><ul><ul><li>Modelo OSI </li></ul></ul>
  22. 22. Rede <ul><li>Eventos </li></ul><ul><ul><li>Para todo evento, como enviar ou receber uma mensagem o software de rede deve fazer uma requisição ao SO. Caso a mensagem ainda não tenha sido recebida, o processo requisitante é bloqueado ate sua chegada. Após o recebimento o driver de rede direciona a mensagem ao processo, que passa de bloqueado para apto a executar. Caracterizando uma transmissão síncrona. </li></ul></ul><ul><ul><li>Uma Transmissão assíncrona não bloqueia o processo requisitante se não houver mensagem, pois sua intenção em recebe - lá já foi informada ao SO, a verificação e leitura da mensagem é de responsabilidade do próprio processo. </li></ul></ul>
  23. 23. <ul><li>Conclusão: </li></ul><ul><li>Os dispositivos de entrada são os responsáveis pela entrada de dados no sistema computacional, tais dados necessitam de outros componentes do computador para serem processados e convertidos em um formato legível à máquina, para que possam ser tratados e devolvidos ao usuário através dos dispositivos de saída. Este processo requer muito do SO, uma vez que o hardware é ainda mais lento que o software, exigindo intervenções do SO como buferização, interrupções, entre outros processos. O SO gerencia estes procedimentos, quando solicitado por uma “ chamada de sistema ”, assim fica evidente a necessidade de tornar os periféricos o mais independente possível do SO, com seus próprios micro-processadores. </li></ul>Princípios básicos de software de entrada e saída.
  24. 24. <ul><li>Qual o objetivo dos drivers de dispositivos? </li></ul><ul><li>Para evitar uma nova e demorada leitura de dados no HD, qual o processo usado pelo SO e disponibilizado pelo HD? </li></ul><ul><li>Em redes, qual a diferença entre transmissão síncrona e transmissão assíncrona? </li></ul>Perguntas.. Formatação [email_address]

×