Препоръчано, 2024

Избор На Редактора

Разлика между виртуалната и кеш паметта в операционната система

Паметта е хардуерно устройство, което се използва за съхраняване на информацията временно или постоянно. В тази статия обсъдих разликите между виртуалната и кеш паметта. Кеш паметта е високоскоростна памет, която се използва за намаляване на времето за достъп до данните. От друга страна, виртуалната памет не е точно физическа памет, а техника, която разширява капацитета на основната памет извън нейната граница.

Основната разлика между виртуалната памет и кеш паметта е, че виртуалната памет позволява на потребителя да изпълнява програми, които са по-големи от основната памет, докато кеш паметта позволява по-бърз достъп до данните, които са използвани наскоро. Ще обсъдим някои различия с помощта на таблицата за сравнение, показана по-долу.

Сравнителна таблица

Основа за сравнениеВиртуална паметКеширана памет
ОсновенВиртуалната памет разширява капацитета на основната памет за потребителя.Кеш паметта ускорява достъпа до данните на процесора.
природаВиртуалната памет е техника.Кеш паметта е единица за съхранение.
функцияВиртуалната памет позволява изпълнението на програмата, която е по-голяма от основната памет.Кеш паметта съхранява копията на оригиналните данни, които са използвани наскоро.
Управление на паметтаВиртуалната памет се управлява от операционната система.Кеш паметта се управлява изцяло от хардуера.
размерВиртуалната памет е много по-голяма от кешираната памет.Кеш паметта има ограничен размер.
картографияВиртуалната памет изисква структуриране на карти, за да се съпостави виртуалният адрес с физическия адрес.Не са необходими структури за картографиране като такива в кеш паметта.

Определение на виртуалната памет

Виртуалната памет не е точно физическа памет на компютъра, а е техника, която позволява изпълнението на голяма програма, която може да не бъде напълно поставена в основната памет . Тя дава възможност на програмиста да изпълнява програми, по-големи от основната памет.

Сега нека разберем как работи виртуалната памет? Програмата има адрес на виртуална памет, който е разделен на няколко страници . Основната памет също е разделена на няколко страници . Сега, както виждаме, виртуалният адрес на програмата е по-голям от наличната основна памет. Така че картата на паметта се използва за картографиране на виртуалния адрес към основната памет.

Страници 0, 1, 2 се преобразуват в основната памет и основната памет се запълва. Сега, когато страница 3 на виртуалната памет поиска място в основната памет, най-старата поставена страница, т.е. страница 0, се прехвърля на твърдия диск и евакуира мястото за страница 3 в основната памет и процесът продължава. В случай, че отново е нужна страница 0, тогава отново най-старата поставена страница по това време се прехвърля на твърдия диск, правейки мястото за страница 0.

Ако двете програми се нуждаят от едни и същи данни, поставени в основната памет, модулът за преобразуване на памет позволява и двете програми да споделят едно и също адресно пространство в основната памет, където се съхраняват споделените данни . Това прави споделянето на файлове лесно.

Ползите от виртуалната памет са:

  • Програмите вече не са ограничени от ограничението на основната памет.
  • Виртуалната памет увеличава степента на мултипрограмиране.
  • Увеличава използването на процесора.
  • Колкото по-малко входно / изходно устройство трябва да зареди, така и да сменя програми в паметта.

Но има и недостатък на виртуалната памет, поставянето на повече страници на програма на твърдия диск ще забави работата, тъй като достъпът до данните от твърдия диск отнема повече време в сравнение с достъпа до данни от основната памет.

Дефиниция на кеш паметта

За разлика от виртуалната памет, Cache е устройство за съхранение, внедрено в самия процесор . Тя носи копията на оригиналните данни, до които наскоро сте имали достъп. Оригиналните данни могат да бъдат поставени в основната памет или в вторичната памет. Кеш паметта ускорява достъпа до данните, но как? Нека разберем.

Можем да кажем, че скоростта на достъп на процесора е ограничена до скоростта на достъп до основната памет . Когато програмата се изпълнява от процесора, тя я извлича от основната памет. Ако копие на програмата вече присъства в кеша, реализиран на процесора. Процесът би могъл да има по-бърз достъп до тези данни, което ще доведе до по-бързо изпълнение.

Ключови разлики между виртуалната и кеш паметта

  1. Виртуалната памет практически разширява капацитета на основната памет за потребителя. Въпреки това, кеш паметта прави достъпа до данни по-бърз за CPU.
  2. Кешът е памет за съхранение, докато виртуалната памет е техника .
  3. Виртуалната памет позволява изпълнението на програмата, която е по - голяма от основната памет. От друга страна, кеш паметта съхранява копията на оригиналните данни, които са използвани напоследък.
  4. Управлението на виртуалната памет се извършва от операционната система . От друга страна, управлението на кеш паметта се извършва от хардуера .
  5. Виртуалната памет е много по - голяма от размера на кешираната памет.
  6. Техниката на виртуалната памет изисква картографските структури да картографират виртуалния адрес към физическия адрес, докато кеш паметта не изисква никакви структури за картографиране.

Заключение:

Виртуалната памет е техника, която практически разширява капацитета на основната памет за потребителите. Кеш паметта е устройство за съхранение, което съхранява наскоро достъпните данни, което позволява на CPU да има по-бърз достъп до нея.

Top