
La principale differenza tra la memoria virtuale e la memoria cache è che una memoria virtuale consente a un utente di eseguire programmi più grandi rispetto alla memoria principale, mentre la memoria cache consente un accesso più rapido ai dati che sono stati utilizzati di recente. Discuteremo alcune altre differenze con l'aiuto del grafico di confronto mostrato di seguito.
Grafico comparativo
Base per il confronto | Memoria virtuale | Memoria memorizzata nella cache |
---|---|---|
Di base | La memoria virtuale estende la capacità della memoria principale per l'utente. | La memoria cache fissa la velocità di accesso ai dati della CPU. |
Natura | La memoria virtuale è tecnica. | La memoria cache è un'unità di archiviazione. |
Funzione | La memoria virtuale consente l'esecuzione del programma che è più grande della memoria principale. | La memoria cache memorizza le copie dei dati originali che sono stati utilizzati di recente. |
Gestione della memoria | La memoria virtuale è gestita dal sistema operativo. | La memoria cache è completamente gestita dall'hardware. |
Taglia | La memoria virtuale è molto più grande della memoria cache. | La memoria cache ha dimensioni limitate. |
Mappatura | La memoria virtuale richiede strutture di mappatura per mappare l'indirizzo virtuale all'indirizzo fisico. | Nessuna struttura di mappatura è richiesta come tale in una memoria cache. |
Definizione di memoria virtuale
La memoria virtuale non è esattamente una memoria fisica di un computer, ma è una tecnica che consente l'esecuzione di un programma di grandi dimensioni che potrebbe non essere completamente inserito nella memoria principale . Consente al programmatore di eseguire i programmi più grandi della memoria principale.
Ora capiamo come funziona la memoria virtuale? Il programma ha il suo indirizzo di memoria virtuale che è diviso in un numero di pagine . Anche la memoria principale è divisa in un numero di pagine . Ora, come possiamo vedere, l'indirizzo virtuale di un programma è più grande della memoria principale disponibile. Quindi la mappa della memoria viene utilizzata per mappare l'indirizzo virtuale nella memoria principale.



- I programmi non sono più vincolati dal limite della memoria principale.
- La memoria virtuale aumenta il grado di multiprogrammazione.
- Aumenta l'utilizzo della CPU.
- La minore unità I / O richiederà di caricare o scambiare programmi in memoria.
Ma c'è un inconveniente della memoria virtuale, l'inserimento di più pagine di un programma nel disco rigido rallenta le prestazioni poiché l'accesso ai dati dal disco rigido richiede più tempo rispetto all'accesso ai dati dalla memoria principale.
Definizione di memoria cache
A differenza della memoria virtuale, Cache è un dispositivo di archiviazione implementato sul processore stesso. Porta le copie dei dati originali a cui è stato effettuato l'accesso di recente. I dati originali possono essere inseriti nella memoria principale o in una memoria secondaria. La memoria cache fissa la velocità di accesso dei dati, ma come? Capiamo

Differenze chiave tra memoria virtuale e cache
- La memoria virtuale estende la capacità della memoria principale virtualmente per l'utente. Tuttavia, la memoria cache rende più veloce l'accesso ai dati per la CPU.
- La cache è un'unità di memoria mentre la memoria virtuale è una tecnica .
- La memoria virtuale abilita le esecuzioni del programma più grandi della memoria principale. D'altra parte, la memoria cache memorizza le copie dei dati originali che sono stati usati di recente.
- La gestione della memoria virtuale viene eseguita dal sistema operativo . D'altra parte, la gestione della memoria cache viene eseguita dall'hardware .
- La memoria virtuale è molto più grande della dimensione della memoria cache.
- La tecnica di memoria virtuale richiede che le strutture di mappatura mappino l'indirizzo virtuale all'indirizzo fisico mentre la memoria cache non richiede alcuna struttura di mappatura.
Conclusione:
La memoria virtuale è una tecnica per espandere la capacità della memoria principale praticamente per gli utenti. La memoria cache è un'unità di archiviazione che memorizza i dati accessibili di recente che consentono alla CPU di accedervi più rapidamente.