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

Índice:

Anonim

o principal diferença entre a memória cache e a memória virtual é que A memória cache é uma unidade de armazenamento que armazena cópias de dados de locais de memória principal frequentemente usados ​​para que a CPU possa acessar esses dados mais rapidamente, enquanto a memória virtual é uma técnica de gerenciamento de memória que permite ao usuário executar programas maiores do que a memória principal real.

A memória é um componente importante do computador. Existem vários tipos de memória; memória cache e memória virtual são dois deles. A memória cache é um componente utilizado pela CPU para reduzir o tempo médio de acesso aos dados da memória principal. É menor que a memória principal, mas é muito rápido. Por outro lado, a memória virtual é uma memória lógica. Normalmente, os programas do usuário são maiores do que a memória principal. A memória virtual estende a capacidade da memória principal para que o usuário possa executar programas grandes. Em resumo, a memória cache é uma unidade de armazenamento, enquanto a memória virtual é uma técnica de gerenciamento de memória tratada pelo sistema operacional.

Memória cache, memória virtual, sistema operacional

O que é memória cache

Existem vários tipos de memória. Os registros da CPU são os mais rápidos. A memória cache é mais lenta do que os registros da CPU, mas mais rápida do que a memória principal. Portanto, os dados usados ​​com frequência pela CPU são armazenados na memória cache. A taxa de transferência de dados da memória cache para a CPU é rápida. Os blocos dentro do cache são conhecidos como linhas de cache. Quando os dados exigidos pela CPU estão disponíveis na memória cache, isso é chamado de acerto de cache. Quando os dados necessários não estão disponíveis no cache, isso é chamado de perda de cache e esses dados são trazidos da memória principal para a CPU.

Figura 1: Organização da Memória Cache

Existem dois tipos de organizações de memória cache. Em uma organização de cache de nível único, há um único cache. A memória principal transfere blocos para o cache enquanto o cache transfere palavras para a CPU. Em uma organização de cache multinível, existem três tipos de cache disponíveis. Eles são chamados de cache de Nível 1 (L1), Nível 2 (L2) e Nível 3 (L3). L1 é o menor cache enquanto L3 é o maior. Os dados usados ​​com mais frequência residem em L1. A taxa de transferência de dados do cache de Nível 1 para a CPU é a mais rápida.

No geral, a memória cache armazena os dados que a CPU mais requer. Leva menos tempo para a CPU acessar a memória cache do que para acessar a memória principal.

O que é memória virtual?

A memória virtual é uma memória lógica. É uma técnica de gerenciamento de memória controlada pelo sistema operacional. A memória virtual permite que o programador use mais memória para um programa do que a memória principal disponível. Por exemplo, suponha que um computador tenha uma memória principal de 4 GB e uma memória virtual de 16 GB. O usuário pode usar esses 16 GB para executar o programa. Portanto, o usuário pode executar programas que requerem mais memória do que a capacidade da memória principal.

Figura 2: Memória Virtual

No geral, a memória virtual oferece duas vantagens. Um programa é maior do que a memória física. A memória virtual permite usar mais memória do que a memória principal disponível. Além disso, evita o acesso direto à memória principal. Ao usar a memória virtual, os endereços virtuais são convertidos no endereço físico correspondente. Portanto, ele implementa proteção de memória.

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

Definição

A memória cache é um pequeno tipo de memória que fornece acesso a dados em alta velocidade a uma CPU e armazena dados com frequência. A memória virtual é uma técnica de gerenciamento de memória que cria uma ilusão para os usuários de uma memória principal maior.

Base

A memória cache é uma unidade de armazenamento. Portanto, é um componente de hardware. A memória virtual é uma técnica de gerenciamento de memória. É tratado pelo sistema operacional.

Uso

A CPU leva mais tempo para acessar a memória principal. Mas armazenar os dados no cache permite que a CPU acesse os dados em um tempo mínimo. Por outro lado, a memória virtual permite ao usuário executar programas maiores que a capacidade da memória principal.

Tamanho

A memória cache é menor em tamanho, enquanto a memória virtual é maior.

Velocidade

A memória cache é mais rápida do que a memória virtual.

Conclusão

A diferença entre a memória cache e a memória virtual é que a memória cache é uma unidade de armazenamento que armazena cópias de dados de locais de memória principal frequentemente usados ​​para que a CPU possa acessar esses dados mais rapidamente, enquanto a memória virtual é uma técnica de gerenciamento de memória que permite ao usuário para executar programas maiores do que a memória principal real.

Referência:

1. Introdução à memória cache, Tutorials Point (Índia) Unip. Ltd., 24 de janeiro de 2018, disponível aqui.2. Memória Virtual, Tutoriais Point (Índia) Unip. Ltd., 18 de janeiro de 2018, disponível aqui.

Cortesia de imagem:

1. “Memória virtual” de Ehamberg - Obra do próprio (CC BY-SA 3.0) via Commons Wikimedia

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