Você está na página 1de 22

Sistemas operacionais

Dispositivos de entrada e sada


Prof. Alberlan Lopes

Dispositivos de entrada e sada


Perifricos:
Um perifrico pode ser visto como qualquer
dispositivo conectado a um computador
de forma a possibilitar sua interao com
o mundo externo.

Dispositivos de entrada e sada


Perifricos:
De acordo com o sentido do fluxo de
dados entre o computador e o dispositivo,
esses podem ser divididos em perifricos
de entrada, perifricos de sada, ou ainda
perifricos de entrada e sada.

Dispositivos de entrada e sada


Perifricos:
Os perifricos so conectados ao
computador atravs de um componente
de hardware denominado interface.
As interfaces constituem um elemento
chave para coordenao da transferncia
de dados entre perifrico e o processador,
ou entre perifrico e memria.

Dispositivos de entrada e sada


Perifricos:
As interfaces empregam no seu projeto um
outro componente de hardware: o controlador.
Um controlador nada mais que um
processador projetado especificamente para
realizar uma funo, como, por exemplo,
controlar um disco rgido.

Dispositivos de entrada e sada


Perifricos:
Os dispositivos de I/O, dependendo de sua
interconexo fsica s interfaces, podem
ser do tipo serial ou paralelo. Essa
caracterstica est relacionada maneira
pela qual os dados so transferidos entre
os dispositivos de I/O e as interfaces

Dispositivos de entrada e sada


Perifricos:
Uma interface serial aquela que existem
apenas uma linha para os dados. Os
dados podem trafegar em dois sentidos,
mas em apenas um sentido por vez!

Dispositivos de entrada e sada


Perifricos:
Uma interface paralela possui vrias
linhas para os dados, permitindo assim
que vrios bits sejam transferidos
simultaneamente (em paralelo) entre os
dispositivos de I/O e a interface.

Dispositivos de entrada e sada


Perifricos:
Dispositivos de E/S so dispositivos de
hardware bastante variados:
Orientados

a caracteres ou a blocos
Sncronos ou no
Compartilhados ou no
Velocidades diferentes

Dispositivos de entrada e sada


O Sistema Operacional deve gerenciar od
dispositivos de I/O e ainda abstrair o
acesso a todos esses perifricos de E/S
para o usurio final.
Independncia

de dispositivos

So dispositivos lentos
O

Sis. Op. deve ser eficiente ao us-los.

Dispositivos de entrada e sada


Organizao da gerncia de I/O

Dispositivos de entrada e sada

Cada driver
Hardware.

encapsula as caractersticas do

dispositivo de

Conversa com o controlador do dispositivo;


a parte mais especfica do Sis. Op.

Acompanha o hardware quando da sua aquisio ou vem


nativamente no sistema operacional.

Em geral existe uma verso de driver para cada sistema


operacional especfico.

Poder seguir um padro (e.g. SCSI, USB...)

Dispositivos de entrada e sada


Tipos de drivers/dispositivos.
Orientados a blocos
Acessa-se blocos de bytes de uma vez;
Cada bloco deve ter um endereo;

Exemplos: disco, discos removveis

Dispositivos de entrada e sada


Tipos de drivers/dispositivos.
Dispositivos orientados rede

O tempo de acesso rede ainda diferente do


tempo de uso de outros devices usuais.
Por isso, costuma-se definir uma interface
especfica para devices orientados a rede.
A interface tpica o socket

Dispositivos de entrada e sada


Tipos de drivers/dispositivos.
Dispositivos orientados rede

Pode-se criar um socket, abri-lo e fech- lo;


Quando aberto, pode-se:
Se conectar no socket (connect);
Ouvir no socket at alguma coisa chegar (listen);
Escrever no socket (write)
Pode-se ouvir vrios sockets e selecionar (select) uma
ao apropriada ao socket de onde veio a informao.

Dispositivos de entrada e sada


Tipos de drivers/dispositivos.
Dispositivos orientados rede
Existem vrios protocolos de rede suportados
pelos sockets:
Fluxo confivel de bytes (pipe);
Fluxo confivel de pacotes;
Fluxo no confivel;

Dispositivos de entrada e sada


Outras formas de classificar:

Compartilhveis ou no: possibilidade de ser acesso por vrios


processos no mesmo tempo.

Tela vs. Impressora.

Seqencial ou randmico

Mouse vs. disco

Acessvel em leitura s, ou em escrita s, ou em escrita/leitura.

Mapeado na memria / usa registradores

Dispositivos de entrada e sada


O subsistema de E/S
Basicamente, ele define interfaces padronizadas em cima dos
drivers, para serem usadas pelo ncleo.
Possibilita o acesso a vrios dispositivos, independente de suas
peculiaridades.
Exemplos:
interface Ethernet para a rede:
Define um endereo IP, um endereo de roteamento (gateway), um
prazo mximo de atendimento...
Independente da placa de rede especfica!
Interface do Mouse:
Vai tratar eventos tais como clic ou movimentao.
Independente do tipo de mouse!

Dispositivos de entrada e sada


Funes tpicas e genricas da interface

Buffer e Caches
Tratamento de erros
Escalonamento de dispositivo
Compartilhamento e controle de acesso
(Semforos!)
Mais funes backdoor

Dispositivos de entrada e sada


Tratamento de erros

O Sistema Operacional deve identificar:

O tipo de erro
Transiente/permanente
SW / HW

Qual dispositivo origem do erro


Deve retornar o identificador do erro para o usurio.
Deve logar o erro.

Dispositivos de entrada e sada


Bufferizao
Buffer no cache!
Buffer = rea de armazenamento temporrio de dados.
til para:
Ajustar tamanho de dados - Byte vs. Pacotes
Ajustar velocidades entre dispositivos
Possibilitar o assincronismo
Mas cache um buffer orientado ao desempenho!

Dispositivos de entrada e sada


Bufferizao
Problemas bsicos:
Manuteno da coerncia entre o buffer e os dados
originais.
tamanho do buffer;
O que fazer quando estoura o buffer?

Aumentar o buffer...
Usar um outro buffer...
Usar vrios outros buffers
Sistema de buffers circulares.

Você também pode gostar