Cap5 ES
5.1 Princípios do hardware de E/S
5.2 Princípios do software de E/S
5.3 Camadas do software de E/S
Capítulo 5 - Entrada/Saída
5.1 Princípios do hardware de E/S
5.2 Princípios do software de E/S
5.3 Camadas do software de E/S
Controladores de Dispositivos
Composto por dispositivos:
Mecânico
Eletrônico
Exemplo:
HD
Mecânico: Discos magnéticos com cabeçote de leitura e motores que rotacionam e movem os discos e cabeçotes.
Eletrônico: Controlador
Controladores de Dispositivos
Podem ser reutilizados em outros dispositivos, fornecendo uma modularização.
Tem como principal função converter o fluxo serial de bits em blocos de bytes e corrigir eventuais erros.
Podem ter registradores dentro do espaço de memória (E/S mapeada na memória).
E/S Mapeada na Memória
(a) Espaços de memória e E/S separados
(b) E/S mapeada na memória
(c) Híbrido
Espaço de Memória e E/S
Separados
Possui registradores específicos para E/S.
É necessário usar códigos específicos de
Assembly para acessar os registradores.
E/S Mapeada na Memória
Mapeia todos os registradores de controle no espaço de memória.
É possível acessar através de métodos IN/OUT de C.
Não necessita de qualquer mecanismo de proteção, pois o usuário está apenas acessando uma área da memória.
E/S Mapeada na Memória (Cont.)
Desta forma o SO é capaz de modificar os acesso do usuário a um dispositivo específico apenas incluindo/removendo as páginas desejas em sua tabela de páginas.
Dois Espaços de Endereçamento de E/S
Este último esquema reserva um espaço na memória para os dispositivos de E/S.
Tem desvantagem a necessidade de calcular em tempo de inicialização do sistema quais endereços de memória estão reservados para os dispositivos de E/S.
Direct Memory Access (DMA)
O controlador solicita um bloco de dados, armazena-o em um buffer e o contador de blocos é decrementado. Ao final deste loop, os blocos de dados são copiados