Desvantagens de um pequeno tamanho da unidade de alocação

5

Como trabalho em desenvolvimento web e a largura de banda é sempre um problema, faço todo o esforço para reduzir o tamanho dos meus arquivos, especialmente imagens. Como resultado, eu tenho pelo menos 10.000 arquivos com cerca de 200 bytes de tamanho.

O tamanho da unidade de alocação do meu disco rígido é de 4 kB, o que significa que estou perdendo muito espaço. Quando se trata de fazer backup em particular, eu gostaria de evitar o desperdício de espaço.

O que eu gostaria de saber é quais são as desvantagens de definir o menor tamanho de AU. Minha principal preocupação é o que acontece com arquivos de 8 GB se eu tiver um tamanho AU de 512 bytes?

    
por Niet the Dark Absol 24.08.2012 / 00:34

1 resposta

6

As desvantagens de uma pequena unidade de alocação de disco incluem:

  • Tabela de alocação maior.

    Esta é a consequência mais óbvia da redução da unidade de alocação. Para um determinado volume de tamanho, reduzir a unidade de alocação de 4KB para 512 resulta em uma tabela de alocação 8 vezes maior. Observe que o sistema de arquivos provavelmente terá cópias duplicadas ou triplicadas da tabela de alocação para garantir a integridade do sistema de arquivos.

  • A alocação ocorre com mais frequência.

    Como uma quantidade menor de espaço em disco é alocada por unidade, mais sobrecarga do sistema de arquivos será incorrida ao gravar arquivos sequenciais (o método mais comum). Para alocar um cluster, o sistema de arquivos deve adquirir um bloqueio mutex para garantir acesso exclusivo, modificar a tabela de alocação, liberar o mutex e depois copiar a tabela de alocação da memória para o disco.

  • Limite possível no tamanho do volume

    Provavelmente não é um problema hoje com processadores de 32 e 64 bits. Mas nos dias de processadores de 8 e 16 bits e sistemas de arquivos como o FAT, o número de unidades de alocação combinadas com o tamanho da alocação realmente impunha um limite real no tamanho dos volumes / partições do disco rígido. Um resultado óbvio foi o sistema de arquivos FAT32 que aumentou o número de possíveis unidades de alocação.

  • Mais fragmentação de arquivos

    Para um determinado tamanho de arquivo, obviamente haverá mais unidades de alocação atribuídas a esse arquivo. Não há garantias de que as unidades de alocação possam / sejam contíguas. Para ler um arquivo de 8 MB, o pior cenário possível para clusters de 4KB envolveria 2048 buscas, além de intervalos de latência rotacional, ou um acesso completo ao disco para cada cluster em sequência. O pior cenário para clusters de 512B envolveria 16.364 buscas, além de intervalos de latência rotacional! Obviamente, essa fragmentação (possível) terá impacto na taxa de transferência de dados.

À medida que as unidades de disco ficam maiores, o tamanho da alocação é geralmente aumentado para atenuar essas desvantagens. O racional é que há mais espaço em disco disponível para o desperdício, mas isso é lógica circular. Idealmente, a unidade de disco deve ter várias partições, com cada partição formatada com uma alocação dimensionada para o arquivo "típico". Por exemplo, deixo a unidade / partição C: com seu tamanho padrão de 4KB. Mas a partição em que as gravações de TV são gravadas tem clusters de 64 KB, já que a gravação típica de uma hora é de cerca de 6 GB.

    
por 24.08.2012 / 02:07

Tags