25
Entrada e Saída Sistemas Operacionais 1

Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

Embed Size (px)

Citation preview

Page 1: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

1

Entrada e Saída

Sistemas Operacionais

Page 2: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

2

Princípios básicos de hardware

• Periférico é um dispositivo conectado a um computador de forma a possibilitar sua interação com o mundo externo

• Os periféricos são conectados ao computador através de um componente denominado interface

• As interfaces são interconectadas aos barramentos internos do computador

• As interfaces possuem registradores internos, através dos quais são acionadas

• Interfaces possuem um microprocessador (controlador ou controladora) dedicado a realização e controle das operações de entrada e saída

Page 3: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

3

Arquitetura de Entrada e Saída

• Dispositivo de E/S possui uma parte mecânica e outra eletrônica

Page 4: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

• Tipos de conexão e transferência de dados

DISPOSITIVOSI/O

INTERFACESDO

COMPUTADOR BARRAMENTO

INTERCONEXÃO FÍSICA DAS INTERFACES COM DISPOSITIVOS I/O

INTERFACE SERIAL

TRANSFERÊNCIA DE

DADOS

INTERFACE PARALELA

Apenas com uma linha paratransferência de dados

(bit a bit)

Mais de uma linha paratransferência de dados

Ex.: n x 8 bits

Arquitetura de Entrada e Saída

Page 5: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

Dispositivos de Entrada e Saída

• Classificados de acordo com o tipo de entidade que interagem

– Comunicação do homem com o computador• Teclado, mouse, monitor, etc

– Comunicação entre computadores• Modems, placas de redes, etc

– Aqueles destinados ao armazenamento de informações• Fitas, Discos, CD-Rom, etc

Page 6: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

Dispositivos de Entrada e Saída

• Classificados de acordo com o fluxo de dados

– De entrada– De saída– De entrada e saída

Page 7: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

7

Dispositivos de Entrada e Saída

• Classificados como:– Orientados a caractere

• Unidade de transferência é o caractere– Ex. Teclado, interface serial (mouse)

– Orientados a bloco• Unidade de transferência de dados é um bloco de caracteres

(tamanho fixo)– Ex. disco

Page 8: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

8

Tipos de conexão e transferência de dados

• Dois tipos de intefaces– Interface Serial

• Apenas uma linha p/ transferência – Interface Paralela

• Mais de uma linha

Page 9: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

9

Dispositivos de Entrada e Saida

• Apresentam características próprias– Taxa de transferência de dados– Complexidade de controle– Unidade de transferência– Tratamento de erros

Page 10: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

10

Como controladores e SO interagem?

• Controladora é programada via registradores da interface

Page 11: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

11

Espaço de endereçamento

– Conjunto de endereços de memória que o processador consegue acessar diretamente

– A forma de acessar os registradores (das interfaces) dos periféricos é definida no projeto do processador

Page 12: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

12

Técnicas para realizar E/S

• E/S programada• E/S orientada à interrupções• Acesso direto à memória

Page 13: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

13

E/S programada

• Toda interação entre o processador e o controlador é de responsabilidade do programador

• Ciclo de funcionamento– Envia comando ao controlador– Espera término do comando

• Processador espera o término da operação

Page 14: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

14

E/S orientada à interrupção

• Processador inicia a operação de E/S

• Enquanto interrupção não ocorre, a CPU pode executar outras tarefas (portanto, evita desperdício de tempo de CPU)

Page 15: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

15

DMA – Acesso direto à memória

• Transfere diretamente um bloco de dados entre o dispositivo E/S e a memória

• Interrupção só quando acaba a transferência de todo o bloco

• Processador só se envolve com E/S no início e no fim da transferência

Page 16: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

16

Objetivos da gerência de E/S

• Eficiência• Uniformidade é desejável:

– Todos dispositivos enxergados da forma mais uniforme possível

• Esconder os detalhes (estes são tratados pelas camadas de mais baixo nível)

Page 17: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

17

Princípios básicos de sw de E/S

• Subsistema de E/S é complexo dada a diversidade de periféricos

• Padronizar ao máximo para reduzir número de rotinas– Novos dispositivos não alteram a visão do usuário em

relação ao SO• Organizado em camadas

Page 18: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

18

Estrutura do subsistema E/S

driverteclado

driverSCSI

driverEIDE

driverfloppy

driverrede

Hardware

E/S independente do dispositivo

E/S nível de usuário

Interface padrão para drivers de dispositivos (API)

Softw

are

Sis

tem

a op

erac

iona

l

Page 19: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

19

Visão Geral do software de E/S

• Tratador de interrupção– É acionado ao final da operação de transferência– Aciona driver

• Driver de dispositivo– Recebe requisições– Configura (aciona) o controlador

Page 20: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

20

Driver de Dispositivo

• Conjunto de estruturas de dados e funções que controlam um ou mais dispositivos com interface bem definida

• Fornecido pelo fabricante do periférico• Vantagens:

– Isola código especifico do dispositivo– Facilidade de adicionar novos drivers– O kernel fica isolado de modificações dos drivers– O sistema tem uma visão uniforme dos dispositivos

Page 21: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

21

E/S Independente de dispositivo

• Escalonamento– Determina melhor ordem para atendimento à

requisições de E/S– Divide de forma justa o acesso a periféricos

• Manipulação de buffers– Área de armazenamento temporária

• Direitos de acesso– Controlar acesso à dispositivos de acordo com as

suas permissões • Tratamento de erros

– Informar à camada superior que houve erro

Page 22: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

22

E/S a nível de usuário

• Implementação, em nível de linguagem de programação, de rotinas que permitem programas fazer acesso à dispositivos

• Estas rotinas estão em bibliotecas da linguagem• Interagem com as funções da API do SO (chamada

de sistema)

Page 23: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

23

Disco

• Dispostos em alturas diferentes com auxílio de um eixo central (spindle).

• A tecnologia atual permite superpor até 8 discos.• As duas superfícies de cada disco são recobertas

por uma película magnética na qual os dados são gravados.

• O eixo gira a uma rotação constante (ex. 5400 rpm) • Os cabeçotes de leitura/gravação (um para cada

superfície de disco) realizam movimentos de vai-e-vem (seek)

Page 24: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

24

Disco

Page 25: Entrada e Saída Sistemas Operacionais 1. Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

25

Disco

• Tempo de acesso

• Onde – taccess é o tempo de acesso total– tseek é o tempo de movimentação do cabeçote– tlatency é o tempo de atraso rotacional– ttransfer é o tempo para transferir os dados

tttt transferlatencyseekaccess