SISTEMA DE FICHEIROS
Sistema de ficheiros
- É um conjunto de directórios, ficheiros e descritores;
- É gerido por um módulo do S.O. que é independente do suporte físico;
- Permite estruturar a informação armazenada.
O que é um cluster?
Um cluster é um conjunto de setores do HD que são endereçados pelo sistema operacional como uma única unidade lógica. Em outras palavras, um cluster é a menor parcela do HD que pode ser acessada pelo sistema operacional. Cada cluster tem um endereço único, um arquivo grande é dividido em vários clusters, mas um cluster não pode conter mais de um arquivo, por menor que seja.
FAT 16
O significado da palavra FAT é Tabela de Alocação de Arquivos (File Allocation Table) que seria um mapa de utilização do disco. Graças a isto, o SO saberá onde determinado arquivo está.
Normalmente é reconhecido por todos os Sistemas Operacionais, também é utilizado em cartões de memória de estado sólido, e não trabalham com setores, mas sim com unidades de clusters que são conjuntos de setores.
Existe um inconveniente que quando ficheiros são apagados e novos ficheiros são escritos no suporte, as suas partes tendem a dispersar-se.
Outro problema é que o FAT16 não reconhece mais que 2GB por ser de 16 bits, utilizando clusters com no máximo 32 KB.
FAT 32
Já neste, suporta partições de até 2 TB, tamanho de arquivos de 4 GB e o nome dos arquivos passou de 8 para 256 caracteres e superou o antigo limite de 3 caracteres para a extensão, embora este padrão ainda seja largamente utilizado.
Com o FAT32, o desperdício em disco foi sensivelmente reduzido.
Tem a desvantagem de ser 6% mais lenta que FAT16 e a incompatibilidade com SO antigos.
Não possui recursos de segurança como o NTFS. Utiliza uma cópia backup da tabela de alocação como sistema de segurança para corrupções de arquivos. Este procedimento é ineficiente, pois uma queda de energia durante uma operação que modifique os metadados pode tornar a partição inacessível ou corromper severamente diversos arquivos.
NTFS
O NTFS (New Technology File System) é um sistema de arquivos que surgiu com o lançamento do Windows NT, e passou a ser bem aceito e utilizado nas outras versões do Windows posteriormente.
Uma dessas vantagens diz respeito ao quesito "recuperação": em caso de falhas, como o desligamento repentino do computador, o NTFS é capaz de reverter os dados à condição anterior ao incidente. Ainda neste aspecto, o NTFS também suporta redundância de dados, isto é, replicação.
Algumas características são:
- Neste modelo, temos o tamanho limite do arquivo de acordo com o tamanho do volume;
- Os nomes dos arquivos podem ter 32 caracteres;
- Tem suporte a criptografia, indexação e compactação;
- Seus clusters podem chegar a 512 bytes;
- É mais seguro que o FAT;
- Permite política de segurança e gerenciamento;
- Menos fragmentação;
- Melhor desempenho;
- Recuperação de erros mais fácil;
- Caso seja usado em mídias, podem se corromper mais facilmente;
- É um pouco mais lenta que o FAT32 devido as diretivas de segurança que o FAT32 não tem e precisam ser acessados durante leitura e gravação de dados;
- Utiliza a tabela MFT (Master File Table) para registrar a utilização de cada cluster de um disco;
EXT 2
Ext2 foi projetado e implementado para corrigir as deficiências do Ext e prover um sistema que respeitasse a semântica UNIX.
Quando é realizada uma operação de escrita em um arquivo, o Ext2 tenta, sempre que possível, alocar blocos de dados no mesmo grupo que contém o nó-i. Esse comportamento reduz o movimento da(s) cabeça(s) de leitura-gravação da unidade de disco.
Em um sistema de arquivos ocorrem dois tipos de fragmentação: (1) a fragmentação interna (ou de espaço) é causada pelo fato do tamanho do arquivo geralmente não ser múltiplo do tamanho do bloco (portanto o último bloco terá um espaço não utilizado) - a consequência é a perda de espaço; (2) a fragmentação externa (ou de arquivo) decorre da impossibilidade do sistema determinar, a priori, qual o tamanho do arquivo (p.ex., arquivos de texto e de logs são muito modificados, e o seu tamanho pode aumentar ou diminuir) - assim um arquivo pode alocar blocos não contíguos, prejudicando o desempenho.
Para diminuir o impacto do primeiro tipo, existem duas estratégias básicas. A primeira, mais simples, é determinar, na formatação, o menor tamanho de bloco possível. O Ext2 permite tamanhos de blocos de 1024, 2048 e 4096 bytes. Um tamanho de bloco pequeno, como 1024 bytes, diminui a fragmentação e perda de espaço, mas em contrapartida gera um impacto negativo no desempenho, pois acarreta o gerenciamento de uma maior quantidade de blocos. O tamanho de bloco padrão para volumes grandes é de 4096 bytes.
A segunda estratégia é alocar a parte final de um arquivo, menor que o tamanho de um bloco, juntamente com pedaços de outros arquivos. O Reiserfs chama esse método de tail packing; o UFS usa fragmentos, que são submúltiplos do tamanho do bloco. Apesar do Ext2 possuir, no superbloco, a previsão para uso de fragmentos, esse método não foi implementado.
HPFS
Foi escrito por Gordon Letwin e outros na Microsoft e adicionado a versão 1.2 do OS/2 em 1989, na altura ainda um compromisso conjunto da Microsoft e IBM.
Apesar de eficiente, este sistema de arquivos caiu em desuso junto com o OS/2.
Microsoft utilizou o HPFS no Windows NT e as versões do NT que suportavam o HPFS eram a 3.1, 3.5, 3.51.
Atualmente, o único sistema operacional que suporta o HPFS é o Linux.
Características técnicas:
- O HPFS tem estrutura de diretórios semelhante à FAT.
- Utilização mais eficiente do espaço em disco
- Adiciona classificação automática de diretórios com base nos nomes de arquivo.
- Menor fragmentação de dados.
- Nomes de arquivo com até 254 caracteres de dois bytes.
- Uma arquitetura interna que mantém os itens relacionados próximos uns dos outros sobre o volume de disco.
- Não utiliza cluster, e a unidade de alocação é alterada para os setores físicos de 512 bytes, o que reduz a perda de espaço em disco.
- Também pode manter 64 KiB de metadados ( "atributos estendido") por arquivo.