ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas...

21
Machado/Maia – complem. por Sidney Lucena (UN 12/1 Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Operacionais Francis Berenger Machado Francis Berenger Machado Luiz Paulo Maia Luiz Paulo Maia Complementado por Sidney Lucena (Prof. Complementado por Sidney Lucena (Prof. UNIRIO) UNIRIO) Capítulo 12 Capítulo 12 Gerência de Dispositivos Gerência de Dispositivos

Transcript of ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas...

Page 1: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/1

Arquitetura de Sistemas Arquitetura de Sistemas OperacionaisOperacionais

Francis Berenger MachadoFrancis Berenger MachadoLuiz Paulo MaiaLuiz Paulo Maia

Complementado por Sidney Lucena (Prof. UNIRIO)Complementado por Sidney Lucena (Prof. UNIRIO)

Capítulo 12Capítulo 12Gerência de DispositivosGerência de Dispositivos

Page 2: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/2

Introdução

• Gerência de dispositivos

C on tro lado res

D ispo sitivo s d e E/ S

Processo

Sistem a d e A rq u ivo s

D evice D rivers

Sub sistem a d e E/ S

O perações d e E/ S

Mo

do

Usu

ári

oM

od

o K

ern

el

I nd epend ented o d isp ositivo

(a )

D ep end en ted o d isp ositivo

(b )

SOFT

WA

RE

HA

RD

WA

RE

Page 3: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/3

Introdução

• Subsistema de E/S isola complexidade dos dispositivos das camadas superiores (sistema de arquivos ou aplicação)– Permite flexibilidade ao SO para comunicação com

qualquer tipo de periférico

• Detalhes do periférico (velocidade de transferência, tipos de operações, etc) ficam a cargo do device driver de cada dispositivo

Page 4: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/4AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

Acesso ao Subsistema de Entrada e Saída

• Operações de entrada/saída devem ser as mais simples possíveis para as aplicações

• SO possui conjunto de rotinas que possibilita comunicação com qualquer dispositivo:– Rotinas de Entrada/Saída– Fazem parte do Subsistema de E/S– Permitem operações de E/S sem a necessidade de se

saber detalhes do dispositivo acessado

• Operações de E/S realizadas via System Calls de E/S– Chamam rotinas de E/S do núcleo do SO– Por ex., um programa que manipula arquivos o fará

qualquer que seja a mídia onde o arquivo se encontra

Page 5: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/5AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

Acesso ao Subsistema de Entrada e Saída

• Comunicação com system calls de E/S:– Relacionamento criado na geração

do código executável– System calls realizadas

diretamente no código de alto nível do programa

• Operação de E/S síncrona:– Processo fica em espera até

término da operação– Maioria dos comandos em alto nível

• Operação de E/S assíncrona:– Processo não fica em espera,

término da operação é sinalizado

D evice d r ivers

D ispo sitivo s d e E/ S

C om an dosd e E/ S

Ro tina s d e E/ S

System ca lls d e E/ S

A plicaçã o

Bib lio tecas

Page 6: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/6AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

Subsistema de Entrada e Saída

• Responsável pela interface (uniforme) entre dispositivos e aplicação:– Cuida das funções comuns a todos os tipos de

dispositivos– Aspectos específicos são tratados pelos device drivers

• Unidades de informação de tamanhos diferentes (p/ex. caracteres ou blocos)

• Em geral, tratamento de erros nas operações de E/S

– Erros podem ser tratados de maneira uniforme usando subsistema de E/S

– Implementa mecanismos de proteção no acesso a dispositivos compartilhados, verifica permissões

– Realiza “bufferização” (cache) das operações de E/S– Padroniza interface com diferentes device drivers

Page 7: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/7AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

Device Drivers • Os drivers, implementam a comunicação entre

subsistema de E/S e controladores dos dispositivos

• Recebem comandos genéricos de acesso e os traduz para comandos específicos do dispositivo, executados pelos controladores

• Cada driver é específico para um tipo de dispositivo, ou grupo de dispositivos– Ex.: drivers de disco, de rede, de vídeo, etc

• Diretamente integrado às funções do controlador– Conhece características como registradores,

funcionamento e comandos– Inicializa e gerencia seu funcionamento

Page 8: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/8AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

Device Drivers

Processo

D r iver d eIm presso ra

Sub sistem a d e E/ S

D r iver d eD isco

D r iver d eFita

Page 9: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/9

Device Drivers• Na leitura síncrona de um dado em disco:

– Driver recebe solicitação de leitura de um dado bloco– Informa ao controlador do disco qual cilindro, trilha e

setor onde o bloco se localiza– Inicia operação de leitura, processo colocado em espera– Controlador gera interrupção de término, driver verifica

se há erros e transfere dados subsistema de E/S e, portanto, para o processo, que será acordado

Ro tinad e E/ S

D r iverd e D isco

C on tro lado rd e D isco

Le r b lo co n Le r seto r x

D iscos

Page 10: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/10

Device Drivers• Drivers fazem parte do núcleo do SO

– Códigos reentrantes que executam em modo kernel– Qualquer bug prejudica todo o sistema, deve ser

cuidadosamente desenvolvido e testado

• Geralmente escritos em assembly• Em geral, fabricantes do dispositivo desenvolvem

drivers deste dispositivo para diferentes Sos– Procura evitar problemas de bug dado o grau de

dependência entre SO e drivers

• Inclusão de novo driver, algumas vezes, exige recompilação do kernel (SOs mais antigos)

Page 11: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/11

Controladores • Componentes de hardware responsáveis por

manipular diretamente os dispositivos de E/S– Geralmente, pode estar numa placa independente

conectada a um slot ou estar na placa mãe– Possui memória e registradores próprios usados na

execução das instruções do driver

M em óriaPr in cip a lU C P

C on tro lado rd e

Im p resso ra

C on tro lado rd e

D isco

C on tro lado rd e

Fita

Im p resso ra D isco Fita

Page 12: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/12

Controladores• A técnica de DMA (Direct Memory Access) é

usada para transferir um bloco entre o buffer interno do controlador e o buffer de E/S da memória principal sem intermédio da CPU– Evita ocupar CPU com a transferência do bloco– Controlador de DMA pode fazer parte do controlador do

dispositivo ou ser independente

• Em geral, controladores de disco usam técnicas de cache para melhorar desempenho

Page 13: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/13

Controladores• Operação de leitura usando DMA:

– CPU, através do driver, inicializa registradores do controlador de DMA e fica liberada

– Controlador de DMA solicita ao controlador de disco a transferência do bloco para seu buffer interno

– Controlador de disco verifica se não há erros– Controlador de DMA transfere bloco para buffer de E/S

na MP e gera interrupção para a CPU

U C P

C o n tro la do rd e D M A

Reg istra do res

Bu ffer

M em ó riaPr in cip a l

Bu ffer de E/ S

C o n tro la do rd e

D isco

D isco

1

2

3

4

Page 14: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/14

Controladores

• O SCSI (Small Computer System interface) é um padrão popular de conexão de dispositivos

• Define padrões de hardware e software para conexão de dispositivos de fabricantes diferentes

• SO deve possuir driver SCSI e hardware para conexão dos periféricos deve possuir controlador SCSI

Dis

po

siti

vos

SCSI

U C P

M em ór iaPr in cip a l

Dis

po

siti

vos

o-S

CSI

Page 15: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/15

Dispositivos de Entrada e Saída

• Permitem comunicação do SO com o mundo externo

• Podem ser só de entrada, só de saída ou ambos• Conforme forma de armazenamento dos dados,

podem ser classificados como estruturados e não-estruturados– Os estruturados (block devices) usam blocos de

tamanho fixo, cada qual com seu endereço• Ex.: discos magnéticos e ópticos, fitas magnéticas

– Os não-estruturados (character devices) enviam ou recebem seqüência de caracteres sem estrutura definida, portanto não endereçável

• Ex.: Terminais, impressoras e placas de rede

Page 16: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/16

Discos Magnéticos

• Constitui-se por vários discos sobrepostos, unidos por um mesmo eixo vertical, girando a velocidade constante

• Cada disco possui trilhas concêntricas divididas em setores

• Trilhas de diferentes discos numa mesma posição vertical formam um cilindro

• Braço se move no sentido radial

Page 17: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/17

Discos Magnéticos

• Tempo de acesso é função do tempo de seek, latência rotacional e tempo de transferência

• Envolve aspectos mecânicos e, portanto, é extremamente longo se comparado ao número de instruções que poderiam ser executadas num mesmo intervalo de tempo

• Alguns sistemas usam área da MP como espelho de parte do disco: RAM Disk– Similar à técnica de

cache

Page 18: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/18

Desempenho, Redundância e Proteção de Dados

• RAID: Redundant Arrays of Inexpensive Disk– Técnicas de gerenciamento de

discos para otimizar operações de E/S, implementar redundância e proteção dos dados

– Diferentes técnicas que utilizam múltiplos discos, publicadas em 7 níveis (0 a 6)

– Podem ser implementadas diretamente nos controladores de discos (RAID externo), no SO ou através de software específico

Sistem aO peracion a l

Sistem aO peracion a l

So ftw areRA ID

Page 19: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/19

Desempenho, Redundância e Proteção de Dados

• O RAID cria dispositivo virtual conhecido como array de discos– Grupo de discos físicos tratados como se fosse um

único disco– Grande capacidade de armazenamento, alto

desempenho e confiabilidade nos dados armazenados

• RAID 0: Faz disk striping, dividindo igualmente pedaços dos arquivos (stripes) pelos discos– Operações de E/S podem ser paralelizadas– Não faz redundância

Page 20: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/20

Desempenho, Redundância e Proteção de Dados

• RAID 1: Espelhamento– Replica conteúdo do disco primário em um ou mais

discos secundários ou espelhos, permitindo redundância no caso de falha

– Toda escrita no disco primário é reproduzida nos espelhos, mas overhead é pequeno

– Capacidade útil só vai até 50%

Page 21: ASO – Machado/Maia – complem. por Sidney Lucena (UNIRIO) 12/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado.

AS

O –

Machado/Maia

– co

mpl

em. p

or S

idne

y L

ucen

a (U

NIR

IO)

12/21

Desempenho, Redundância e Proteção de Dados

• RAID 5: Acesso independente com paridade distribuída– Distribui os dados entre discos do array e implementa

redundância baseada em paridade (maior overhead)– No caso de falha, dados podem ser recuperados através

de algoritmo de reconstrução• Faz operação inversa entre dados de paridade e

dados restantes– Requer espaço adicional menor para ter redundância

• Capacidade útil sobe para ~80%