Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

UNIVERSIDADE FEDERAL DO OESTE DO PARÁ
DISCIPLINA: SISTEMAS OPERACIONAIS
CAPÍTULO 5: ENTRADA/SAÍDA
 Equipe: Cezar Augusto F. da Rocha
 Darlan Albuquerque
 Gilnei Samuel Souza Cardoso
 Pablo da Silva Oliveira
 Raíssa Katrine Serrão
 
 
Entrada e saída - E/S
Uma função do SO é controlar todos os dispositivos de E/S de um computador.
Ele deve emitir comandos para os dispositivos, interceptar interrupções e tratar os erros.
 Deve fornecer uma interface (simples e fácil de usar) entre os dispositivos e o restante do sistema.
Princípios do hardware de E/S
Taxas de dados típicas de dispositivos, redes e barramentos
Controladores de dispositivo
• Componentes de dispositivos de E/S 
 – mecânico 
 – eletrônico 
• O componente eletrônico é o controlador do dispositivo 
 – pode ser capaz de tratar múltiplos dispositivos 
• Tarefas do controlador 
 – converter fluxo serial de bits em bloco de bytes 
 – executar toda correção de erro necessária 
 – tornar o bloco disponível para ser copiado para a 
 memória principal
E/S mapeada na memória (1)
 a) Espaços de memória e E/S separados 
 b) E/S mapeada na memória 
 c) Híbrido
E/S mapeada na memória (2)
 (a) Arquitetura com barramento único 
 (b) Arquitetura com barramento dual
Acesso Direto à Memória (DMA)
Operação de uma transferência com DMA
Interrupções Revisitadas 
Como ocorre uma interrupção. Conexões entre dispositivos e controlador de interrupção usam linhas de interrupção no barramento em vez de fios dedicados.
Princípios do Software de E/S Objetivos do Software de E/S (1)
• Independência de dispositivo 
– Programas podem acessar qualquer dispositivo de E/S sem especificar previamente qual (disquete, disco rígido ou CD-ROM) 
• Nomeação uniforme 
– Nome de um arquivo ou dispositivo pode ser uma cadeia de caracteres ou um número inteiro que é independente do dispositivo 
• Tratamento de erro 
– Trata o mais próximo possível do hardware
Objetivos do Software de E/S (2)
• Transferências Síncronas vs. Assíncronas 
– transferências bloqueantes vs. orientadas a interrupção 
– utilização de buffer para armazenamento temporário 
– dados provenientes de um dispositivo muitas vezes não podem ser armazenados diretamente em seu destino final 
• Dispositivos Compartilháveis vs. Dedicados 
– discos são compartilháveis 
– unidades de fita não são
E/S Programada (1) 
Passos da impressão de uma cadeia de caracteres
E/S Programada (2)
Escrita de uma cadeia de caracteres para a impressora usando E/S programada
E/S Orientada à Interrupção
• Escrita de uma cadeia de caracteres para a impressora usando E/S orientada à interrupção 
a) Código executado quando é feita a chamada ao sistema para impressão 
b) Rotina de tratamento de interrupção
E/S Usando DMA
• Impressão de uma cadeia de caracteres usando DMA
a) Código executado quando quando é feita a chamada ao sistema para impressão 
b) Rotina de tratamento de interrupção
DISCOS (HARDWARE)
Existe uma série de tipos de discos. Os mais comuns são: discos rígidos magnéticos, discos ópticos (DVDs e Blu-ray) e discos de estado sólido são cada dia mais populares à medida que eles são rápidos e não contêm partes móveis.
Discos magnéticos / SSD
são cilíndricos
contém trilhas (de acordo com o números de cabeçotes verticalmente)(1/16)
trilhas (setores) (8/32 em discos flexíveis)(centenas em HD)
controlador: circuito que permite a comunicação UCP/HD
RAID (arranjo redundante de discos independente): dispositivo de processamento paralelo para melhorar o desempenho do disco
RAID (DESEMPENHO - CPU / HD)
Situação Hipotética:
4 GB RAM
CPU octa core
HD 1TB (90% de uso)
Qual alocação de arquivos seria conveniente para um bom desempenho?
alocação contígua / alocação encadeada / encadeada com lista de memoria / i-nodes
FORMATACAO DO DISCO
Formatacao de baixo nivel: para iniciar uso do dsico / software
Preambulo: possui bytes para o HW reconhececer o comeco
Dados: 
ECC: possuem informacoes que pode ser usadas em erros de leitura.
ESCALONAMENTO DE BRAÇO DE DISCO
LER/ESCREVER (TEMPO) (EFICIÊNCIA)
tempo de busca
atraso de rotação
tempo de transferência real dos dados
deslocamento do braço na busca:
a)FCFS: aceita a solicitação e atende
b)Busca curta: atende a solicitação mais próxima (centralização do braço)
c) Algoritmo do elevador: algoritmo de direção sobe e desce.
TRATAMENTO DE ERROS
Blocos defeituosos: 
Armazenamento estável: criam ações (leitura, escrita, e recuperação) paralelas em blocos 
RELOGIOS (TEMPORIZADORES)
Função: gerar interrupções na UCP a intervalos conhecidos. 
Outras ações:
1.	 Manter o horário do dia.
2.	 Evitar que processos sejam executados por mais tempo do que o permitido.
3.	 Contabilizar o uso da CPU.
4.	Tratar a chamada de sistema alarm feita pelos processos do usuário.
5.	 Fornecer temporizadores watch dog para partes do próprio sistema.
6.	 Gerar perfis de execução, realizar monitoramentos e coletar estatísticas.
5.4.2 Formatação de disco
Antes que o disco possa ser usado, cada prato deve passar por uma formatação de baixo nível feita por software. A formatação consiste em uma série de trilhas concêntricas, cada uma contendo uma série de setores, com pequenos intervalos entre eles.
O tamanho da porção de dados é determinado pelo programa de for matação de baixo nível.
 INTERFACES COM USUÁRIO: TECLADO,MOUSE,MONITOR
Todo computador de propósito geral tem um teclado e um monitor. Embora o teclado e o monitor sejam dispositivos tecnicamente separados, eles funcionam bem juntos.
 Teclado Mouse Monitor
SOFTWARE DE ENTRADA
As informações do usuário vêm fundamentalmente do teclado e do mouse. Em um computador pessoal,o teclado contém um microprocessador embutido que em geral comunica-se por uma porta serial com um chip controlador na placa-mãe.Uma interrupção é gerada sempre que uma tecla é pressionada e uma segunda é gerada sempre que uma tecla é liberada. Em cada uma dessas interrupções, o driver do teclado extrai as informações sobre o que acontece na porta de E/S associada com o teclado.
.
SOFTWARE DO TECLADO
O número no registrador de E/S é o número da tecla,chamado de código de varredura, não o código de ASCII.
Características: 
Teclados normais têm menos de 128 teclas, então apenas 7 bits são necessários para representar o número da tecla. O oitavo bit é definido como 0 quando a tecla é pressionada e 1 quando ela é liberada.
SOFTWARE DE MOUSE
A maioria dos PCs tem um mouse, ou às vezes um trackball. 
Um tipo comum de mouse tem uma bola de borracha dentro.
O movimento na direção leste-oeste faz girar o bastão paralelo ao eixo y; o movimento na direção norte-sul faz girar o bastão paralelo ao eixo x.
Mouses podem ter um, dois, ou três botões,
Os mouses wireless.
O mouse indica apenas mudanças na posição, não a posição absoluta em si.
Muitas interfaces gráficas fazem distinções entre cliques simples e duplos.
.
SOFTWARE DE SAÍDA
JANELAS DE TEXTO:
A saída é mais simples do que a entrada quando a saída está sequencialmente em uma única fonte, tamanho e cor. Na maioria das vezes, o programa envia caracteres para a janela atual e eles são exibidos ali.
SISTEMA X WINDOW
Quase todos os sistemas UNIX baseiam sua interface de usuário no Sistema X Window.
desenvolvido no MIT,como parte do projeto Athena na década de 1980.
Quando o X está executando em uma máquina, o software que coleta a entrada do teclado e mouse e escreve a saída para a tela é chamado de servidor X.
Clientes X.
O X é apenas um sistema de gerenciamento de janelas.TERMINAIS DE REDE X WINDOWS
Algumas taxas de transferência típicas
● Existe uma grande quantidade de software relacionado à E/S com objetivos bastante definidos (e distintos dos hardwares)
● Independência de dispositivo: Programas de usuários devem ser capazes de acessar qualquer classe de dispositivo de E/S de uma mesma maneira (ex: disco, pen-drive, DVD etc) 
● Nomeação uniforme: Dispositivos de uma mesma classe devem ter “nomes” semelhantes (ex: c:\, d:\ )
● Tratamento de erros: Erros devem ser tratados tão “próximo” do hardware quanto possível (controlador do dispositivo, seu driver, outras partes do SO). Apenas em último caso um erro deve ser informado aos programas dos usuários ● Tipo de transferência: Que pode ser síncrona ou assíncrona
● Camadas do software de E/S 
● Em boa parte dos sistemas operacionais, o software de E/S é dividido em quatro camadas 
● Cada uma das camadas possui funções e interfaces bem definidas, para as camadas adjacentes 
● Camadas do software de E/S 
● Tratadores de interrupção : É a parte de mais baixo nível do tratamento de E/S (escrita em linguagem assembly); Executa sempre que um dispositivo gera uma interrupção; Normalmente, ao final do seu trabalho, o tratador de interrupção põe em execução o driver do dispositivo; Por estar muito “próximo” do hardware, seu trabalho envolve diversas questões de baixo nível, e está longe de ser literal
● Camadas do software de E/S 
● Drivers de dispositivos: É um código (escrito em linguagem C) que controla o funcionamento de um dispositivo ou conjunto deles 
● Um único driver pode controlar vários discos SATA, no entanto, uma placa de som e uma de rede serão certamente controlados por drivers distintos: O driver acessa diretamente o hardware, sendo considerado parte do sistema operacional ● Drivers normalmente são escritos por terceiros e seus bugs são a maior causa de crashs dos SOs
O sistema operacional deve deter
minar o que um driver pode fazer, 
 e como ele interage com o seu 
restante.
● Camadas do software de E/S 
● Software de E/S independente de dispositivo – Esta terceira camada, entre outras funções, “tenta” oferecer aos programas de usuário uma interface única e independente do dispositivo que está sendo acessado – Outras funções desta camada incluem 
● Disponibilização de buffers para leitura e escrita em dispositivos 
● Disponibilização de relatórios de erros ocorridos nos dispositivos 
● Alocação e liberação de dispositivos “dedicados”. Ex: gravador de DVD (só podem ser utilizados por um programa por vez)
● Camadas do software de E/S 
● Software de E/S do espaço do usuários; A maior parte do software de E/S está no interior do SO, mas uma pequena parte é constituída de bibliotecas; Programas de usuários normalmente fazem uso das funções disponibilizadas nestas bibliotecas, que por sua vez realizam as chamadas reais ao sistema 
● Um exemplo clássico são as bibliotecas C padrão existentes nos sistemas operacionais: Suas funções permitem, aos programas de usuários, abrir, fechar, ler e escrever em arquivos, imprimir algo na tela etc
● Camadas do software de E/S 
● Relacionamento entre camadas
CLIENTES MAGROS(thin clients)
Ao longo dos anos, o paradigma do computador principal oscilou entre a computação centralizada e a descentralizada. Os primeiros computadores, como o ENIAC, eram na realidade computadores pessoais, pois apenas uma pessoa podia usar um de cada vez.Então vieram os sistemas de tempo compartilhado, nos quais muitos usuários remotos em terminais simples compartilhavam de um grande computador central.
Consumo de energia de várias partes de um computador laptop
• Execução em velocidade máxima do relógio
 • Cortando a voltagem pela metade 
– corta a velocidade do relógio também pela metade,
 – consumo de energia cai para 4 vezes menos
• Dizer aos programas para usar menos energia 
– pode significar experiências mais pobres para o usuário 
• Exemplos – muda de saída colorida para preto e branco
 – reconhecimento de fala reduz vocabulário
 – menos resolução ou detalhe em uma imagem
image13.jpg
image2.png
image14.png
image11.png
image5.png
image1.png
image6.png
image4.png
image15.png
image17.png
image18.png
image16.png
image12.png
image10.png
image19.png
image7.png
image9.png
image3.png
image8.png
image23.png
image25.png
image20.png
image26.png
image22.png
image21.png
image24.png
image27.png

Mais conteúdos dessa disciplina