Diferența majoră dintre memoria virtuală și memoria cache este că o memorie virtuală permite unui utilizator să execute programe care sunt mai mari decât memoria principală, în timp ce memoria cache permite accesul mai rapid la datele care au fost utilizate recent. Vom discuta mai multe diferențe cu ajutorul graficului de comparație prezentat mai jos.
Diagramă de comparație
Bazele comparației | Memorie virtuala | Memoria cache |
---|---|---|
De bază | Memoria virtuală extinde capacitatea memoriii principale pentru utilizator. | Memoria cache facilitează viteza de accesare a datelor din CPU. |
Natură | Memoria virtuală este tehnica. | Memoria cache este o unitate de stocare. |
Funcţie | Memoria virtuală permite executarea programului care este mai mare decât memoria principală. | Memoria cache stochează copii ale datelor originale care au fost utilizate recent. |
Gestionarea memoriei | Memoria virtuală este gestionată de sistemul de operare. | Memoria cache este gestionată integral de hardware. |
mărimea | Memoria virtuală este mult mai mare decât memoria memorată în cache. | Memoria cache a limitat dimensiunea. |
Cartografierea | Memoria virtuală necesită structuri de mapare pentru a mapa adresa virtuală la adresa fizică. | Nu sunt necesare structuri de mapare ca atare într-o memorie cache. |
Definiția Virtual Memory
Memoria virtuală nu este exact o memorie fizică a unui computer, ci o tehnică care permite executarea unui program mare care nu poate fi complet plasat în memoria principală . Acesta permite programatorului să execute programele mai mari decât memoria principală.
Acum, să înțelegem cum funcționează memoria virtuală? Programul are adresa sa de memorie virtuală, care este împărțită într-un număr de pagini . Memoria principală este de asemenea împărțită într-un număr de pagini . Acum, după cum vedem, adresa virtuală a unui program este mai mare decât memoria principală disponibilă. Deci, harta de memorie este utilizată pentru a mapa adresa virtuală în memoria principală.
- Programele nu mai sunt constrânse de limita memoriei principale.
- Memoria virtuală mărește gradul de multiprogramare.
- Creste utilizarea procesorului.
- Mai puțin unitatea de I / O va necesita încărcarea sau schimbarea programelor în memorie.
Dar există un dezavantaj al memoriei virtuale, plasarea mai multor pagini ale unui program pe hard disk va încetini performanța deoarece accesarea datelor de pe hard disk durează mai mult timp în comparație cu accesarea datelor din memoria principală.
Definiția Cache Memory
Spre deosebire de memoria virtuală, Cache-ul este un dispozitiv de stocare implementat chiar pe procesor . Acesta poartă copii ale datelor originale care au fost accesate recent. Datele originale pot fi plasate în memoria principală sau într-o memorie secundară. Memoria cache-ului facilitează viteza de accesare a datelor, dar cum? Să înțelegem.
Diferențele cheie între memoria virtuală și memoria cache
- Memoria virtuală extinde capacitatea de memorie principală practic pentru utilizator. Cu toate acestea, memoria cache face accesarea mai rapidă a datelor pentru CPU.
- Cache-ul este o unitate de memorie , în timp ce memoria virtuală este o tehnică .
- Memoria virtuală permite ca execuțiile programului să fie mai mari decât memoria principală. Pe celelalte mâini, memoria cache stochează copii ale datelor originale utilizate recent.
- Gestionarea memoriei virtuale se face de sistemul de operare . Pe celelalte mâini, gestionarea memoriei cache se face de hardware .
- Memoria virtuală este mult mai mare decât dimensiunea memorie cache.
- Tehnica de memorie virtuală necesită structurile de mapare pentru a mapa adresa virtuală la adresa fizică, în timp ce memoria cache nu necesită structuri de mapare.
Concluzie:
Memoria virtuală este o tehnică pentru a extinde capacitatea de memorie principală practic pentru utilizatori. Memoria de arhivă este o unitate de stocare care stochează datele accesate recent, ceea ce îi permite procesorului să acceseze mai repede.