загрузка...
загрузка...
На головну

Сторінкова організація пам'яті

Дивіться також:
  1. II. Організація інженерно-геологічних робіт.
  2. II. ВИМОГИ ДО ОРГАНІЗАЦІЙ
  3. III. Організація діяльності ПМПК
  4. Length - розмір в байтах блоку пам'яті, яку потрібно заповнити нулями.
  5. PR в некомерційних організаціях
  6. SIPP (SIP) -модулем пам'яті.
  7. V. Організація діагностично-корекційного процесу в ПМПК
  8. VI. НЕЙРОХІМІЧНІ МЕХАНІЗМИ пластичність і ПАМ'ЯТІ.
  9. АВТОНОМНА НЕКОМЕРЦІЙНА ОРГАНІЗАЦІЯ
  10. Автономна некомерційна організація.
  11. Адреса комірки пам'яті
  12. Адресація пам'яті в IA_32

Згідно / 1, 5, 6 /, при сторінкової організації пам'яті віртуальне і фізичне адресні простори розбиваються на блоки фіксованого розміру - сторінки. Розмір сторінок зазвичай вибирається рівним 4 Кбайта (рідше 4 Мбайта). Блок ОП, відповідний віртуальної сторінці, часто називають сторінковим кадром або фреймом. Сторінках віртуальної і фізичної пам'яті привласнюють номери. Сторінкова організація пам'яті створює ілюзію лінійної ОП такого ж розміру, як і адресний простір програми.

У моделі віртуальної пам'яті з сторінкової організацією відповідність між віртуальними і фізичними сторінками встановлюється в процесі розподілу пам'яті при заповненні спеціальної таблиці сторінок, кожен рядок якої (сторінковий дескриптор) містить базову адресу сторінкового кадру в ОП, а також біти управління віртуальною пам'яттю і біти захисту інформації на сторінці. Призначення і використання бітів присутності P і доступу A таке ж, як у однойменних бітів при сегментної організації пам'яті. ознака модифікації D встановлюється в сторінковому дескрипторі при виконанні операції запису в обумовлену дескриптором сторінку. ОС використовує значення цього біта для виключення необов'язкових Свопінг сторінки. Якщо D = 1, то на сторінку було звернення для запису і перед видаленням з ОП її необхідно переписати в ВЗУ, в іншому випадку, (D = 0) цього робити не потрібно. Сторінкове розподіл пам'яті аналогічно сегментному розподілу пам'яті, представленому на малюнку 8.1, тільки замість сегментів використовуються сторінки.

Принципи роботи системи віртуальної пам'яті з сторінкової організацій схожі на принципи функціонування сегментной пам'яті. При зверненні до пам'яті номер віртуальної сторінки витягується з віртуального адреси і використовується як індекс для пошуку потрібного дескриптора в таблиці сторінок. Якщо сторінка присутня в ОП, то з відповідного дескриптора витягується базовий адресу відповідного сторінкового кадру, який спільно зі зміщенням в віртуальному адресу, визначає фізичну адресу необхідного операнда (Малюнок 8.3) / 1 /.

Малюнок 8.3 - Обчислення фізичної адреси в сторінкової пам'яті

Якщо потрібна сторінка відсутня в ОП, то формується переривання, по якому ОС завантажує з ВЗП відсутню сторінку. Після цього управління повертається процесору, який повторно виконує команду звернення до пам'яті. Коли виникає потреба звільнити пам'яті деякі сторінки вивантажуються і ОП в ВЗУ. Для цього застосовується алгоритм LRU (вивантажується найдовше невикористаних сторінка) або алгоритм FIFO (вивантажується сторінка, яка була завантажена раніше всіх, незалежно від того, коли в останній раз проводилося до неї звернення).

Розглянутий метод роботи з віртуальною пам'яттю, при якому сторінки переносяться в ОП тільки в разі потреби, називається викликом сторінок на вимогу.

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

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

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

Однак сторінкова пам'ять теж схильна до фрагментації. Якщо для користувача програма і дані займають рівно ціле число сторінок, то при їх завантаженні в пам'ять вільного місця там не залишиться. Але, якщо вони не займають рівно ціле число сторінок, на останній сторінці залишиться невикористане простір, і в ОП будуть з'являтися вільні ділянки, марно займаючи місце. Ця проблема отримала назву внутрішньої фрагментації, Так як простір, який є внутрішнім по відношенню до сторінки. Щоб звести до мінімуму обсяг непотрібного простору, сторінки повинні бути невеликими, однак для їх зберігання потрібно велика таблиця сторінок.

Сегментна організація пам'яті «-- попередня | наступна --» Сегментно-сторінкова організація пам'яті
загрузка...
© om.net.ua