Dispositivos de Armazenamento Prof. Flávio Humberto Cabral Nunes
Conteúdo 1. Discos 2. Fitas magnéticas 3. CD-ROM Capítulo: 2 (APOSTILA).
Dispositivos de Armazenamento Armazenamento permanente Custo menor Capacidade maior Tempo de acesso maior
Discos Dispositivos de acesso direto Também conhecidos como hard disk (HD) ou winchester
Discos
Organização dos Discos Trilha é dividida em setores Setor é a menor porção endereçável do disco Um cilindro é formado por um conjunto de trilhas sobrepostas. Vantagem: toda a informação contida em um cilindro pode ser obtida sem movimentação da cabeça de R/W (seeking).
Organização dos Discos
Estimativa de Capacidade e Espaço Necessários Capacidade da trilha = n setores/trilha X n bytes/setor Capacidade do cilindro = n trilhas/cilindro X capacidade da trilha Capacidade do dispositivo = n cilindro X capacidade do cilindro
Estimativa de Capacidade e Espaço Necessários Exemplo: Queremos armazenar 50.000 registros de tamanho fixo num típico disco de 2,1 gigabytes que contém: 512 bytes/setor 63 setores/trilha 16 trilhas/cilindro 4092 cilindros Quantos cilindros são necessários se cada registro tem 256 bytes?
Estimativa de Capacidade e Espaço Necessários 50000/2 = 25000 setores 63 X 16 = 1008 setores 25000/1008 = 24,8 cilindros
Organização de Trilhas por Setor Nem sempre é possível ler setores adjacentes: a controladora, após ler os dados de um setor, pode precisar processar a informação. Solução: Interleaving Vários setores físicos são colocados entre os setores lógicos. Interleaving fator 5: 5 rotações para ler, em seqüência, 32 setores.
Organização de Trilhas por Setor
Clusters Quando um programa acessa um arquivo, o gerenciador de arquivos do S.O. deve associar o arquivo lógico com as suas posições físicas. O arquivo é visto como uma série de clusters. Um cluster é um número de setores contíguos (depende do interleaving factor).
Clusters Todos os setores de um cluster podem ser acessados sem necessidade de seeking adicional. FAT (File Alocation Table) Cada entrada dá a localização física do cluster associado a um certo arquivo lógico.
Clusters
Extents Se existe espaço disponível, é possível fazer com que um arquivo seja formado apenas por clusters consecutivos extent. O arquivo pode ser buscado com um número mínimo de seeking. Quanto maior o número de extents, mais espalhado o arquivo está pelo disco, e maior é a quantidade de seeking para processá-lo.
Extents
Fragmentação Em geral todos os setores de um dispositivo de disco rígido possuem um mesmo tamanho. O que ocorre se o setor tem 512 bytes e os registros de um arquivo 300 bytes?
Fragmentação Armazena-se um registro por setor. Nesse caso, a recuperação de um registro exige a busca de apenas um setor, mas uma área não utilizada é mantida em cada setor fragmentação interna. Permite-se que os registros sejam quebrados em diversos setores. Nesse caso, podem existir registros cuja recuperação exige a busca de 2 setores.
Fragmentação
Cluster e Fragmentação Interna Cluster é a menor unidade de espaço que pode ser alocada a um arquivo. Quando o número de bytes de um arquivo não é exatamente múltiplo do tamanho do cluster, há fragmentação interna no último extent do arquivo.
Organização de Discos por Blocos Definidos pelo Usuário Em alguns sistemas, pode-se organizar as trilhas do disco por blocos de tamanho variável, cujo tamanho é definido pelo usuário. Blocking factor: número de registros por bloco em um arquivo.
Organização de Discos por Blocos Definidos pelo Usuário Se tivermos registros de 300 bytes, podemos definir blocos de 300 bytes. Assim: Não teremos mais fragmentação interna; Não teremos mais quebra de registro.
Organização de Discos por Blocos Definidos pelo Usuário Esquema de endereçamento: cada bloco é normalmente dividido em sub-blocos. A organização requer a manutenção de algumas informações adicionais para gerenciamento: Count sub-bloco (no. de itens no bloco) Key sub-bloco (chave para o último registro)
Overhead (espaço sem dados) O processo de formatação provoca a inclusão de informações extras. Discos organizados por setor: marcas de início/fim de setor, se o setor é válido ou danificado, etc. Discos organizados por bloco: marcas de sub-blocos e inter-blocos
Overhead (espaço sem dados) Blocos maiores levam a um uso mais eficiente do espaço, pois há um número menor de bytes de overhead, em comparação com o número de bytes ocupados por dados.
Overhead (espaço sem dados) Exemplo: Seja um disco com 20.000 bytes/trilha no qual o overhead/bloco é 300 bytes. Quantos registros podem ser armazenados por trilha para um arquivo contendo registros de 100 bytes. Quantos registros são armazenados se o fator de blocagem é 10? R: 15 blocos, ou 150 registros Quantos registros são armazenados se o fator de blocagem é 60? R: 3 blocos, ou 180 registros
Custo de Acesso a Disco Seek time: tempo necessário para mover o braço de acesso para o cilindro correto. O tempo depende da distância a ser percorrida pelo braço. Utiliza-se o tempo médio de busca necessário para uma certa operação em arquivo, assumindo que as posições iniciais e finais para cada acesso são aleatórias.
Custo de Acesso a Disco Rotational delay (latência rotacional): atraso necessário para a cabeça de leitura do disco chegar ao setor desejado. Em geral considera-se a média:aplica-se o tempo gasto para a cabeça de leitura sair de uma posição aleatória e atingir o setor desejado.
Custo de Acesso a Disco Tempo de transferência: uma vez que o dado está sob a cabeça de leitura, ele pode ser transferido. no de bytes transferidos tempo de transferência = tempo de latência no de bytes em uma trilha
Disco como Gargalo Discos estão ficando cada vez mais rápidos (5 MB/seg), mas são muito mais lentos que as redes (100 MB/seg). Isso normalmente significa que um processo é disk-bound, ou seja, CPU e rede têm que esperar muito pelo disco.
Disco como Gargalo Soluções: Multiprogramação: permitir que a CPU faça outras coisas enquanto espera. Striping: divisão do arquivo em partes, alocando cada parte em um disco diferente, fazendo com que cada disco transmita partes do arquivo simultaneamente.
Disco como Gargalo RAM disk: grande porção de RAM configurada para simular o comportamento do disco. Disk cache: porção de memória configurada para conter páginas de dados do disco. Quando o dado é requisitado, o conteúdo do cache é verificado primeiro para ver se contém a informação desejada.
Fita Magnética
Fita Magnética Permite acesso sequencial muito rápido, porém não permite acesso direto. Mais baratas que discos. Como o acesso é sequencial, não existe necessidade de guardar endereços na fita, e a posição de um registro é dada por um deslocamento (offset) relativo ao início do arquivo.
Características da Superfície da Fita Magnética 9 trilhas paralelas correspondem a um frame = 8 bits/byte + bit de paridade (em geral, ímpar). Frames são agrupados em blocos de tamanho variado,conforme as necessidades do usuário.
Características da Superfície da Fita Magnética Blocos são separados por intervalos (interblock gaps), que não contêm informação. No caso de paridade ímpar, 9 zeros são usados para gap entre registros.
Características da Superfície da Fita Magnética
Estimativa de Tamanho de Fita O que ocupa espaço na fita? Dados e intervalos entre blocos. Seja: b = tamanho físico do bloco de dados g = tamanho do intervalo n = número de blocos de dados s = espaço necessário para um arquivo s = n * (b + g)
Estimativa de Tempo de Transmissão Taxa nominal de transmissão de dados: taxa nominal = densidade da fita (bpi) X velocidade da fita(ips) Para fita de 6250 bpi e 200 ips1250 KB/seg. Compete com a maioria dos drives de disco.
Discos X Fitas A RAM cada vez mais barata permite a utilização de mais e mais buffers, os quais reduzem as desvantagens das operações de seeking. Discos cada vez mais utilizados, mesmo para acesso sequencial. Fitas utilizadas para backups.
CD-ROM
CD-ROM Compact Disc Read-Only Memory CD-ROMs são gerados a partir de uma matriz feita de vidro, cuja superfície é alterada por um feixe de laser. Quando a cobertura é alterada pelo feixe de laser, estes geram saliências (pits) ao longo da trilha. As áreas sem alterações são chamadas de lands.
CD-ROM Esquema de representação: 1s transição de pit para land ou land para pit 0s tempo gasto na transição Devido aos limites de resolução do dispositivo ótico, existe pelo menos dois zeros entre um par de 1s.
CD-ROM O padrão gerado de 0s e 1s tem que ser transformado no padrão de 8 bits. Um byte de 8 bits é expandido para 14 bits EFM (Eigth to Fourteen Modulation)
CLV X CAV CAV Constant Angular Velocity. Usado em discos magnéticos. Trilhas divididas radialmente em setores. Permanece girando em um mesmo padrão de velocidade, ou seja, as trilhas próximas da periferia do disco movem-se mais rapidamente do que as trilhas próximas do centro.
CLV X CAV CLV Constant Linear Velocity. Usado em CD- ROM. Os dados permanecem em uma trilha única que traça uma espiral a partir do centro do disco até a borda.cada setor ocupa o mesmo tamanho físico. À medida que o detector aproxima-se do centro do disco, a velocidade aumenta.
CLV X CAV
CLV X CAV CAV desperdiça espaço de armazenamento, mas maximiza a velocidade de recuperação dos dados. CLV pode conter mais setores que um disco magnético e, consequentemente, mais dados.
Gerenciamento de Buffer Transferência entre área de dados e memória secundária requer o uso de buffers Buffering trabalhar com grande quantidade de dados em RAM Reduz acesso à memória secundária
Quantos buffers utilizar? Imagine um sistema com apenas um buffer A maioria dos sistemas utiliza 2 buffers Transferência de dados em uma direção Retarda as operações no caso de um único buffer Multiple Buffering Permite sobreposição de tarefas de I/O e CPU