FAT16 e FAT32

Abril 2015

O sistema de ficheiro FAT16

O primeiro sistema de ficheiros utilizado num sistema de exploração Microsoft foi o sistema FAT, que utiliza uma tabela de subsídio de ficheiros (em inglês FAT, File Allocation Table)). A tabela de subsídio de ficheiros é com efeito um índice que lista o conteúdo do disco, para registar o lugar dos ficheiros. Já que os blocos que constituem um ficheiro não são sempre armazenados de maneira contígua no disco (é o que se chama de fragmentação), a tabela de subsídio permite conservar a estrutura do ficheiro criando relações para os blocos constitutivos do ficheiro. O sistema FAT é um sistema de 16 bits que permite descrever um ficheiro por um nome de um comprimento de 8 caracteres e uma extensão que comporta 3. Chama-se assim a este sistema FAT16.

Para melhorar este ponto, a versão original de Windows 95 (que emprega o sistema FAT16) foi dotada de uma versão melhorada do FAT, trata-se do sistema VFAT (Virtual FAT). O VFAT é um sistema de 32 bits que permite registar um ficheiro com um nome de 255 caracteres de comprimento. Os programadores contudo deveram garantir a compatibilidade ascendente, de maneira a poder aceder a estes ficheiros a partir de ambientes 16 bits (DOS). A solução foi então afectar um nome a cada sistema. É a razão pela qual é possível utilizar nomes longos sob Windows 95, ao mesmo tempo que sob DOS.

O sistema de ficheiros FAT é um sistema 16 bits, isto significa que não pode endereçar os clusters em mais de 16 bits. O número máximo de clusters marcados com o sistema FAT é assim de 216, ou seja, 65536 clusters. Ora, já que um cluster é constituído por um número fixo (4,8,16,32,…) de sectores de 512 bytes contíguos, a dimensão máxima de uma partição FAT encontra-se multiplicando o número de clusters pela dimensão de um cluster. Com clusters de uma dimensão 32Ko, a dimensão máxima de uma partição FAT é por conseguinte de 2Go.

Por outro lado, um ficheiro pode ocupar apenas um número inteiro de clusters, ou seja, se um ficheiro ocupar vários clusters, o último será ocupado em parte, e o lugar inoccupado restante é perdido. Por conseguinte, quanto mais a dimensão de um cluster é reduzida, menos há desperdício de espaço. Considera-se que um ficheiro desperdiça em média a metade de um cluster, isto significa que, numa partição de 2Go, 16Ko é perdido por ficheiro…

A tabela de subsídio dos ficheiros

A Tabela de Subsídio de Ficheiros é uma lista de valores numéricos que permitem descrever o subsídio dos clusters de uma partição, ou seja, o estado de cada cluster da partição de que faz parte. A tabela de subsídio é, com efeito, um quadro em que cada célula corresponde a um cluster. Cada célula contém um número que permite saber se o cluster que representa é utilizado por um ficheiro, e, se for caso disso, indica o lugar do próximo cluster que o ficheiro ocupa. Obtém-se por conseguinte uma cadeia FAT, ou seja uma lista encadeada de referências que apontam para os diferentes clusters sucessivos, até ao cluster de fim de ficheiro. Cada entrada do FAT tem um comprimento de 16 ou 32 bits (conforme se trate de um FAT16 ou de um FAT32). As duas primeiras entradas permitem armazenar informações na própria tabela, enquanto as entradas seguintes permitem referenciar os clusters. Certas entradas podem conter valores que indicam um estado do cluster específico. Assim, o valor 0000 indica que o cluster não é utilizado, FFF7 permite marcar o cluster como defeituoso para evitar utilizá-lo, e os valores compreendidos entre FFF8 e FFFF especificam que o cluster contém o fim de um ficheiro. Cada partição contém na realidade duas cópias da tabela, armazenadas de maneira contígua no disco, para poder recuperá-lo se por acaso a primeira cópia estiver corrompida.

O sistema de ficheiro FAT32

Embora o VFAT seja astucioso, não permite remediar as limitações do FAT16. Assim, um novo sistema de ficheiros (e não uma versão melhorada do FAT, como o VFAT) apareceu com o Windows 95 OSR2. Este sistema de ficheiros, chamado FAT32 utiliza valores de 32 bits para as entradas do FAT. Na realidade, só 28 bits são utilizadas porque 4 bits são reservadas.

Com o aparecimento do sistema de ficheiros FAT32, o número máximo de clusters por partição passou de 65535 a 268.435.455 (228-1). O FAT32 autoriza por conseguinte partições de uma dimensão muito mais elevada (até 8 téraoctets). Na realidade, a dimensão teórica máxima de uma partição FAT32 é de 8 To, contudo a Microsoft limita-a voluntariamente a 32 Go nos sistemas Windows 9x para favorecer NTFS (ref.: <a href='http://support.microsoft.com/default.aspx?scid=kb;fr;184006).' target='_blank'>http://support.microsoft.com/default.aspx?scid=kb;fr;184006).</a> Dado que uma partição FAT32 pode conter muito mais clusters do que uma partição FAT16, é possível reduzir de maneira significativa a dimensão dos clusters e limitar o desperdício de espaço no disco. Por exemplo, para uma partição de 2Go, é possível utilizar clusters de 4Ko com o sistema FAT32 (em vez de 32Ko em FAT16), o que diminui o espaço desperdiçado por um factor 8.

Por outro lado, o FAT32 não é compatível com as versões do Windows anteriores à versão OEM Service Release 2. Um sistema que trabalhe com uma versão precedente não verá pura e simplesmente este tipo de partição.
Outra observação, os utilitários de gestão de disco que funcionam em 16 bits como antigas versões de Norton Utilities não poderão funcionar correctamente. Em termos de desempenhos, a utilização de um sistema FAT32 em detrimento do sistema FAT16 traz na prática um ligeiro ganho em desempenhos de aproximadamente 5%.

Sistema de ficheiro FAT16 ou FAT32?

O número de clusters limitado, a dimensão máxima de uma partição depende da dimensão de cada cluster. Vejamos a dimensão máxima de uma partição de acordo com a dimensão dos clusters e o sistema de ficheiros utilizado:


Dimensão de um clusterSistema de ficheiro FAT16Sistema de ficheiro FAT32
(teórico)
512 octets 32 Mo 64 Mo
1 Ko 64 Mo 128 Mo
2 Ko 128 Mo 256 Mo
4 Ko 256 Mo 8 Go
(1 To)
8 Ko 512 Mo 16 Go
(2 To)
16 Ko 1 Go 32 Go
(4 To)
32 Ko 2 Go 2 To
(8 To)



Quando formata um disco duro, é necessário por conseguinte determinar com precaução o tipo de sistema de ficheiros a utilizar, escolhendo aquele que permitir ter um espaço disponível o mais próximo possível da dimensão desejada!

Para uma leitura offline, é possível baixar gratuitamente este artigo no formato PDF:
Fat16-e-fat32.pdf

A ver igualmente


FAT16 and FAT32
FAT16 and FAT32
FAT16 y FAT32
FAT16 y FAT32
FAT16 und FAT32
FAT16 und FAT32
FAT16 et FAT32
FAT16 et FAT32
FAT16 e FAT32
FAT16 e FAT32
Este documento, intitulado « FAT16 e FAT32 »a partir de Kioskea (pt.kioskea.net) está disponibilizado sob a licença Creative Commons. Você pode copiar, modificar cópias desta página, nas condições estipuladas pela licença, como esta nota aparece claramente.