O que quer que eu navegue na Internet, qualquer que seja a página, é armazenado no cache do navegador no meu disco rígido. O cache do navegador é armazenado na pasta Temporary Internet Files na unidade C do HDD. Mas também foi armazenado temporariamente (no momento em que naveguei) na RAM, mas agora substituído?
Ou seja, a RAM tem algo a ver com o cache do navegador e as páginas da Internet que visito?
Para mostrar imagens, texto e elementos dinâmicos de páginas da Web, todos os dados que você baixa devem ser operados pela CPU, processados, decodificados e organizados em um layout e, em seguida, enviados para exibição, provavelmente pela GPU.
Para que esses dispositivos façam qualquer coisa, eles precisam que os dados estejam na RAM. A CPU pode usar instruções para acessar discos rígidos e dispositivos de rede, mas as instruções raiz extraem dados da RAM para os caches da CPU, para serem trabalhados pelos núcleos da CPU.
Praticamente tudo o que você faz em um computador usa a RAM. O DMA de dispositivo para dispositivo no PCIe pode evitar a RAM, mas se você estiver olhando para o resultado final de algo, ele, ou pelo menos alguma representação dele, passou pela sua RAM.
Para um exemplo do que quero dizer com essa última parte, veja a decodificação de vídeo de hardware. O que você vê são quadros de vídeo decodificados, o vídeo real baixado da Internet será codificado e compactado . Você baixa o vídeo compactado, sua CPU o copia para a memória do dispositivo gráfico e seu dispositivo gráfico decodifica os quadros em sua própria memória. Se essa memória é RAM de GPU dedicada ou RAM do seu sistema depende se sua GPU é dedicada ou integrada à sua CPU.
Para esclarecer seus comentários, a RAM não tem absolutamente nenhuma persistência. Requer energia para manter seu estado e é completamente diferente do disco rígido e de outras memórias de armazenamento . Escrevi mais sobre esse tópico em O que acontece com o conteúdo da RAM quando um computador é desligado?
Em um sentido muito literal, o que você vê na tela (cada pixel gráfico individual, não texto) é sempre armazenado como uma imagem na RAM e depois lido ciclicamente quando é exibido 60 vezes por segundo ou mais. Com um adaptador gráfico dedicado atualmente, a RAM consiste em chips dedicados (e mais rápidos que a média) no adaptador; com gráficos integrados, como em notebooks empresariais, o mecanismo gráfico pode usar parte da RAM geral.
Em um sentido menos literal, é provável que tanto o HTML recebido do servidor quanto um modelo abstrato da página da Web - o resultado da análise do HTML recebido - também estejam na memória.
As interações entre RAM e disco rígido em sistemas operacionais modernos são de duas maneiras: o sistema pode decidir manter partes do conteúdo do disco rígido na memória por um tempo ("armazená-lo em cache" para acesso repetido mais rápido); e pode decidir "trocar" dados para o disco que um programa mantém no que pensa ser "memória" porque não foi acessado por um tempo e há dados mais urgentes para armazenar.
Portanto, no final das contas, não é realmente relevante para sua pergunta se um navegador tenta manter tudo na memória ou não: o sistema operacional é livre para lidar com a memória atrás dos aplicativos da maneira que achar melhor, e um sistema que não está com falta de RAM, é provável que a página da Web exibida atualmente esteja na RAM em todos os três níveis de abstração.
Além do que as respostas anteriores mencionaram, praticamente qualquer coisa em seu disco rígido estava, pelo menos em algum momento, também em sua RAM. As gravações (e leituras) do disco praticamente sempre usam o que é chamado de Acesso Direto à Memória (DMA) , onde a CPU comanda o controlador DMA para transferir um bloco de memória entre algum dispositivo e a RAM. Praticamente todos os acessos ao disco em computadores modernos acontecem dessa maneira, onde a CPU emitirá um comando para transferir blocos de dados do disco para a RAM ou da RAM para o disco.
Com as transferências DMA, a CPU apenas recebe uma interrupção quando o processo é concluído. A razão pela qual isso é feito é para que a CPU não fique presa durante a transferência e possa estar ocupada fazendo outras coisas (ou então pode estar dormindo e não desperdiçando energia). mas especialmente os discos) são muito, muito mais lentos que a CPU. Embora ainda estejamos falando de frações de segundo relativamente pequenas, o tempo que leva para transferir um bloco de dados da RAM para um disco rígido pode ser uma eternidade do ponto de vista da CPU. Portanto, permitir que a CPU apenas comande o processo para iniciar e obter uma interrupção quando terminar economiza muito tempo que pode ser usado para outros propósitos úteis na CPU.
Quando você carregava uma página da Web em seu navegador, o controlador Ethernet teria colocado os dados provenientes do site em sua RAM, provavelmente ainda em um formato criptografado. A partir daí, ele seria descriptografado em outro buffer de RAM. O navegador geralmente usa o buffer já na RAM para exibir a página, mas também a copia para o disco usando DMA para que possa carregá-la novamente se precisar desse recurso novamente, em vez de baixá-lo da Internet novamente .
Você também pode ter a garantia virtual de que tudo o que está sendo exibido no seu navegador também está na RAM. Para que ele seja exibido, ele estará, no mínimo, em sua forma final renderizada na RAM de vídeo, embora o HTML original, javascript, arquivos de imagem, etc. a página ainda está ativamente aberta.
Para complementar outras respostas: de certa forma, uma CPU moderna pode operar SOMENTE com dados na RAM. Para todos os outros dispositivos (HDD, SSD, adaptador de rede, placa de som, o que for) ele só pode dizer "hey, pegue esses dados deste local na RAM" ou "hey, me dê alguns dados e coloque-os neste local em o carneiro". E quando o dispositivo termina, ele notifica a CPU e, em seguida, a CPU vai para a RAM e faz o que mais for necessário com esses dados.
Bem, em teoria existe aquele antigo método "PIO" (onde um dispositivo envia todos os dados diretamente para a CPU, byte a byte), mas isso não é muito usado hoje em dia porque amarra a CPU e geralmente é muito, muito devagar.
Alguns dispositivos (principalmente adaptadores de vídeo, mas muitos outros também em menor grau) também possuem suas próprias RAMs internas. A CPU pode ou não ser capaz de acessá-los diretamente também.
Mas para responder à sua pergunta original - como outros já afirmaram, sim, a página da Web DEFINITIVAMENTE será armazenada em sua RAM. E essa também será a versão que você verá. Todos os outros lugares que possam estar - cache do navegador, adaptador de rede, o que for - são apenas trampolins antes que a página da Web seja carregada em sua RAM. Esse é seu destino final, antes que a CPU trabalhe nele e o converta em pixels gráficos que ele envia para o adaptador de vídeo, que por sua vez o envia para o monitor. (A grosso modo, existem alguns atalhos para tornar as coisas mais rápidas, mas em princípio é isso que está acontecendo).