Виртуелна меморија у ОС-у: Шта је, Пејџинг потражње, предности

Преглед садржаја:

Anonim

Шта је виртуелна меморија?

Виртуелна меморија је механизам за складиштење који кориснику даје илузију да има веома велику главну меморију. То се постиже третирањем дела секундарне меморије као главне меморије. У виртуелној меморији корисник може да складишти процесе веће величине од доступне главне меморије.

Стога, уместо да један главни процес учита у главну меморију, ОС учитава различите делове више процеса у главну меморију. Виртуелна меморија се углавном примењује са страничењем и сегментацијом захтева.

У овом упутству за оперативни систем научићете:

  • Шта је виртуелна меморија?
  • Како функционише виртуелна меморија?
  • Шта је позивање на захтев?
  • Врсте метода замене странице
  • Замена ФИФО странице
  • Оптимални алгоритам
  • Замена странице ЛРУ
  • Предности виртуелне меморије
  • Мане виртуелне меморије

Зашто треба виртуелна меморија?

Ево разлога за коришћење виртуелне меморије:

  • Кад год ваш рачунар нема простора у физичкој меморији, записује оно што треба да запамти на чврсти диск у свап датотеку као виртуелну меморију.
  • Ако рачунару са оперативним системом Виндовс треба више меморије / РАМ-а, а затим инсталираног у систем, у ту сврху користи мали део чврстог диска.

Како функционише виртуелна меморија?

У савременом свету виртуелна меморија је постала прилично честа ових дана. Користи се кад год неке странице треба да се учитају у главну меморију за извршење, а меморија није доступна за те многе странице.

Дакле, у том случају, уместо да спречи странице да уђу у главну меморију, ОС тражи РАМ простор који се у последње време минимално користи или који није референциран у секундарну меморију да би направио простор за нове странице у главно сећање.

Хајде да разумемо управљање виртуелном меморијом уз помоћ једног примера.

На пример:

Претпоставимо да ОС захтева 300 МБ меморије за чување свих покренутих програма. Међутим, тренутно постоји само 50 МБ доступне физичке меморије ускладиштене у РАМ-у.

  • Тада ће ОС поставити 250 МБ виртуелне меморије и користити програм назван Виртуал Мемори Манагер (ВММ) за управљање тих 250 МБ.
  • Дакле, у овом случају, ВММ ће створити датотеку на чврстом диску величине 250 МБ за складиштење додатне меморије која је потребна.
  • ОС ће се сада обраћати меморији јер узима у обзир 300 МБ стварне меморије ускладиштене у РАМ-у, чак и ако је на располагању само 50 МБ простора.
  • Задатак је ВММ-а да управља меморијом од 300 МБ, чак и ако је на располагању само 50 МБ стварног меморијског простора.

Шта је позивање на захтев?

Механизам пејџинга по захтеву веома је сличан пејџинг систему са заменом, где се процеси ускладиштени у секундарној меморији и на страницама учитавају само на захтев, а не унапред.

Дакле, када дође до пребацивања контекста, ОС никада не копира ниједну страницу старог програма са диска или било коју страницу новог програма у главну меморију. Уместо тога, започиње извршавање новог програма након учитавања прве странице и дохваћа странице програма на које се упућује.

Ако се током извршавања програма референцира страница која можда није доступна у главној меморији јер је замењена, тада је процесор сматра неважећом референцом меморије. То је зато што грешка на страници и трансфери враћају контролу из програма у ОС, који захтева да се страница врати у меморију.

Врсте метода замене странице

Ево неколико важних метода замене странице

  • ФИФО
  • Оптимални алгоритам
  • Замена странице ЛРУ

Замена ФИФО странице

ФИФО (Фирст-ин-фирст-оут) је једноставан начин примене. Овим методом меморија бира страницу за замену која се најдуже налази у виртуелној адреси меморије.

Карактеристике:

  • Кад год се учита нова страница, страница која недавно дође у меморију се уклања. Дакле, лако је одлучити која страница треба да се уклони, јер је њен идентификациони број увек на ФИФО стогу.
  • Најстарија страница у главној меморији је она коју треба прво одабрати за замену.

Оптимални алгоритам

Оптимални метод замене странице бира ону страницу за замену за коју је време до следеће референце најдуже.

Карактеристике:

  • Оптимални алгоритам резултира најмањим бројем грешака на страници. Овај алгоритам је тешко применити.
  • Оптимална метода алгоритма за замену страница има најнижу стопу грешке странице од свих алгоритама. Овај алгоритам постоји и који би се требао звати МИН или ОПТ.
  • Замените страницу коју иначе не бисте користили дужи временски период. Користи само време када треба да се користи страница.

Замена странице ЛРУ

Комплетни облик ЛРУ је страница Најмање недавно коришћена. Овај метод помаже ОС-у да пронађе употребу странице у кратком временском периоду. Овај алгоритам треба имплементирати повезивањем бројача са парном страницом.

Како то функционише?

  • Страница која се најдуже није користила у главној меморији је она која ће бити изабрана за замену.
  • Једноставно за примену, водите листу, замените странице враћањем у прошлост.

Карактеристике:

  • Метод замене ЛРУ има највећи број. Овај бројач се назива и регистрима старења, који одређују њихову старост и колико на њих повезане странице такође треба референцирати.
  • Страница која се најдуже није користила у главној меморији је она коју треба изабрати за замену.
  • Такође задржава листу и замењује странице осврћући се у прошлост.

Стопа грешке

Стопа кварова је фреквенција с којом дизајнирани систем или компонента откаже. Изражава се у кваровима у јединици времена. Означава се грчким словом λ (ламбда).

Предности виртуелне меморије

Ево предности / предности коришћења виртуелне меморије:

  • Виртуелна меморија помаже у постизању брзине када је за извршење програма потребан само одређени сегмент програма.
  • Веома је корисно у примени окружења са више програма.
  • Омогућава вам покретање више апликација одједном.
  • Помаже вам да многе велике програме уклопите у мање програме.
  • Заједнички подаци или код могу се делити између меморије.
  • Процес може постати чак и већи од целокупне физичке меморије.
  • Подаци / код треба читати са диска кад год је то потребно.
  • Код се може ставити било где у физичкој меморији без потребе за премештањем.
  • Требало би одржавати више процеса у главној меморији, што повећава ефикасну употребу ЦПУ-а.
  • Свака страница се чува на диску док не буде потребна након тога, биће уклоњена.
  • Омогућава покретање више апликација истовремено.
  • Не постоји одређено ограничење степена мултипрограмирања.
  • Треба написати велике програме, јер је расположиви виртуелни адресни простор више у поређењу са физичком меморијом.

Мане виртуелне меморије

Ево недостатака / недостатака употребе виртуелне меморије:

  • Апликације могу радити спорије ако систем користи виртуелну меморију.
  • Вероватно је потребно више времена за пребацивање између апликација.
  • Нуди мање простора на чврстом диску за вашу употребу.
  • Смањује стабилност система.
  • Омогућава покретање већих апликација у системима који не нуде довољно физичке РАМ меморије да би их покренули.
  • Не нуди исте перформансе као РАМ.
  • То негативно утиче на укупне перформансе система.
  • Заузмите простор за складиштење, који се иначе може користити за дугорочно складиштење података.

Резиме:

  • Виртуелна меморија је механизам за складиштење који кориснику даје илузију да има веома велику главну меморију.
  • Виртуелна меморија је потребна кад год рачунар нема простора у физичкој меморији
  • Механизам пејџинга по захтеву веома је сличан пејџинг систему са заменом, где се процеси ускладиштени у секундарној меморији и на страницама учитавају само на захтев, а не унапред.
  • Важне методе замене странице су 1) ФИФО 2) Оптимални алгоритам 3) Замена ЛРУ странице.
  • У ФИФО (Фирст-ин-фирст-оут-оут) начину, меморија бира страницу за замену која се најдуже налази у виртуелној адреси меморије.
  • Оптимални метод замене странице бира ону страницу за замену за коју је време до следеће референце најдуже.
  • ЛРУ метода помаже ОС-у да пронађе употребу странице у кратком временском периоду.
  • Виртуелна меморија помаже у постизању брзине када је за извршење програма потребан само одређени сегмент програма.
  • Апликације могу радити спорије ако систем користи виртуелну меморију.