terça-feira, 31 de outubro de 2017

HDD/SSD ― A MEMÓRIA DE MASSA DO PC ― Parte 3

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.

Visite minhas comunidades na Rede .Link: