Capítulo 5 Gerência de Dispositivos



Documentos relacionados
UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Memória Secundária. Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé

Sistemas Operacionais Gerência de Dispositivos

Sistemas Operacionais

Fundamentos de Sistemas Operacionais

Gerenciador de Entrada/Saída

Sistemas Operacionais: Sistema de Arquivos

Setores Trilhas. Espaço entre setores Espaço entre trilhas

Sistemas Operacionais

Notas da Aula 16 - Fundamentos de Sistemas Operacionais

Sistemas Operacionais

RAID. Propõe o aumento da confiabilidade e desempenho do armazenamento em disco. RAID (Redundant Array of Independent Disks )

FORMATAÇÃO DE DISCO SETORES

Arquitetura e Organização de Computadores

O que é RAID? Tipos de RAID:

Sistemas Operacionais

Níveis de RAID - RAID 0

AVALIAÇÃO À DISTÂNCIA 1 GABARITO

6 - Gerência de Dispositivos

Admistração de Redes de Computadores (ARC)

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I: MEMÓRIA EXTERNA RAÍ ALVES TAMARINDO RAI.TAMARINDO@UNIVASF.EDU.BR

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Gerência de Entrada/Saída

Sistemas Operacionais Entrada / Saída. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Organização de Computadores 1

Introdução à Organização de Computadores Memória Secundária

Auditoria e Segurança de Sistemas Aula 03 Segurança off- line. Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com

RAID Redundat Arrays of Inexpensive Disks

RAID 1. RAID 0 2. RAID 1

Arquitetura de Computadores. Sistemas Operacionais IV

Sistemas Operacionais

Motivação. Sumário. Hierarquia de Memória. Como registramos nossas histórias (num contexto amplo)?

Organização de Arquivos

Organização e Arquitetura de Computadores I

Entrada e Saída. Prof. Leonardo Barreto Campos 1

Armazenamento Secundário. SCE-183 Algoritmos e Estruturas de Dados II

SW DE E/S INDEPENDENTE DE DISPOSITIVO

Dispositivos de Memória

Sistemas Operacionais

Conceitos Básicos. Conceitos Básicos Memória

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Sistemas de armazenamento

Gerenciamento de Entrada e Saída (E/S)

Organização e Arquitetura de Computadores

Estruturas do Sistema de Computação

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

Tópicos Especiais em Informática

EA960 Redundância e Confiabilidade: RAID

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Infraestrutura de Hardware. Entrada/Saída: Armazenamento

Dispositivos de Armazenamento em massa. José Roberto B. Gimenez

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

FACENS Engenharia Mecatrônica Sistemas de Computação Professor Machado. Memória Armazenamento Sistema de Arquivos

5 Entrada e Saída de Dados:

Introdução à Organização de Computadores Memória Secundária

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Fundamentos de Sistemas Operacionais

Entrada e Saída (Input/Output)

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani

Profs. Deja e Andrei

Sistemas Operativos. Sumário. Estruturas de sistemas de computação. ! Operação de um sistema de computação. ! Estruturas de E/S

Fundamentos de Arquivos e Armazenamento Secundário

Gerência do Processador

Capítulo 4 Gerência de Processador

Dispositivos de Armazenamento. Prof. Flávio Humberto Cabral Nunes

Visão Geral de Sistemas Operacionais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

Capítulo 5 Entrada/Saída

Sistemas Operacionais

3. Arquitetura Básica do Computador

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Escalonamento no Linux e no Windows NT/2000/XP

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

ROM-BIOS Inicialização Sistemas de Arquivos Formatação

Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas. Hardware de Computadores

Infraestrutura de Hardware. Memória Virtual

Sistemas Operacionais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES DISPOSITIVOS DE ENTRADA E SAÍDA. Prof. Dr. Daniel Caetano

Arquitetura e Organização de Computadores I

1- Questão. a) 12 M b) 22 M c) 18 M d) 14 M e) 36 M. Resposta: e

Disciplina: Introdução à Engenharia da Computação

UCP. Memória Periféricos de entrada e saída. Sistema Operacional

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

Tecnologia de armazenamento Intel (Intel RST) RAID 0, 1, 5, 10, Matrix RAID, RAID -Pronto

Dispositivos de Entrada e Saída

Conceitos de Entrada e Saída

Visão geral do sistema de armazenamento e hierarquia de memória

Introdução aos Sistemas Operativos

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas

Sou o professor Danilo Augusto, do TIParaConcursos.net, e lá costumo trabalhar temas relacionados a Redes de Computadores e Sistemas Operacionais.

SISTEMAS OPERACIONAIS

Memória Cache. Prof. Leonardo Barreto Campos 1

Armazenamento Secundário. SCE-183 Algoritmos e Estruturas de Dados II

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

SISTEMAS OPERACIONAIS 2007

Arquitetura de Computadores I

Transcrição:

DCA-108 Sistemas Operacionais Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Capítulo 5 Gerência de Dispositivos Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização dos dispositivos de entrada e saída Aspectos de Hardware Aspectos de Software Aspectos de desempenho de dispositivos de entrada e saída Objetivo Apresentar de forma sistemática os principais dispositivos de entrada e saída existentes atualmente. Estudar as estruturas associadas com dispositivos de entrada e saída. Estudar aspectos de desempenho. Luiz Affonso Guedes 3 Luiz Affonso Guedes 4 Recordando Cenário Atual Execução concorrente de CPUs e devices competindo por recursos. Recordando Os 4 componentes de sistema computacional Nosso objetivo de estudo Luiz Affonso Guedes 5 Luiz Affonso Guedes 6 1

Recordando Objetivos de sistema operacional Executar programas de forma conveniente para o usuário. Gerenciarosrecursosde software e hardware como um todo. Utilizar os recursos de hardware de forma eficiente e segura. Luiz Affonso Guedes 7 Tipos de Processos CPU Bound I/O Bound Tempo de Acesso a Dispositivos é elevado! Luiz Affonso Guedes 8 Hardware - Recordando Hardware - Recordando Periféricos Dispositivos conectado de modo a possibilitar a interação do computador com o mundo externo. Parte mecânica + Parte eletrônica. Conectados via interfaces de hardware. Conexãovia barramentode dados Controladores de dispositivos: processamento dedicado Luiz Affonso Guedes 9 Luiz Affonso Guedes 10 Hardware de Entrada/Saída Alguns tipos de dispositivos de E/S Há uma grande variedade de dispositivos de Entrada/Saída Forma de transferência de dados Orientado a caracter Teclado, interface serial (RS-232) Orientado a bloco de caracter Disco, fitas DAT. Outros tipos Relógio, memória de vídeo mapeada em espaço de E/S. Velocidade de transferência Luiz Affonso Guedes 11 Luiz Affonso Guedes 12 2

Sistema de E/S Estrutura Típica de Barramento Sistema baseado em interrupção Conceitos comuns: Porta Barramento Controlador (adaptador) de dispositivo Dispositivos: Mapeado em memória Acesso Direto à Memória (DMA) Luiz Affonso Guedes 13 Luiz Affonso Guedes 14 Camadas do Sistema de E/S do SO Sistema Orientado a Interrupção Luiz Affonso Guedes 15 Luiz Affonso Guedes 16 Sistema Orientado a Interrupção Sistema Orientado a Interrupção O acesso ao controlador de dispositivo é efetuado pelo núcleo do SO Uso de System Call Luiz Affonso Guedes 17 Luiz Affonso Guedes 18 3

E/S por Mapeamento em Memória Acesso Direto à Memória - DMA DMA Direct Memory Access Usado para evitar que as transferência de dados entre dispositvos e memória seja realizada via CPU. Aumento de desempenho Requer um controlador DMA A transferência de dados é relizada diretamente entre o dispositivo de E/S e a memória, sem passar pela CPU. Luiz Affonso Guedes 19 Luiz Affonso Guedes 20 Acesso Direto à Memória - DMA DMA Execução mais Detalhada Luiz Affonso Guedes 21 Luiz Affonso Guedes 22 Camadas do Sistema de E/S do SO Device Drivers Camada de software que abstrai detalhes específicos de hardware. Fornece acesso aos controladores dos dispositivos de forma padronizada. Cada foenecedor de controlador de disposito deve fornecer o seu device driver. Luiz Affonso Guedes 23 Luiz Affonso Guedes 24 4

Device Drivers Device Drivers Luiz Affonso Guedes 25 Luiz Affonso Guedes 26 Camada de Software Independente de Dispositivo Padronizar o acesso aos dispositivos Tratamento de erros e exceções Políticas de proteção do dispositivos Camada de Software Independente de Dispositivo Importância da padronização Luiz Affonso Guedes 27 Luiz Affonso Guedes 28 Camada de Software Independente de Dispositivo Bufferização e Proteção Camada de Software Independente de Dispositivo Padronização e Bufferização Luiz Affonso Guedes 29 Luiz Affonso Guedes 30 5

Camadas do Sistema de E/S do SO Principais Funcionalidades Mecanismo de Comunicação (a)síncrona (b) Assíncrona (multithreading) Luiz Affonso Guedes 31 Luiz Affonso Guedes 32 Dispositivos Periféricos Típicos Disco Magnético Há uma grande variedade de dispositivos de E/S Impossível se analisar todos O disco é um dos dispositivos periféricos mais importantes Armazenamento de dados Suporte a implementação de memória virtual Aspectos relacionados com tolerância a falhas e segurança de dados (RAID) Disco de plástico ou metal recoberto de material magnético Pratos Dados são gravados e, posteriormente, recuperados através de uma mola condutora (cabeçote de leitura e gravação) Escrita: o cabeçote magnetiza o disco, via a aplicação de uma tensão elétrica. Leitura: a variação do campo magnético provocado pela rotação do disco, gera uma corrente elétrica no cabeçote de leitura. Rotação típica: 60 a 200 rotações por segundo Luiz Affonso Guedes 33 Luiz Affonso Guedes 34 Disco Magnético - Componentes Pratos Cilindros Setores Trilhas Gaps Braços Cabeçotes Densidade Simples Dupla Disco Magnético - Organização Prato é organizado em trilhas Círculos concêntricos A largura da trilha corresponde à largura do cobeçote de leitura/escrita Trilhas são separadas por Gaps, para evitar problemas de alinhamentos Luiz Affonso Guedes 35 Luiz Affonso Guedes 36 6

Disco Magnético - Organização Quantidade de bits por trilha Constante Trilhas mais internas possuem uma densidade maior de bits/polegada Tecnologia CAV (Constant Angular Velocity) Variável Tecnologia CLV (Constant Linear Velocity) CDROM Disco Magnético - Organização A transferência de dados para o disco é feita em blocos Tipicamente, bloco é menor que a capacidade de uma trilha Trilha é subdividida em unidades de tamanho fixo setores Setores Dados Informações de Controle A definição de trilhas e setores é feita pela formatação física do disco na fábrica Luiz Affonso Guedes 37 Luiz Affonso Guedes 38 Disco Magnético - Organização Disco Magnético - Exemplo Disco com 4.1 Gigabytes 255 cabeças 63 setores de 512 bytes 525 cilindros Capacidade = 255 x 63 x 512 x 525 O sexagésimo quarto setor mantém um mapa de setores na trilha A tecnologia atual permite até 8 pratos com 16 cabeçotes A diferença no número de cabeçotes é lógico Luiz Affonso Guedes 39 Luiz Affonso Guedes 40 Disco Magnético Acesso a Dados Disco Magnético Tempo de Acesso a Dados Menor unidade de transferência é um bloco lógico Composto por um ou mais setores físicos Acessar dado implica em localizar trilha, superfície e setor. Método CHS (Cylinder, Head, Sector) Método LBA (Linear Block Addressage) Conversão de bloco lógico para sua localização física não é um mapeamento direto, pois pode haver setores defeituosos, além do número de setores por trilha não ser constante. Tempo de posicionamento (seek time) Tempo necessário para posicionar o cabeçote na trilha desejada Tempo de latência rotacional Tempo necessário para atingir o início do setor a ser lido/escrito Tempo de transferência Tempo para escrita/leitura dos dados Luiz Affonso Guedes 41 Luiz Affonso Guedes 42 7

Disco Magnético Tempo de Acesso a Dados Tempo de Acesso a Dados - Exemplo Acessar um arquivo de dados de 1.3Mbytes armazenado em disco com as seguintes características: Tseekmédio = 10ms. Rotação = 10.000rpm 512 bytes por setor 320 setores por trilha Caso 1: Acesso seqüencial (só há 1 Tseek) Tacesso = 10 + 8x(3+6) = 82ms Caso 2: Acesso randômico (um setor por leitura) Tacesso = 2560 (10 +3+ 0.01875) = 33,328s Luiz Affonso Guedes 43 Luiz Affonso Guedes 44 Entrelaçamento (Interleaving) Forma de aumentar o desempenho no acesso ao disco Objetivo é evitar a latência rotacional em setores adjacentes Técnica consiste em numerar os setores não mais de forma contígua mas sim com um espaço entre eles. Escalonamento de Disco Tratar E/S em disco de forma eficiente se traduz em obter um tempo de acesso rápido e explorar ao máximo a largura de banda do disco Diminuição do tempo de posicionamento (seek) Software de controle Algoritmo de escalonamento Diminuição do tempo de latência rotação tecnologia/hardware Diminuição do tempo de transferência Tecnologia/hardware Largura de Banda Número total de bytes transferidos, dividido pelo tempo decorrido entre o primeiro acesso e a conclusão da transferência Luiz Affonso Guedes 45 Luiz Affonso Guedes 46 Escalonamento de Disco Algoritmos para diminuir o tempo de seek Algoritmos de escalonamento do disco FCFS, SSTF, SCAN, C-SCAN Exemplo: Disco organizado em 200 trilhas (0-199) Posição inicial do cabeçote: trilha 53 Atender a seguinte fila de requisições 98, 183, 37, 122, 14, 124, 65, 67 First Come First Served (FCFS) Acessa na ordem que as requisições são solicitadas Para o exemplo, obtém-se um deslocamento total de 640 trilhas/cilindros Luiz Affonso Guedes 47 Luiz Affonso Guedes 48 8

SSTF Shortest Seek Time First Seleciona a requisição com o menor tempo de seek em relação à posição atual do cabeçote Análogo ao algoritmo SJF (Shortest Job First) Pode haver starvation. Total percorrido de 236 trilhas/cilindros SCAN O movimento do cabeçote inicia em uma extremidade do disco e se movimenta em direção a outra extremidade Executa as requisições na ordem desta varredura Ao chegar no outro extremo, inverte o sentido e repete o procedimento Conhecido como algoritmo do elevador Luiz Affonso Guedes 49 Luiz Affonso Guedes 50 SCAN - Exemplo Deslocamento total de 208 trilhas/cilindros C-SCAN É uma variação do algoritmo SCAN Procedimento é idêntico ao SCAN, porém as requisições são atendidas apenas em um sentido da varredura Ao final da varredura, o cabeçote é reposicionado no início do disco O disco é tratado logicamente com uma fila circular Possui um tempo médio de acesso mais uniforme que o algoritmo SCAN Luiz Affonso Guedes 51 Luiz Affonso Guedes 52 C-SCAN - Exemplo C-LOOK Variação do SCAN O cabeçote não necessita atingir o extremo do disco para voltar ao início. Luiz Affonso Guedes 53 Luiz Affonso Guedes 54 9

Outras Variações do SCAN N-Step-SCAN Divide a fila de requisições em um certo número de filas de tamanho N Cada fila é atendida separadamente utilizando se SCAN Novas requisições são inseridas em filas diferentes da que está sendo atendida no momento da chegada destas requisições FSCAN Baseado em duas filas Uma fila recebe todas as novas requisições, enquanto a outra é empregada para atender às requisições já feitas Selecionando um Algoritmo de Escalonamento de Disco SSTF é o método mais comumente empregado SCAN e C-SCAN apresentam um melhor desempenho em discos que possuem um grande número de acesso Fatos importantes Quantidade e tipo de requisições Organização de arquivos e diretórios no disco O algoritmo de escalonamento deve ser escrito como um módulo separado do SO, para permitir sua substituição de forma fácil Luiz Affonso Guedes 55 Luiz Affonso Guedes 56 RAID Redundant Array of Inexpensive Disks Conjunto de discos rígidos visto pelo sistema operacional como um único disco lógico Dados são distribuídos entre os diferentes discos físicos Permite o acesso paralelo a dados aumentando o desempenho Possibilita o armazenamento de informações de paridade para permitir a recuperação de dados em caso de problemas no disco Aumento de possibilidade de falhas já que existem mais dispositivos envolvidos São arranjados em diversos níveis RAID Nível 0 Dados são distribuídos nos diferentes discos do array Requisições a blocos de dados armazenados em discos distintos podem ser efetuados em paralelo O disco lógico é dividido em unidade de distribuição (strips) Strip pode ser blocos físicos, setores, etc. Strip são mapeados de round-robin em N discos Técnica conhecida como stripping Luiz Affonso Guedes 57 Luiz Affonso Guedes 58 RAID Nível 0 RAID Nível 1 Objetivo de RAID é fornecer redundância de dados para fornecer um certo grau de tolerância a falhas No RAID Nível 1, a redundância é obtida através da replicação dos dados Strips são armazenados em 2 conjuntos distintos de discos físicos Denominado de espelhamento (mirroring) Luiz Affonso Guedes 59 Luiz Affonso Guedes 60 10

RAID Nível 1 RAID Nível 2 Vantagens: Leitura de um dado pode ser feita privilegiandose o disco que oferece o menor tempo de seek e atraso rotacional. O procedimento de recuperação em caso de erro é simples Desvantagem: Custo: necessita o dobro do espaço do disco lógico em discos físicos O conjunto de discos é sincronizado Todos os cabeçotes estão posicionados no mesmo ponto (trilha e setor) Todos os discos são acessados na realização de uma requisição de E/S A unidade de stripping ébyte ou palavra Executa o cálculo de código de correção de erros considerando um certo número de bits e armazena o resultado em discos separados Luiz Affonso Guedes 61 Luiz Affonso Guedes 62 RAID Nível 2 RAID Nível 2 O número de discos redundantes é proporcional ao logaritmo da quantidade de dados armazenada no disco 2 discos 1 redundante 4 discos 2 redundantes 8 discos 3 redundantes... Requisição de E/S Leitura: código de correção á calculado para dados lidos e comparado com o código de correção lido. Escrita: cálculo e gravação do código de correção. Luiz Affonso Guedes 63 Luiz Affonso Guedes 64 RAID Nível 3 Similar ao RAID nível 2 A diferença é que existe apenas um disco de redundância O código de detecção de erro é a Paridade Erros aos pares não são detectados RAID Nível 4 A diferença em relação aos níveis 2 e 3 é que os discos são independentes, podendo, então, satisfazer requisições em paralelo. Redundância é obtida calculando-se a paridade bit a bit de cada strip e armazenando o resultado em um disco de paridade Luiz Affonso Guedes 65 Luiz Affonso Guedes 66 11

RAID Nível 5 No RAID 4, o que ocorre se houver um defeito no disco de paridade? Organização similar ao RAID 4. A informação de paridade é distribuída em tos os discos do array de forma roundrobin. RAID Nível 6 Há um segundo cálculo de paridade para um mesmo conjunto de dados Aumento da confiabilidade Suporta falhas aos pares. Luiz Affonso Guedes 67 Luiz Affonso Guedes 68 RAID 0 a 6 RAID 10 Combinação dos níveis RAID 0 e RAID 1 Os dados são divididos em strips (RAID 0) e, então, os discos de armazenamento de dados são espelhados (RAID 1) Luiz Affonso Guedes 69 Luiz Affonso Guedes 70 Implementação de RAID Configurações de RAID podem ser implementadas em hardware (firmware) ou em software RAID em hardware Diferentes discos físicos são organizados de forma a compor um disco lógico O controlador de disco é responsável pela configuração e geração de informação redundante. RAID em software Diferentes partições (discos lógicos) compõem um único disco O RAID é feito devide driver do disco (software) Normalmente implementa RAID nível 1 e RAID nível 5 Luiz Affonso Guedes 71 12