Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Поняття віртуальної пам'яті

Розподіл пам'яті з використанням дискового простору

У цьому розділі мова піде про найбільш поширену в даний час схемою управління пам'яттю, відомої як віртуальна пам'ять, в рамках якої здійснюється складний зв'язок між апаратним та програмним забезпеченням. Розбиття адресного простору процесу на частини і динамічна трансляція адреси дозволили виконувати процес навіть за відсутності деяких його компонентів в оперативній пам'яті. Наслідком такої стратегії є можливість виконання великих програм, розмір яких може перевищувати розмір оперативної пам'яті.

 

Вже досить давно користувачі зіткнулися з проблемою розміщення в пам'яті програм, розмір яких перевищував наявну вільну пам'ять. Рішенням було розбиття програми на частини, звані оверлеями. 0-ой оверлей починав виконуватися першим. Коли він закінчував своє виконання, він викликав інший оверлей. Всі оверлеї зберігалися на диску і переміщувались між пам'яттю і диском засобами операційної системи. Однак розбивка програми на частини і планування їхнього завантаження в оперативну пам'ять мав здійснювати програміст.

Розвиток методів організації обчислювального процесу в цьому напрямку привело до появи методу, відомого під назвою віртуальна пам'ять. Віртуальним називається ресурс, який користувачу чи користувача програмі представляється володіє властивостями, якими він насправді не володіє. Так, наприклад, користувачеві може бути надана віртуальна оперативна пам'ять, розмір якої перевершує всю наявну в системі реальну оперативну пам'ять. Користувач пише програми так, як ніби в його розпорядженні є однорідна оперативна пам'ять великого обсягу, але насправді всі дані, використовувані програмою, зберігаються на одному або декількох різнорідних ЗП, звичайно на дисках, і при необхідності частинами відображаються в реальну пам'ять.

Вперше віртуальна пам'ять була використана в операційній системі машини Atlas (1962 рік). Встановивши новий стандарт продуктивності, Atlas Supervisor була здатна виконувати до 16 завдань одночасно.

Оскільки основний об'єм пам'яті, яку займає процес, більшу частину часу залишається вільним, то є таке правило "дев'яносто до десяти", або правило локалізації, яке стверджує, що 90% звернень до пам'яті в процесі доводиться на 10% його адресного простору. Тому в основній пам'яті можна зберігати постійно тільки ті розділи адресного простору, які дійсно використовуються в конкретний момент. При цьому невикористані розділи адресного простору можна ставити у відповідність менш швидкої пам'яті, наприклад, простору на жорсткому диску, а в цей час інші процеси можуть використовувати основну пам'ять, займану раніше цими розділами. Якщо ж ці розділи знадобляться знову, то вони можуть бути завантажені з диска в основну пам'ять (може бути в інше адресний простір).

Таким чином, віртуальна пам'ять - це сукупність програмно-апаратних засобів, що дозволяють користувачам писати програми, розмір яких перевершує наявну оперативну пам'ять. Для цього віртуальна пам'ять вирішує наступні завдання:

1. Розміщує дані в ЗП різного типу, наприклад, частина програми в оперативній пам'яті, а частина на диску.

2. Переміщує по мірі необхідності дані між запам'ятовуючими пристроями різного типу, наприклад, довантажує потрібну частину програми з диска в оперативну пам'ять.

3. Перетворює віртуальні адреси у фізичні.

Всі ці дії виконуються автоматично, без участі програміста, тобто механізм віртуальної пам'яті є прозорим по відношенню до користувача. Найбільш поширеними реалізаціями віртуальної пам'яті є сторінкове, сегментні і сторінковому-сегментний розподіл пам'яті, а також свопінг.

 




Переглядів: 1200

<== попередня сторінка | наступна сторінка ==>
Система двійників | Сторінковий розподіл

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.002 сек.