Recentemente num bate-papo, que para aprofundar seus conhecimentos de informática, é importante
estudar, e mais ainda, conhecer melhor não só o uso dos sistemas, mas também,
como funciona, características, etc., de forma a se possuir uma boa base
teórica e desta base teórica poder depois partir para algum segmento
específico da área de informática, onde com certeza a base teórica em muito
irá ajudar a conhecer melhor diversas outras partes da informática como um
todo. Daí resolvi retomar a preparação de algumas dicas com a parte teórica
de informática.
Ao usar o Windows em suas funções de acesso a
disco, na realidade estamos utilizando um "sistema de acesso a disco",
comumente chamado "SISTEMA DE ARQUIVO".
Nesta dica, vamos levantar alguns pontos
básicos, que ajudarão a você conhecer (ou se lembrar) de como é montado o
sistema de arquivo? Quais as diferenças entre FAT16, FAT32 e NTFS? E mais
alguns conceitos básicos.
O que é um sistema de arquivo?
Você
pode fazer uma associação de como funciona um disco da seguinte forma: imagine
um estacionamento em uma grande área livre, onde você tem o piso de asfalto e
as marcações de "vagas" ao longo de todo o espaço. A área do
estacionamento é o disco do jeito que veio da fábrica. Daí é feita a
"formatação low level" pela fábrica, que seria a pavimentação da
área toda, que no seu disco, seria a gravação de 0 (zeros) em toda a
superfície do disco (isto é feito pela fábrica). Daí vem o sistema
operacional e ele começa a demarcar as vagas no estacionamento, pintando cada
vaga, numerando, colocando numero da fileira, etc., no seu disco seria a mesma
coisa: o sistema operacional demarca espaços pré-determinados no disco,
numera, organiza, etc. de tal maneira que ele saiba onde está cada vaga.
Existem vários sistemas de arquivo, e cada um
divide a superfície do disco da sua maneira. Alguns exemplos de sistema de
arquivo: FAT, FAT32, NTFS, HPFS, CDFS, etc. Um sistema operacional pode
reconhecer um, alguns ou todos estes sistemas.
FAT16
Primeiro, o que quer dizer FAT: FAT
significa File Allocation Table. (tabela de alocação de
arquivos). Tocas as localizações dos arquivos estão contidas em 2 tabelas:
uma é a FAT corrente (ou working FAT) e a outra é a FAT de backup. A FAT
indica em que cluster um arquivo começa, ou seja, onde está o primeiro byte de
um arquivo. Um cluster é formado por um ou mais setores físicos, geralmente
cada setor de 512 bytes de tamanho. Dependendo do tamanho do disco, o tamanho do
cluster também é diferente. Você pode ser perguntar: e daí que o tamanho é
diferente? Vamos dizer que seu arquivo tem 1KB de tamanho. Você tem este
arquivo gravado em um disco que possui clusters de 2KB ( o tamanho do cluster é
o mesmo para todo o disco lógico). Resultado: como um cluster pode ser ocupado
somente por 1 arquivo, no caso deste arquivo, você estaria desperdiçando 1 KB
no cluster. Agora imagine este mesmo caso, em disco que possui clusters de 32KB?
Para "este" arquivo de 1KB você estaria desperdiçando 31KB!!!
Imagina neste caso de disco com cluster de 32KB, se você possui milhares de
arquivos com por exemplo 1KB. Já pensou no desperdício? Outro problema a se
pensar no sistema de arquivos, é a fragmentação. Quando um arquivo é mario
que o tamanho de um cluster, ele tem que ser dividido (se "espalhar",
ou se alocar) em múltiplos pedaços/clusters. Algumas vezes é possível alocar
estes múltiplos pedaços/cluster, ao lado uma das outras (seqüencialmente), de
tal forma que quando for necessário ler o arquivo, a "cabeça de
leitura" do disco, não precise se movimentar muito na superfície para ler
o arquivo inteiro. Porém, se os "pedaços"/clusters, forem
gravados distantes uns dos outros no disco, a cabeça de leitura irá se
movimentar ao longo das diversas trilhas na superfícies, o que resultará em um
aumento do tempo de leitura do arquivo. Assim, tendo em mente estes 2 problemas
(tamanho/desperdício do cluster, e fragmentação), junto com a
características dos arquivos gravados no disco (se em sua maioria são pequenos
ou grandes), poderemos ter diferente performance e aproveitamento do disco.
No Windows 3.x e 95, o sistema de arquivo
utilizado é a FAT16 (mostrada na tabela a seguir), e como vemos este tipo de
sistema de arquivo era particularmente sensível a desperdício de disco, além
de não ser factível para discos maiores de 2GB/4GB.
FAT16 |
Tamanho da Partição |
Tamanho do Cluster |
0MB - 32MB |
512 Bytes |
32MB - 64MB |
1 KBytes |
65MB - 127 MB |
2 KBytes |
128MB - 255MB |
4 KBytes |
256MB - 511MB |
8 KBytes |
512MB - 1023 MB |
16 KBytes |
1024MB - 2GB (4GB no NT) |
32 KBytes |
FAT32
Para resolver o problema do
fato de que o maior tamanho de partição que a FAT16 poderia gerenciar era de 2 GB,
e também devido ao grande desperdício de disco causado pelos tamanhos de
cluster utilizado na FAT16, a Microsoft lançou a FAT32.
A FAT32 foi lançada no Windows
95 OSR2 (também conhecido como B). Ela também está incluída no Windows
98, ME, 2000 e XP. Ela pode gerenciar partições de até 2 TB (tera-bytes). A
outra vantagem, é que em partições menores, o espaço é usado mais
eficientemente, devido à diminuição do tamanho dos clusters. Por exemplo: em
uma partição de 2 GB que na FAT16 utilizava cluster de 32 KB agora utiliza clusters
de apenas 4 KB, reduzindo o desperdício de espaço em disco.
Problemas da FAT32: praticamente o único
problema da FAT32 é a "incompatibilidade" com sistemas antigos. O
DOS, NT 4.0 e abaixo, OS/2 e Windows 95 (antes do OSR2), não conseguem ler
discos neste padrão! Da mesma forma, utilitários (como por exemplo utilitário
de disco), que acessavam diretamente o disco, e foram desenvolvidos para FAT16,
também não funcionam. Como praticamente todos migraram para sistemas que
suportam a FAT32 (Windows 98, ME, 2000, XP), e quase não se encontram mais
sistemas utilizando DOS/NT/OS2, esta incompatibilidade acabou deixando de ser um
problema na realidade atual.
FAT32 |
Tamanho da Partição |
Tamanho do Cluster |
260MB - 8GB |
4 KBytes |
8GB - 16GB |
8 KBytes |
16 GB - 32 GB |
16 KBytes |
32 GB - 2 TB |
32 KBytes |
NTFS
NTFS significa NT File
System (sistema de arquivos do NT, onde NT originalmente significava
New Tecnhology). Suportado pelo Windows NT, 2000 e XP, ele é um sistema de arquivo
"superior" se comparado ao FAT16 e ao FAT32, e foi
"desenhado" principalmente para SERVIDORES. As principais vantagens do
NTFS são na área de segurança (muito importante para servidores),
compatibilidade POSIX, e alta capacidade de tolerância a falhas (também muito
importante para servidores). Ele também é muito eficiente na área de tamanhos
de cluster, e na realidade você pode formatar uma partição com o tamanho de
cluster que você desejar (muito útil quando por exemplo você tem em uma
máquina características bem específicas de tipos/tamanhos de arquivos
predominantes). Suporta partições de até 16 exabytes, o que no momento excede
em muito qualquer previsão de crescimento de volumes de dados, porém, isto só
na teoria! A capacidade correntemente suportada pelo cluster é de 2 TB (igual
ao FAT32), porém a tecnologia está pronta para suportes a maiores tamanhos, e
espera-se que com o barateamente do custo de armazenagem/HDs, as novas versões
rapidamente irão implementar a capacidade prevista no seu desenvolvimento. Os
dados sobre os arquivos são armazenados no MFT (Master File Table) que inclui
informações sobre localizações dos clusters do arquivo, atributos de
segurança, nome de arquivos, etc. Além disto mantém um "log de
transações", que pode ser utilizado para recuperação (operações de
arquivos que ainda não foram realizadas também são gravadas no log, de tal
forma que se o sistema cair, o sistema de arquivos pode ser rapidamente
atualizado).
NTFS |
Tamanho da Partição |
Tamanho do Cluster (padrão) |
512MB ou menos |
512 Bytes |
513 MB - 1 GB |
1 KBytes |
1 GB - 2 GB |
2 KBytes |
2 GB - 4 GB |
4 KBytes |
4 GB - 8 GB |
8 Kbytes |
8 GB - 16 GB |
32 KBytes |
32 GB ou maior |
64 KBytes |
Estes valores são padrão. No NTFS você pode
variar estes valores dependendo das necessidades de suas aplicações |
CONCLUSÃO:
Com estas diversas definições sobre o sistema de arquivos utilizados pelo
Windows (FAT16/FAT32/NTFS), é possível então poder tomar uma melhor decisão,
em como será feito o particionamento do disco rígido no seu micro! Qual o
tamanho ótimo da partição (menor desperdício), a ser utilizado? Como é a
média de tamanho de arquivos que utilizo? Algumas situações são bem claras
com relação ao melhor particionamento, outras dependerá muito da experiência
pessoal, e da maneira como pretendemos utilizar o micro.