IV-Gerenciamento de E/S
1.
2.
3.
4.
5.
Introdução
Subsistema de Entrada e Saída
Device Driver
Controlador de Entrada e Saída
Dispositivos de Entrada e Saída
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
1. Introdução
Computador:
Entrada
Problema
a ser
Resolvido
Saída
Dispositivos de E/S
Mouse
Monitor
Teclado
IV-Gerenciamento de E/S
Modens
Placa de
rede
Unidade de fita
Unidade de disco
Periféricos
1. Introdução
IV-Gerenciamento de E/S
A gerencia destes dispositivos é uma das
principais e mais complexas do S.O.
Sua estrutura é em forma de camadas:
• Camadas de baixo nível: correspondem às
características dos dispositivos.
• Camadas superiores: oferecem uma
interface simples e confiável ao usuário e
suas aplicações.
IV-Gerenciamento de E/S
1. Introdução
IV-Gerenciamento de E/S
A camada Subsistema de E/S possui a função
de isolar a complexidade dos dispositivos
físicos, permitindo ao S.O. a comunicação
com qualquer tipo de periférico.
Device driver: é a camada que cuida dos
aspectos de velocidade de operação,
unidade de transferência, representação
dos dados, tipo de operações, etc...
•
IV-Gerenciamento de E/S
Oferece uma interface uniforme entre o
Subsistema de E/S todos os dispositivos
1. Introdução
IV-Gerenciamento de E/S
As camadas são divididas em dois grupos:
• Independente do dispositivo: Visualiza os
diversos tipos de dispositivos de modo
único (é a maior parte);
• Dependente do dispositivo: Específica
para cada dispositivo.
Estudaremos as diversas camadas de E/S bem
como os conceitos envolvidos
IV-Gerenciamento de E/S
1. Introdução
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Este subsistema isola a complexidade das
operações específicas da camada de
sistema de arquivos e Sistema Gerenciador
de Banco de Dados (SGBD) ou diretamente
da aplicação, possibilitando a manipulação
dos periféricos com mais simplicidade.
• Composição: Conjunto de rotinas que
possibilitam a comunicação com qualquer
dispositivo
a
ser
conectado
ao
computador (rotinas de entrada e saída).
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Permite ao usuário atualizar as operações de
E/S sem se preocupar cm detalhes do
dispositivo acessado.
Exemplo: Acesso em disco. O usuário não se
preocupa com a estrutura com que um
arquivo está sendo gravado no disco.
Esta operação é realizada através de
rotinas de E/S, não importando se o acesso
é em HD, disquete, pendrive, fita
magnética
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
A estrutura de armazenamento dos dados
depende do tipo de periférico envolvido:
• Armazenamento não Volátil: feito em
dispositivos magnéticos ou ópticos. A
organização é gerenciada pelo aplicativo.
• Armazenamento Volátil: Exemplo:
Monitores de vídeo. As operações são
ligadas diretamente à rotinas do S.O..
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
As chamadas ao subsistema de E/S podem
ser feitas de duas formas:
• Chamada explícita: Chamada da rotina do
S.O. diretamente do programa de alto
nível.
• Chamada implícita: Uso de comandos de
leitura/gravação e chamada à bibliotecas
oferecidas por linguagem de alto nível.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Consequentemente, a comunicação entre a
linguagem de alto nível e as rotinas do S.O.
é feita simplesmente através de passagem
de parâmetro.
O relacionamento entre o comando e a
rotina do E/S é criado na geração do código
executável.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
As operações de E/S podem ser classificadas pelo
sincronismo:
• Síncronas: O processo que inicializa a operação
aguarda a finalização, permanecendo, portanto,
em estado de espera. Ocorre com a maioria das
linguagens de alto nível.
• Assíncrona: O processo que inicializou a
operação continua a execução normalmente.
Neste caso, o sistema oferece mecanismo de
sinalização que avise o término da operação.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
O Subsistema de E/S realiza funções comuns à
todos os tipos de dispositivos, ficando os
aspectos específicos para os device drivers.
Portanto, este oferece uma interface uniforme
às camadas superiores.
Cada dispositivo trabalha com unidades de
informações diferentes tamanhos. O Subsistema
de E/S cria uma unidade lógica de transferência
Independente do dispositivo e repassa-o par os
níveis superiores, sem conhecimento do
conteúdo da informação.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Exemplo:
Sendo a camada superior o sistema de
arquivos. A informação é interpretada
como um registro lógico de arquivo,
obedecendo certa organização de acesso
estabelecido
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Tratamento de erros:
• Normalmente é feito pelas camadas mais
próximas ao hardware.
• Certos erros são tratados pelo sistema de
arquivos.
Exemplo:
 gravação em dispositivos de entrada,
 leitura em dispositivos de saída,
 operações em dispositivos inexistentes.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
O Subsistema de E/S oferece proteção de
acesso aos diversos dispositivos bem como
a proteção aos usuários para acesso
simultâneo.
Também utiliza técnicas de buffering para
evitar excesso de acesso aos dispositivos
de E/S. Desta forma, não só o dado
chamado ocupa o buffer, mas o bloco de
dados correspondente.
IV-Gerenciamento de E/S
2. Subsistema de Entrada e Saída
IV-Gerenciamento de E/S
Uma das principais funções do Subsistema
de E/S é criar uma interface padronizada
com os device drivers.
 Quando um novo dispositivo é instalado
no computador, o subsistema de E/S
oferece interface padronizada para
permitir a inclusão de novos drivers sem a
necessidade de alteração desta camada.
IV-Gerenciamento de E/S
3. Device Driver
IV-Gerenciamento de E/S
Sua função é implementar a comunicação do
subsistema E/S com os dispositivos através de seus
controladores.
• Recebe os comandos gerais
((abstrato) do Subsistema de
E/S)  Traduz para comandos
específicos para que o
controlador de dispositivo
possa executá-lo.
• Também inicializa e gerencia o
dispositivo.
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
3. Device Driver
Controla cada dispositivo
ou dispositivos semelhantes
Reconhece a particulardade dos dispositivos
Exemplo: Leitura síncrona.
IV-Gerenciamento de E/S
3. Device Driver
Recebe solicitação
de leitura de um
determinado bloco
IV-Gerenciamento de E/S
Informa
ao
controlador:
Cilindro, trilha e
setor que o
bloco se localiza
Durante a leitura, o processo que a solicitou permanece em
espera. Finalizando a leitura, a CPU recebe a interrupção,
através do controlador que ativa novamente o driver
IV-Gerenciamento de E/S
3. Device Driver
IV-Gerenciamento de E/S
Após verificar a inexistência de erros, o driver
transfere as informações para a camada superior
(subsistema).
Com os dados disponíveis, o processo é retirado
do estado de espera e retorna ao estado de
pronto para continuar executando.
IV-Gerenciamento de E/S
3. Device Driver
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
Controlador do hardware que
diretamente o dispositivos de E/S.
IV-Gerenciamento de E/S
manipula
O S.O. (especificamente os drivers) comunicamse com o dispositivo através dos controladores.
 Pode ser
 Placa conectada ao slot
 Na mesma placa do processador
Possui memória e registradores próprios
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
IV-Gerenciamento de E/S
Em sequência de leitura, armazena em buffer
interno, uma sequência de bits, proveniente do
dispositivo, até formar um bloco.
• Verificando a ocorrência de erro, o bloco
pode ser transferido para um buffer de E/S
na memória principal.
Este processo pode ser controlado pela
CPU ou por um controlador DMA (Direct
Memory Access). O uso desta técnica evita
a ocupação da CPU durante o processo de
transferência.
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
IV-Gerenciamento de E/S
Em sequência de leitura, armazena em buffer
interno, uma sequência de bits, proveniente do
dispositivo, até formar um bloco.
• Verificando a ocorrência de erro, o bloco
pode ser transferido para um buffer de E/S
na memória principal.
Este processo pode ser controlado pela
CPU ou por um controlador DMA (Direct
Memory Access). O uso desta técnica evita
a ocupação da CPU durante o processo de
transferência.
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
IV-Gerenciamento de E/S
Passos de leitura através do DMA.
 CPU, através do driver, inicializa
registradores do controlador de DMA;
os
 O DMA, solicita ao controlador de disco, a
transferência do bloco de disco para o seu
buffer interno;
 Terminada a transferência, o controlador
verifica a existência de erros, não havendo, O
DMA transfere o bloco para o buffer de E/S da
memória principal.
IV-Gerenciamento de E/S
4. Controlador de Entrada e Saída
IV-Gerenciamento de E/S
 Buffer preenchido, DMA sinaliza uma
interrupção, avisando o processador que o
bloco já se encontra na memória principal.
IV-Gerenciamento de E/S
5. Dispositivos de Entrada e Saída
Classificação:
Entrada de dados:
• Teclado
• Mouse
Saída
• Impressora
• Monitor de vídeo
Entrada e Saída
• Modens
• Discos
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
Transferência
Ocorre através de blocos
de informação por meio
dos controladores dos
dispositivos.
De acordo com os dados
armazenados
nos
dispositivos de E/S, estes
podem ser classificados
como:
5. Dispositivos de Entrada e Saída
IV-Gerenciamento de E/S
Dispositivos estruturados (block devices)
Armazena informações em blocos de
tamanho fixo, cada um com o seu
endereço, podendo ser lido ou gravado de
forma independente.
Exemplo: Discos magnéticos e ópticos
Quanto ao acesso, podem ser classificados
como acesso direto e sequencial baseado
na forma com que os blocos são
acessados.
IV-Gerenciamento de E/S
5. Dispositivos de Entrada e Saída
IV-Gerenciamento de E/S
• Acesso direto: um bloco pode ser
recuperado diretamente através de um
endereço.
Exemplo: disco magnético
• Acesso sequencial: para acessar um
bloco, deve-se percorrer todos os blocos
anteriormente sequencialmente.
Exemplo: fita magnética
IV-Gerenciamento de E/S
5. Dispositivos de Entrada e Saída
IV-Gerenciamento de E/S
Dispositivos não estruturados (character
devices)
São os que enviam ou recebem caracteres
não estruturados, não sendo endereçável,
não permitindo operação de acesso
direto.
Exemplo: Terminais, impressoras, interface
de rede.
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
IV-Gerenciamento de E/S
Download

2. Subsistema de Entrada e Saída