O IMPORTANTE NÃO É AQUILO QUE FAZEM DE
NÓS, MAS O QUE NÓS MESMOS FAZEMOS DO QUE OS OUTROS FIZERAM DE NÓS.
Vimos que o drive sólido (SSD) substitui com vantagens o eletromecânico (HDD), mas que, devido ao elevado custo de fabricação, modelos com
fartura de espaço costumam equipar notebooks
de configuração de ponta (e preços idem), enquanto drives híbridos ― ou mesmo SSDs puros, mas de capacidade mais
modesta ― são direcionados a PCs de configuração mediana e preços mais
acessíveis.
Uma das vantagens dessa “nova” tecnologia advém da maneira
como os dados são gravados e lidos. Como eu disse no capítulo de abertura, a
formatação física dos drives eletromecânicos mapeia a superfície dos pratos,
que são divididas em trilhas, setores e cilindros. O setor
corresponde à menor unidade física do disco, e tem capacidade para armazenar 512 bytes (não confundir com cluster; que é a menor unidade lógica
que o SO é capaz de acessar, e geralmente é formado por um conjunto de setores).
Além da formatação
física, o disco rígido passa por uma formatação
lógica por ocasião da instalação do Windows.
Esse processo cria uma tabela de
alocação de arquivos que permite ao sistema “enxergar” e gerenciar o espaço
disponível no drive (no caso do Windows,
os formatos mais usados são a FAT, o
NTFS e, mais raramente, a exFAT). O tamanho do cluster varia conforme o sistema de arquivos. No NTFS, cada cluster possui entre 512 bytes e 4 KB,
dependendo do tamanho da partição. Quanto menor for o cluster, menos
espaço será desperdiçado, sobretudo na gravação de arquivos pequenos, pois,
mesmo que tenha um único byte de tamanho, esse arquivo ocupará um
cluster inteiro.
O sistema operacional é o responsável pela leitura e
gravação dos dados, mas, no controle do tráfego de informações entre a memória
de massa e a RAM, ele conta com o
auxílio do BIOS, que supervisiona a entrada e
saída de informações. Quando, por exemplo, comandamos a gravação de um arquivo,
a instrução é repassada ao sistema, que altera a estrutura da tabela de alocação para indicar a
presença daquele arquivo no diretório escolhido, seleciona os clusters disponíveis para armazenar os
dados e repassa os endereços ao BIOS,
que cuida dos detalhes físicos da gravação ― ou seja, transfere os dados da RAM para o HDD e solicita à controladora do disco que posicione as cabeças de
leitura/gravação sobre os clusters
correspondentes. Se o arquivo não couber integralmente num cluster, o sistema
localizará mais clusters disponíveis (tantos quantos forem necessários) e
repassará as coordenadas ao BIOS,
até que o arquivo seja totalmente gravado. Concluído esse processo, os clusters ocupados são registrados na tabela de alocação, para que não sejam
sobrescritos durante a gravação de outros dados.
Quando o computador é novo, há muito espaço livre na memória
de massa, e os arquivos podem ser armazenados em clusters contíguos, o que facilita tanto a gravação dos dados
quanto sua posterior leitura. Conforme vamos instalando e removendo
aplicativos, criando, alterando e apagando arquivos, vão surgindo lacunas entre os clusters, e nem sempre
o espaço vago deixado pelo arquivo que acabamos de excluir comporta integralmente
o arquivo que criamos em seguida, daí o sistema distribuir o restante pelos
demais clusters disponíveis ao longo da trilha. Isso evita o desperdício de
espaço, mas acarreta demora na gravação e, principalmente, na leitura dos
arquivos segmentados, já que o sistema precisa localizar cada fragmento e
remontar tudo, num imenso quebra-cabeça.
Felizmente, o Windows
dispõe de uma ferramenta para organizar a bagunça que ele próprio cria, mas
isso já é conversa para o próximo capítulo.