Definição de Cache de Disco (ou Buffer de disco)

Por Carlos E. Morimoto. Há .

O cache não é essencial apenas para a memória RAM. Um dos grandes responsáveis pelo desempenho dos HDs atuais é novamente o ilustre cache. Apesar disso, o cache de disco funciona de uma forma um pouco diferente do cache da memória RAM.

Em primeiro lugar temos uma pequena quantidade de cache instalada no próprio HD. Este cache pode ser de 512 KB, 1 MB, 2 MB, ou até mais, dependendo do modelo. A função deste primeiro cache é basicamente a seguinte:

Geralmente ao ler um arquivo, serão lidos vários setores seqüenciais. A forma mais rápida de fazer isso é naturalmente fazer com que a cabeça de leitura leia de uma vez todos os setores da trilha, passe para a próxima trilha seguinte, leia todos os seus setores, passe para a próxima e assim por diante. Isso permite obter o melhor desempenho possível. O problema é que na prática não é assim que funciona. O sistema pede o primeiro setor do arquivo e só solicita o próximo depois de recebê-lo e certificar-se de que não existem erros.

Se não houvesse nenhum tipo de buffer, a cabeça de leitura do HD acabaria tendo que passar várias vezes sobre a mesma trilha, lendo um setor a cada passagem, já que não daria tempo de ler os setores seqüencialmente depois de todo tempo perdido antes de cada novo pedido.

Graças ao cache, este problema é resolvido, pois a cada passagem a cabeça de leitura lê todos os setores próximos, independentemente de terem sido solicitados ou não. Após fazer sua verificação de rotina, o sistema solicitará o próximo setor, que por já estar carregado no cache será fornecido em tempo recorde.

Os dados lidos pelas cabeças de leitura, originalmente são gravados no cache, e a partir dele, transmitidos através da interface IDE ou SCSI. Caso a interface esteja momentaneamente congestionada, os dados são acumulados no cache e, em seguida transmitidos de uma vez quando a interface fica livre, evitando qualquer perda de tempo durante a leitura dos dados. Apesar do seu tamanho reduzido, o cache consegue acelerar bastante as operações de leitura de dados. Claro que quanto maior e mais rápido for o cache, maior será o ganho de performance.

Para complementar este primeiro nível de cache, os sistemas operacionais criam um segundo cache de disco usando a memória RAM. No Windows 95/98 esta quantidade é fixa, mas a partir do Windows 2000 o tamanho do cache de disco varia de acordo com a quantidade de memória RAM disponível. Neste cache ficam armazenados também últimos dados acessados pelo processador, permitindo que um dado solicitado repetidamente possa ser retransmitido a partir do cache, dispensando uma nova e lenta leitura dos dados pelas cabeças de leitura do HD. Este sistema é capaz de melhorar assustadoramente a velocidade de acesso aos dados quando estes forem repetitivos, o que acontece com freqüência em servidores de rede ou quando é usada memória virtual.

Isso explica o por quê dos grandes servidores utilizarem vários gigabytes de memória RAM. Além da memória consumida pelos aplicativos, é essencial que tenham um enorme cache de disco. Assim, ao invés de ler os dados a partir do HD, o servidor pode trabalhar na maior parte do tempo lendo os dados a partir do cache na memória RAM que será sempre muito mais rápido.

Veja também
Qual o game mais caro da PS Store no Brasil?
Qual o game mais caro da PS Store no Brasil?
Games
Produtos piratas importados da China serão barrados pela Receita Federal
Produtos piratas importados da China serão barrados pela Receita Federal
Notícias
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Artigos
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Mobile
Banco Central confirma novo vazamento de chaves Pix
Banco Central confirma novo vazamento de chaves Pix
Notícias
Motorola lança Moto G04s por R$ 747,15 a vista
Motorola lança Moto G04s por R$ 747,15 a vista
Mobile
true