As perguntas deixadas no post de ontem (sobre cache de memória) poderiam ser respondidas como um simples comentário, mas eu acho que vale a pena explorar um pouco mais o assunto, até para dirimir eventuais dúvidas de outros visitantes.
No jargão da informática, o termo "memória" remete a qualquer meio destinado ao armazenamento de dados, embora, por convenção, sempre que usamos genericamente esse termo estamos nos referindo à memória RAM (memória física ou principal do computador).
Os PCs utilizam vários tipos de memória (ROM, cache, HD, pen-drives etc.), mas é na RAM que os programas são carregados e as informações, processadas (desde o próprio sistema operacional até um simples documento de texto). Nenhum computador atual, de um grande mainframe a uma simples calculadora de bolso, é capaz de funcionar sem uma quantidade mínima de memória RAM.
Como uma das características (ou desvantagens, no caso) da memória RAM é a volatilidade, todos os dados nela armazenados se perdem sempre que o aparelho é desligado, razão pela qual é preciso dispor de outros sistemas de memória, como é o caso do HD, onde os dados são gravados de maneira persistente ; é no HD que ficam residentes o SO e os demais programas e arquivos que você utiliza e manipula quando usa seu computador (ou seria preciso reprogramar tudo a partir do zero cada vez que o PC fosse ligado).
Já a memória cache é um expediente adotado pelos projetistas de hardware para agilizar o desempenho do processador (ela também também tem outras funções e é utilizada por outros dispositivos, mas aí já é uma outra história). As memórias não conseguiram acompanhar a brutal evolução experimentada pelas CPUs (desde os tempos dos velhos 386 que a RAM já não é capaz de acompanhar a velocidade da CPU), de modo que os fabricantes passaram a embutir uma pequena quantidade de RAM ultraveloz (primeiro nas placas-mãe, depois nos núcleos dos próprios processadores) para armazenar os usados mais frequentemente pelo processador, evitando que ele tivesse de recorrer à (bem mais lenta) memória do sistema.
É por isso - ou, melhor dizendo, esse é um dos motivos - que dois processadores com quantidades diferentes de cache podem apresentar desempenhos distintos, ainda que operem na mesma velocidade (um exemplo clássico eram os chips Pentium e Celeron de idêntica frequência de operação, onde a performance do primeiro ganhava longe a do segundo).
Para completar, vale mencionar que o conceito da "memória virtual" remete a um recurso desenvolvido incialmente pela Intel (e utilizado até hoje) para evitar as aborrecidas mensagens de "memória insuficiente" que surgiam quando a RAM se esgotava - situação na qual o usuário era forçado a encerrar alguns programas para liberar espaço e continuar trabalhando com os demais).
A memória virtual nada mais é que um arquivo de troca (swap file) criado no disco rígido, para onde o processador remete "pedaços" de programas carregados na RAM que não estejam sendo usados em determinados momentos, liberando espaço necessário para que um novo aplicativo requisitado pelo usuário seja carregado e processado (quando o programa despachado para o disco torna a ser necessário, dá-se a operação inversa). Como nada é perfeito, o desempenho cai barbaramente quando a memória virtual é utilizada, porque o acesso aos dados no HD é milhares de vezes mais lento que na memória RAM.
Abraços a todos e um bom final de semana.