Diferența dintre memoria virtuală și memoria cache în sistem de operare

Autor: Laura McKinney
Data Creației: 2 Aprilie 2021
Data Actualizării: 11 Mai 2024
Anonim
Diferența dintre memoria virtuală și memoria cache în sistem de operare - Tehnologie
Diferența dintre memoria virtuală și memoria cache în sistem de operare - Tehnologie

Conţinut


Memoria este un dispozitiv hardware care este utilizat pentru a stoca informațiile, fie temporar, fie permanent. În acest articol am discutat despre diferențele dintre memoria virtuală și memoria cache. A Memorie cache este o memorie de mare viteză care este utilizată pentru a reduce timpul de acces pentru date. Pe de altă parte, Memorie virtuala nu este exact o memorie fizică, ci este o tehnică care extinde capacitatea memoriei principale dincolo de limita ei.

Diferența majoră dintre memoria virtuală și memoria cache este că a memorie virtuala permite utilizatorului să execute programe mai mari decât memoria principală, întrucât, memorie cache permite accesul rapid la datele care au fost utilizate recent. Vom discuta despre alte diferențe cu ajutorul graficului de comparație prezentat mai jos.

  1. Diagramă de comparație
  2. Definiție
  3. Diferențele cheie
  4. Concluzie

Diagramă de comparație

Baza pentru comparațieMemorie virtualaMemorie în cache
De bazăMemoria virtuală extinde capacitatea memoriei principale pentru utilizator.Memoria cache fixează viteza de acces la date a procesorului.
NaturăMemoria virtuală este tehnică.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ă copiile datelor originale care au fost folosite recent.
Gestionarea memorieiMemoria virtuală este gestionată de sistemul de operare.Memoria cache este gestionată complet de hardware.
mărimea Memoria virtuală este mult mai mare decât memoria în cache.Memoria din cache are dimensiunea delimitată.
CartografiereaMemoria virtuală necesită structuri de mapare pentru a mapa o adresă virtuală pe adresa fizică.Nu sunt necesare structuri de mapare ca atare într-o memorie cache.


Definiția virtual memory

Memorie virtuala nu este exact o memorie fizică a unui computer, ci este o tehnică care permite executarea unui program mare care pot nu fi complet plasat în memoria principală. Permite programatorului să execute programele mai mari decât memoria principală.

Să înțelegem acum 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 putem vedea 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ă.


Pagina 0, 1, 2, este mapată în memoria principală și memoria principală se completează. Acum, când pagina 3 din memoria virtuală solicită spațiu în memoria principală, cea mai veche pagină plasată adică pagina 0 este transferată pe hard disk și evacuează locul pentru pagina 3, în memoria principală și procesul continuă. În cazul în care pagina 0 este din nou nevoie, atunci din nou cea mai veche pagină plasată la acel moment este transferată pe hard disk realizând locul pentru pagina 0.

Dacă cele două programe au nevoie de aceleași date, plasate în memoria principală, unitatea de mapare a memoriei permite ambelor programe să partajeze același spațiu de adresă în memoria principală unde date partajate este depozitat. Asta face partajarea de fișiere ușor.

Avantajele memoriei virtuale sunt:

  • Programele nu mai sunt limitate de limita memoriei principale.
  • Memoria virtuală crește gradul de multiprogramare.
  • Crește utilizarea procesorului.
  • Unitatea I / O mai mică va trebui să încarce sau să schimbe programe în memorie.

Dar există un dezavantaj de memorie virtuală, plasând mai multe pagini ale unui program pe hard disk încet în jos performanţă 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ă, ascunzătoare este un dispozitiv de stocare implementat pe procesor în sine. Poartă copii ale datelor originale la care a fost accesat recent. Datele originale pot fi plasate în memoria principală sau în memoria secundară. Memoria cache se inchide viteza de acces a datelor, dar cum? Să înțelegem

Putem spune că viteza de acces a procesorului este limitat la viteza de acces a memoria principala. Ori de câte ori un program trebuie executat de procesor, acesta îl preia din memoria principală. Dacă o copie a programului este deja prezent în ascunzătoare implementat pe procesor. Procesul ar putea accesa mai rapid aceste date, ceea ce va duce la o execuție mai rapidă.

  1. Memorie virtuala extinde capacitatea memoriei principale practic pentru utilizator. Cu toate acestea, memoria cache face accesarea datelor mai repede pentru procesor.
  2. Cache este o amintire unitate de stocare în timp ce memoria virtuală este a tehnică.
  3. Memoria virtuală permite execuțiile programului care mai mare decât memoria principală. Pe celelalte mâini, memoria cache stochează copii de date originale care au fost utilizate recent.
  4. Gestionarea memoriei virtuale se face de către sistem de operare. Pe de altă parte, gestionarea memoriei cache este realizată de către hardware-.
  5. Memoria virtuală este departe mai mare decât memoria în cache ca mărime.
  6. Tehnica de memorie virtuală necesită structuri de cartografiere pentru a face o adresă virtuală pe o adresă fizică, în timp ce memoria cache nu necesită orice structură de mapare.

Concluzie:

Memoria virtuală este o tehnică de extindere a capacității memoriei principale practic pentru utilizatori. Memoria cache este o unitate de stocare care stochează datele accesate recent, ceea ce permite procesorului să îl acceseze mai rapid.