A memória cache é um modo bastante prático de dar mais velocidade a execução das tarefas, pois armazena dados de modo temporário para um acesso direto do processador (CPU).

A memória cache consegue armazenar as informações de modo mais superficial, não sendo necessário que o processador realize uma busca profunda a cada comando simples durante uma tarefa.

Ela executa funções e níveis bastante importantes em um dispositivo, e este artigo trata justamente sobre o que é para que serve a memória cache L1, L2 e L3 dos processadores.

O que é a memória cache

A memória cache é um tipo de memória de acesso rápido, que facilita o processo de acesso a todos os dados do dispositivo.

A velocidade que um comando é executado ou que uma atividade é concluída depende da rapidez que o processador consegue captar, dentre todos arquivos, as informações mais necessárias no momento.

Então, para facilitar essa busca, existe a memória cache, que consegue armazenar as informações de modo mais superficial, não sendo necessário que o processador realize uma busca profunda a cada comando simples durante uma tarefa.

Mas a memória de um dispositivo vai muito além da sua memória cache. E para ter um entendimento mais amplo sobre as suas separações L1, L2 e L3 é preciso uma compreensão mais geral da área.

Como funciona a memória de um dispositivo?

Para entender como a memória cache funciona, é preciso entender um pouco mais sobre como funciona esse processo de memorização dos dados dentro de um dispositivo.

Todos os dispositivos, sejam smartphones, tablets ou computadores, possuem a chamada memória secundária, que pode ser interna ou externa, como o HD, o SSD, o pendrive e o cartão de memória.

Essas são memórias estáveis e permanentes, que ficam armazenadas no dispositivo por longos períodos, e podem ser acessados inúmeras vezes, pois são arquivadas dentro dele, mesmo quando sem o uso de energia elétrica.

Todas as imagens, vídeos, músicas, documentos e outros tipos de arquivos que estão salvos e podem ser visualizados a todo momento, estão armazenadas na memória secundária..

Mas apesar de se tratar da mais importante, ela não é a memória de acesso mais rápida, pois é muito vasta, e exige que o processador, quando precisa de uma simples informação, pesquise em toda a memória permanente.

E é por isso que existe a memória RAM, que é a memória principal e temporária, que fornece rapidez aos processos, pois armazena os dados por um curto período de tempo, enquanto uma ação é executada.

Por ser temporária, a memória RAM, além de ser menor, funciona apenas com o dispositivo em atividade, e quando ele é desligado, todas as informações não salvas são perdidas, ou seja, é uma memória volátil, que necessita da energia elétrica.

São tipos de memórias fundamentais para os processos, pois atuam em conjunto para oferecer o melhor desempenho do dispositivo.

É interessante discorrer ainda sobre a relação de preço entre esses tipos de memórias, isso porque as memórias rápidas possuem um custo de fabricação muitas vezes mais caro que as memórias mais lentas.

Com isso, a memória permanente, que é a mais lenta, é fabricada de forma mais barata, já a memória RAM é bem mais cara.

Se o dispositivo fosse fabricado inteiramente com memórias rápidas, ele custaria um preço altíssimo, o que seria inviável para boa parte da população.

Já a memória cache, por ser muito mais rápida ainda, é muito mais cara, e por isso possui pouca capacidade de armazenamento de dados.

Entendendo a diferença entre memória secundária e RAM

Para entender melhor essa diferença entre memória secundária e a RAM, deve-se imaginar a construção de um trabalho no Microsoft Word.

Partindo da suposição de que uma pessoa esteja escrevendo um texto para sua escola em seu computador, no word, há dois momentos a serem considerados.

O primeiro momento é o de construção do trabalho. Nesse período é preciso rapidez no processamento e no acesso às informações.

Por isso, tudo o que está sendo criado está sendo salvo na memória RAM do dispositivo, facilitando a execução das funções.

Após finalizar o projeto, o estudante salva o trabalho, seja em um pendrive ou no próprio dispositivo.

Depois de retirar essa memória externa ou desligar o computador, esse projeto pode ser visualizado futuramente facilmente no local onde foi salvo, pois é um arquivo permanente.

Mas enquanto criava o projeto, se o computador fosse desligado involuntariamente, ao ser religado, o trabalho não seria encontrado novamente, pois tudo estava sendo salvo em uma memória temporária.

E essa é a diferença básica entre as duas, uma é temporária, dando mais rapidez à construção, pois armazena os dados utilizados, e a outra permanente, armazenando os dados de uma vez por todas, mas que seria de acesso mais lento.

Diferença entre memória RAM e memória cache

Como dito, a memória RAM é a memória temporária de um dispositivo, que armazena dados de por um período necessário para a realização de uma tarefa, antes de salvar o arquivo na memória permanente.

E a memória cache também é temporária, possuindo funções similares à memória RAM só que em áreas de acesso mais rápido. Mas para se ter uma melhor compreensão, é preciso exemplificar o processo.

É possível compreender esse processo imaginando todas as informações escritas em um caderno simples de papel.

Para se obter essas informações no caderno deve-se extrair uma árvore, que está em uma floresta.

A floresta é onde ficam as informações mais profundas, ou seja, a memória permanente do dispositivo.

Já uma árvore é um método mais rápido de acesso, pois pode ser de uma espécie em específica, isto é, a memória RAM.

Já o caderno possui as próprias informações em si, sendo preciso apenas folhear para encontrar os dados desejados.

Nesse caso, sempre que o processador fosse procurar uma simples informação, ele teria que procurar em toda a floresta, por isso, reduzir essa procura para uma árvore em específico torna tudo mais rápido, que é a memória RAM.

E a memória cache é um método ainda mais instantâneo de encontrar essas informações.

Assim, o processador não precisa vasculhar toda a floresta, nem mesmo uma árvore, pois tudo pode ser visualizado rapidamente no caderno.

Com isso, há grandes diferenças também em relação à capacidade de armazenamento de cada uma dessas memórias.

Em smartphones mais modernos, por exemplo, a memória interna passa facilmente dos 128 GB, sua memória RAM é de 6 GB, e sua memória cache é de poucos MB. Isso porque são para uso rápido e temporário.

E um dos principais fatores que pode explicar essa diferença de capacidade é justamente o preço que cada uma possui para ser fabricada.

Por ser muito rápida, a memória cache possui um preço altíssimo, e por isso recebe uma capacidade bem pequena, assim como a própria RAM em relação às permanentes.

Memória cache L1, L2 e L3

Atualmente, o modo mais comum é que a memória cache esteja presente dentro dos próprios processadores.

Então quando o processador realiza uma busca, inicialmente na memória secundária, que depois ficam armazenadas na memória RAM, os principais dados vão direto para o processador, ficando armazenada na memória cache.

Por isso ela é bastante minúscula em relação a capacidade de armazenamento, como visto são poucos megas, mas isso porque realmente elas são muito caras.

Claro que o ideal é que todas as memórias fossem rápidas, mas isso deixaria tudo muito caro. Então, por enquanto, essas divisões entre a secundária, a RAM e a memória cache, são uma das soluções mais em conta.

Por já poder estar dentro do processador, a memória cache permite uma rapidez de acesso realmente bastante diferenciada, inclusive podendo prever os próximos dados que serão buscados pelo processador, e já deixá-los armazenados.

Isso ocorre devido aos princípios da memória cache, que serão estudados nos próximos tópicos desse artigo.

Além do caminho a ser percorrido ser menor, as informações contidas na memória cache são as mais fundamentais e utilizáveis naquele momento, por isso todo o processo adquire uma rapidez enorme.

É importante salientar ainda a volatilidade da memória cache, o que significa que todos os dados são excluídos com a ausência de energia elétrica.

Então todas as vezes que o dispositivo é desligado, a memória cache é restaurada, pois ele é vinculada às tarefas que estão sendo executadas, então, futuramente elas não possuirão mais necessidade para uso, dando espaço para outros dados.

níveis da memória cache

Então, como explicado, a memória cache busca dar velocidade de acesso aos dados, mas mesmo dentro dessa memória, existem ainda certos níveis, que podem variar na função e também na velocidade.

Normalmente são três níveis, o L1, o L2 e o L3, e esse “L” deriva justamente da palavra em inglês “level”, que significa nível.

A memória cache de menor nível, ou seja o L1, é a que possui o acesso mais rápido, pois é a que está mais próxima do processo.

Então quanto mais pequeno for o nível, mais rápido será o acesso, mas também menor será sua capacidade de armazenamento dos dados. Com isso, temos:

L1- mais rápida; menor capacidade de armazenamento.

L2- velocidade de acesso média; capacidade de armazenamento média.

L3- menor velocidade; capacidade de armazenamento maior.

Mas claro que, mesmo a L3 é várias vezes mais rápida que a memória RAM, ela é apenas mais lenta que os outros níveis, pois armazena dados mais amplos em relação às outras partes.

memória cache L1

O cache L1 ou cache nível 1 é uma espécie de memória rápida e, como visto, bastante curta, que se constitui diretamente na CPU.

Das três divisões, essa é a principal, pois permite o acesso mais rápido de todas, e é onde ficam as informações de uso mais frequente e com maior importância, e se integra ao próprio dispositivo.

memória cache L2

O cache L2, conhecido como cache de nível 2 guarda os últimos dados que foram acessados.

Sua função inicial é a de tornar o acesso aos dados mais rápido, pois consegue armazenar essas informações que foram utilizadas nos últimos momentos.

Ele não é tão rápido quanto a memória cache L1, que é a principal, mas ocupa um papel importante nos processos, sendo até mesmo com muito mais capacidade de armazenamento.

E como são interligados, as informações que são pedidas na memória cache L2 são transmitidas para a memória cache L1, podendo ou não ainda ficarem no L2.

memória cache L3

Há uma pequena hierarquia na ordem da velocidade, onde o L1 é o mais rápido, o L2 é mediano, e o L3 é o mais lento dos três.

Mas mesmo assim, a memória cache L3 é bem mais rápida que a verdadeira memória do dispositivo.

Sua integração é diretamente com a própria placa-mãe, sendo o encarregado de repassar os dados para a memória cache L2. 

Princípios da memória cache

As funções executadas pela memória cache são baseadas em dois princípios básicos, que tornam tudo mais dinâmico e rápido.

São os princípios de localidade espacial e o de localidade temporal, que conseguem até mesmo prever os dados seguintes que seriam consultados na memória RAM.

princípio da localidade espacial

O princípio da localidade espacial é justamente o que consegue adiantar os futuros dados consultados na memória RAM, e é bastante simples.

Quando um dispositivo inicia uma aplicação, o processador vai primeiramente na memória secundária, que é a permanente.

Após essa primeira consulta, todos os dados referentes à aplicação são transmitidos para a memória RAM, e isso por si só já é baseado no princípio da localidade espacial.

Então, durante a execução daquela atividade, todos os dados relativos a ela estão disponíveis a uma distância muito menor.

Mas mesmo assim, não há a compatibilidade necessária entre as velocidades da RAM e do processador, por isso a existência da memória cache.

Todos os programas em si, são extremamente organizados, tendo por base suas funções em específico.

E quando se utiliza um dado qualquer de um programa, há sempre uma sequência lógica de outros dados que são relacionados.

Se uma pesquisa é realizada atrás da letra A, depois da letra B, depois da letra C, obviamente que as próximas buscas serão pelas letras sequenciais, e não do número 9, por exemplo.

Há, desse modo, toda uma lógica que envolve esse processo, e a memória cache consegue realizar essa leitura e adiantar os próximos dados.

Quando o processador realiza uma procura na memória RAM por um dado, a memória cache copia os dados seguintes, assim  o processador não precisa ir mais na principal, pois já possui tudo o que precisa perto de si.

princípio da localidade temporal

O princípio da localidade temporal é relacionado ao próprio dado buscado, pois ela possui grandes chances de ser usado mais vezes.

Então quando o processador realiza uma busca na memória RAM por um dado em específico, esse dado é copiado para a memória cache, pois possui grandes chances de um uso recorrente.

Assim, os princípios de localidade espacial e temporal são totalmente relacionados, pois são relativos a todo o bloco de dados que está sendo usado.

Nesse caso, a localidade temporal indica a necessidade da cópia do dado que foi buscado, e a localidade espacial indica a provável necessidade da cópia dos dados seguintes, relativos ao primeiro dado.

Um pouco mais sobre as divisões de nível da memória cache

Como foi possível ser observado, sempre que uma consulta é realizada na memória RAM, um pequeno bloco de dados é copiado para a memória cache, mas mesmo ela possui seus níveis de rapidez.

Tomando por base uma divisão de três níveis, o processador sempre inicia a pesquisa no L1, e caso a informação desejada não esteja nesse nível, ele passa para o L2, para o L3 e depois para a RAM, até encontrar.

Quando esse dado é encontrado, o seu bloco relacionado é copiado para o L3, que possui uma maior capacidade de armazenamento.

Então o processador não precisa ir mais na RAM, e sim na L3. Mas para tornar tudo ainda mais rápido, uma parte desse bloco é copiada para o L2.

Assim a CPU não precisa nem mesmo ir no L3, pois pode haver tudo o que é preciso no segundo nível.

E quando ele vai no L2, uma parte menor ainda desse bloco é copiada para o L1, que possui pouca capacidade de armazenamento, mas permite uma rapidez de acesso inimaginável.

Todas as buscas ocorrem seguindo esse processo, onde primeiro a CPU procura no L1, se não achar o que precisa vai no L2, se não encontrar vai no L3, e por fim vai na memória RAM.

Vale a pena limpar a memória cache?

Apesar de ser temporária, há muitas utilizações da memória cache, e ela é associada também a aplicativos, navegadores, etc.

Nesses casos, essa memória é relacionada a pequenas informações que são guardadas e que ajudam no carregamento dessas aplicações em acessos futuros.

Então o Whatsapp, o Instagram, o Facebook, e os navegadores usam um tipo de memória cache que facilita a sua abertura sempre que são iniciados.

Apesar de ser temporária, a memória cache de um navegador pode durar um pouco mais de tempo, e pode ser observado sempre que se entra em um site com muita frequência.

Nesses casos, eles são abertos com mais facilidade, pois já há dados específicos armazenados na memória cache, de outras vezes que ele foi utilizado.

Principalmente em smartphones, que possuem uma capacidade de armazenamento bem menor que os computadores, a disputa por espaço é relativamente grande, pois são muitos arquivos e aplicativos disputando.

E a memória cache pode sim realmente ocupar uma pequena parte desse espaço, uma vez que pode armazenar os dados de cada aplicação.

Muitas pessoas se perguntam dessa forma, se é possível e se vale a pena limpar a memória cache, e as respostas para essas perguntas são bastante simples.

Quanto à possibilidade de limpar a memória cache, a resposta é sim. Para isso, basta ir nas configurações do celular, ir em aplicativos, selecionar o app, e clicar em limpar cache.

Com isso, na próxima vez que o app for iniciado, ele levará um pouco mais de tempo para carregar.

E sobre valer a pena ou não, isso vai depender de muitos fatores. Primeiramente, os dados da memória cache sempre serão armazenados, ou seja, sempre que um aplicativo for utilizado, serão guardadas as informações principais do carregamento.

Então, apesar da limpeza liberar um pouco de espaço, nos acessos futuros, ele será pouco a pouco preenchido novamente.

Com isso, dependendo do quanto essa memória esteja interferindo na capacidade do dispositivo, pode até valer a pena realizar sua limpeza, mas eles serão recuperados, consumindo um pouco mais de dados e energia do aparelho.

Dessa forma, caso a limpeza seja realizada, é interessante que o próximo acesso seja realizado sem usar os dados móveis, para que não haja um consumo desnecessário.

Diferença entre limpar cache e limpar dados

Quem já tentou limpar a memória cache do dispositivo já se deparou também com a opção de limpar os dados do aplicativo. Mas o que realmente isso significa?

Como visto, a memória cache serve para armazenar alguns dados relativos ao carregamento de uma app ou navegador.

Então o primeiro acesso a um site ou app é bem mais demorado que os outros acessos, pois ainda não há nada relacionado a ele na memória do dispositivo.

Porém, em consultas futuras, eles carregam de modo bem mais rápido, pois já há algumas informações salvas.

Os dados, por outro lado, são relativos a outras informações mais importantes, que ficam armazenadas nessas aplicações. São dados como o login e a senha de um aplicativo.

Quando salvas, não há mais a necessidade de inserir a senha de um aplicativo todas as vezes que ele é iniciado, isso porque seus dados já estão salvos.

Limpar os dados significa, desse modo, abrir mão dessas informações, então em um futuro acesso, será preciso realizar um novo login na aplicação.

Dessa forma, limpar o cache é apagar algumas informações de carregamento, já apagar os dados é como desinstalar e reinstalar um app novamente, pois ele será iniciado sem nenhuma informação salva.

Deixe seu comentário