0% acharam este documento útil (0 voto)
38 visualizações39 páginas

Entrada e Saída

O documento aborda os princípios de hardware e software relacionados à entrada e saída (E/S) em computadores, destacando a importância dos dispositivos de E/S, controladores e métodos de acesso como E/S programada, interrupções e DMA. Também discute a função dos drivers de dispositivo e a abstração da E/S independente do dispositivo, que facilita a interação entre software e hardware. Por fim, menciona as vantagens da padronização e gerenciamento eficiente de drivers para melhorar o desempenho e a compatibilidade do sistema.

Enviado por

hugo.go.ac2020
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
38 visualizações39 páginas

Entrada e Saída

O documento aborda os princípios de hardware e software relacionados à entrada e saída (E/S) em computadores, destacando a importância dos dispositivos de E/S, controladores e métodos de acesso como E/S programada, interrupções e DMA. Também discute a função dos drivers de dispositivo e a abstração da E/S independente do dispositivo, que facilita a interação entre software e hardware. Por fim, menciona as vantagens da padronização e gerenciamento eficiente de drivers para melhorar o desempenho e a compatibilidade do sistema.

Enviado por

hugo.go.ac2020
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Entrada/Saída

Prof. Me. Jonas Pontes


@[Link]
Princípios de hardware
Princípios de hardware
O objetivo básico de um computador é
solucionar problema;
Existem mecanismos para informar os
problemas ao computador ou recuperar
solução;

Dispositivos de Entrada ou Saída


Princípios de hardware
Todo SO precisa prover:
Comunicação com o exterior, com uma variedade
muito grande de dispositivos;

Armazenamento não volátil, com dispositivos de


diferentes capacidades, desempenhos, custos etc.
Princípios de hardware
Um periférico é qualquer dispositivo conectado
a um computador de forma a possibilitar sua
interação com o mundo externo;

Os periféricos de um computador pode ser de


entrada, de saída, ou ainda de entrada e saída,
a depender do fluxo de dados;
Princípios de hardware
Interface: mecanismo de hardware que conecta
entre o periférico e o computador;
Barramento: interconecta as interfaces,
permitindo a transferência de dados entre o
ambiente externo e o processador ou a memória;
Princípios de hardware
Controlador: componente de hardware empregados
às interfaces para implementar funções como ler
dados, escrever dados, reinicializar, ler
status e escrever comando

O controlador
Sabe como cada periférico funciona;
Cada tipo de periférico tem um controlador;
Tipos de conexão
Serial
Quando há apenas uma linha para os dados;
Um byte é transformado em uma única linha de bits e
vice-versa;
Modems e alguns tipos de mouses e impressoras são
exemplos, USB, Sata e bluetooth (emulação).
Tipos de conexão
Paralela
Várias linhas para dados;
Permite que vários bits sema transferidos
simultaneamente entre o dispositivo e a interface;
Geralmente o número de bits paralelos é o tamanho
de um byte ou de uma palavra do processador;
Impressoras paralelas (LPT) e PCI (placas de vídeo)
são bons exemplos.
Acesso a dispositivos de E/S
Acesso a dispotivos de E/S
Várias linhas para dados;
Permite que vários bits sema transferidos
simultaneamente entre o dispositivo e a interface;
Geralmente o número de bits paralelos é o tamanho
de um byte ou de uma palavra do processador;
Impressoras paralelas (LPT) e PCI (placas de vídeo)
são bons exemplos.
Acesso a dispositivos de E/S
Como a CPU realiza leitura e escrita de dados
através da interface?

Três técnicas:
E/S programada: CPU controla todo o processo;
Interrupções: Dispositivo avisa quando precisa de
atenção;
Acesso direto à memória (DMA): Transferência ocorre
sem envolver a CPU.
Acesso a dispositivos de E/S
E/S programada:

A CPU controla diretamente a operação de E/S;


Espera até que o dispositivo esteja pronto para
enviar ou receber dados;
Acesso a dispositivos de E/S
E/S programada — funcionamento:

1. A CPU verifica o status do dispositivo;


2. Quando disponível, a CPU envia ou recebe dados;
3. Repete o processo até concluir a operação.
Acesso a dispositivos de E/S

E/S programada
funcionamento:

[Link]
s/organizacao-e-arquitetura-de-computadores-
licenciatura-em-informatica/entrada-e-saida
Acesso a dispositivos de E/S
E/S programada

✅ Simples de ❌ Ineficiente – a CPU


fica ociosa enquanto
implementar;
✅ Controle total do espera o dispositivo;
❌ Reduz o desempenho do
processador.
sistema.
Acesso a dispositivos de E/S
Interrupções:

O dispositivo avisa a CPU quando precisa ser


atendido, liberando a CPU para outras tarefas.
Acesso a dispositivos de E/S
Interrupções — funcionamento:

1. A CPU inicia a operação de E/S;


2. Enquanto aguarda, executa outras tarefas;
3. O dispositivo gera uma interrupção quando está
pronto;
4. A CPU pausa sua execução, processa a interrupção e
depois retorna ao que estava fazendo.
Acesso a dispositivos de E/S
Interrupções:

✅ Melhora o desempenho ❌ Requer um mecanismo


eficiente para gerenciar
da CPU.
✅ Reduz tempo ocioso interrupções;
❌ Pode haver sobrecarga
do processador.
se muitas interrupções
ocorrerem ao mesmo tempo.
Acesso a dispositivos de E/S
Acesso Direto à Memória (DMA):
Permite que dispositivos
de E/S transfiram dados
diretamente para a
memória, sem passar pela
CPU.
Acesso a dispositivos de E/S
DMA — funcionamento

1. A CPU configura o controlador DMA com o endereço


da memória e o tamanho da transferência;
2. O DMA transfere os dados entre o dispositivo e a
memória;
3. Quando concluído, o DMA avisa a CPU via uma
interrupção.
Acesso a dispositivos de E/S
DMA:

✅ Libera a CPU para ❌ Pode ter conflitos de


executar outras tarefas. acesso à memória.
✅ Acelera transferências ❌ Requer hardware
de grandes volumes de adicional para o
dados. controlador DMA.
Acesso a dispositivos de E/S
ES programada x interrupções x DMA

Método Vantagem Desvantagem

E/S Programada Simples de implementar CPU fica ocupada esperando

CPU pode realizar outras Pode haver sobrecarga com muitas


E/S por Interrupção
tarefas interrupções

CPU liberada e
DMA Requer hardware dedicado
transferências mais rápidas
Princípios básicos de software de E/S
É um subsistema de um SO;

Tenta padronizar ao máximo as rotinas de acesso


aos periféricos de forma a reduzir o número de
rotinas de entrada e saída;
Permite a inclusão de novos dispositivos sem
necessitar de alterar a interface de
programação de um usuário final.
Princípios básicos de software de E/S
Drivers de dispositivo
É a camada inferior de software;

Um driver esconde da camada superior as diferenças


entre os vários dispositivos de E/S;

Drivers são programas que permitem ao sistema


operacional se comunicar com dispositivos de hardware;
Drivers de dispositivo

Funcionam como "tradutores"


entre o hardware e o
software;

Fornece abstração mais


genérica para a camada
superior.
Funções do driver
Traduzir comandos do SO para o hardware;
Gerenciar a comunicação entre hardware e software;
Controlar o funcionamento correto do dispositivo;
Garantir compatibilidade e desempenho eficiente.
Tipos de Drivers
Drivers de dispositivo: comandam hardware
específico (ex.: driver de impressora);
Drivers de kernel: funcionam em nível de sistema
operacional (ex.: drivers de disco);
Drivers de modo usuário: executam operações fora do
kernel para maior segurança (ex.: drivers de USB em
ambientes modernos).
Funcionamento dos Drivers no SO
1️⃣ O usuário conecta um novo dispositivo;
2️⃣ O SO busca um driver compatível;
3️⃣ O driver traduz os comandos do SO para o hardware;
4️⃣ O dispositivo responde e opera corretamente.
Gerenciamento de Drivers
Como os SOs lidam com drivers?

Windows: gerenciador de Dispositivos;


Linux: diretório /dev e módulos do kernel (lsmod,
modprobe);
MacOS: Extensões de Kernel (Kexts);
Android/iOS: Drivers embutidos no sistema para
maior segurança.
Gerenciamento de Drivers
Atualização de rivers

✅ Melhor desempenho e compatibilidade.


✅ Correção de falhas de segurança.
✅ Suporte a novos recursos.
Gerenciamento de Drivers
Problemas com drivers

⚠️ Drivers desatualizados podem causar falhas.


⚠️ Drivers incompatíveis podem impedir o funcionamento
do dispositivo.
⚠️ Conflitos de drivers podem levar a erros no
sistema.
E/S independente do dispositivo
O que é E/S Independente do Dispositivo?

Abstração da interface de E/S para diferentes


dispositivos;
Permite que os programas acessem dispositivos sem
precisar conhecer detalhes específicos do hardware;
Aumenta a portabilidade e compatibilidade dos
sistemas.
E/S independente do dispositivo
Importância da Abstração na E/S

Redução da complexidade para desenvolvedores;


Maior compatibilidade entre hardware e software;
Facilita o suporte a novos dispositivos;
Melhora a segurança e estabilidade do sistema.
E/S independente do dispositivo
Como Funciona a E/S Independente do
Dispositivo?
1️⃣ O SO fornece interfaces padronizadas para
dispositivos.
2️⃣ Aplicações interagem com essas interfaces, sem se
preocupar com o hardware.
3️⃣ O gerenciador de E/S traduz chamadas genéricas para
comandos específicos de cada dispositivo.
E/S independente do dispositivo
Interfaces de E/S

Interface de Arquivos: Permite acesso a


dispositivos como se fossem arquivos (exemplo:
/dev/ no Linux).
Chamadas de Sistema de E/S: Permitem a comunicação
entre aplicações e o SO.
E/S independente do dispositivo
Métodos de Acesso à E/S

Buffering: O SO armazena temporariamente os dados


para otimizar transferências.
Caching: Mantém cópias recentes de dados para
acelerar acessos futuros.
Spooling: Armazena solicitações de E/S para
execução posterior.
E/S independente do dispositivo
Exemplo: Sistemas de Arquivos

Dispositivos de armazenamento são tratados como


arquivos pelo SO;
Operações como leitura, escrita e manipulação são
padronizadas;
Usuários e aplicativos interagem de forma
unificada, independentemente do tipo de hardware.
E/S independente do dispositivo
Vantagens

✅ Facilidade de desenvolvimento: Programadores não


precisam conhecer detalhes de cada dispositivo;
✅ Portabilidade: Programas funcionam em diferentes
hardwares sem modificações;
✅ Eficiência: O SO gerencia recursos otimizando o
desempenho;
✅ Maior segurança: O isolamento evita acessos diretos

Você também pode gostar