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


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


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


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


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


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


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


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


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


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



Стратегії управління сторінковою пам'яттю

Для кожної віртуальної сторінки запис у таблиці сторінок містить номер відповідного сторінкового кадру в оперативній пам'яті, а також атрибути сторінки для контролю звернень до пам'яті.

Що ж відбувається, коли потрібної сторінки в пам'яті немає або операція звернення до пам'яті неприпустима? Природно, що операційна система повинна бути якось повідомлена про подію. Зазвичай для цього використовується механізм виняткових ситуацій. При спробі виконати подібне звернення до віртуальної сторінці виникає виняткова ситуація "сторінкове порушення" (page fault), що приводить до виклику спеціальної послідовності команд для обробки конкретного виду сторінкового порушення.

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

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

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

 

• обслуговування виняткової ситуації (page fault);

• читання (підкачки) сторінки з вторинної пам'яті (іноді, при недоліку місця в основній пам'яті, необхідно виштовхнути одну зі сторінок з основної пам'яті у вторинну, тобто здійснити заміщення сторінки);

• відновлення виконання процесу, що викликав даний page fault.

Для вирішення першої і третьої задач ОС виконує до декількох сот машинних інструкцій протягом кількох десятків мікросекунд. Час підкачки сторінки близько до декільком десяткам мілісекунд. Проведені дослідження показують, що ймовірності page fault 5x10-7 виявляється достатньо, щоб знизити продуктивність сторінкової схеми управління пам'яттю на 10%. Таким чином, зменшення частоти page faults є однією з ключових завдань системи управління пам'яттю. Її рішення зазвичай пов'язане з правильним вибором алгоритму заміщення сторінок.

Тому програмне забезпечення підсистеми управління пам'яттю ОС повинно бути пов'язане з реалізацією наступних стратегій.

Стратегія вибірки (fetch policy) - в який момент слід переписати сторінку з вторинної пам'яті в первинну. Існує два основних варіанти вибірки - за запитом і з попередженням. Алгоритм вибірки за запитом вступає в дію в той момент, коли процес звертається до відсутньої сторінці, вміст якої знаходиться на диску. Його реалізація полягає у завантаженні сторінки з диска у вільну фізичну сторінку і корекції відповідного запису таблиці сторінок.

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

Стратегія розміщення (placement policy) - в яку ділянку первинної пам'яті помістити надходить сторінку. У системах з сторінкової організацією все просто - в будь-який вільний сторінковий кадр. У випадку систем з сегментною організацією необхідна стратегія, аналогічна стратегії з динамічним розподілом.

Стратегія заміщення (replacement policy) - яку сторінку потрібно виштовхнути в зовнішню пам'ять, щоб звільнити місце в оперативній пам'яті. Розумна стратегія заміщення, реалізована у відповідному алгоритмі заміщення сторінок, дозволяє зберігати в пам'яті найнеобхіднішу інформацію і тим самим знизити частоту сторінкових порушень. Заміщення має відбуватися з урахуванням виділеного кожному процесу кількості кадрів. Крім того, потрібно вирішити, чи повинна заміщається сторінка належати процесу, який ініціював заміщення, або вона повинна бути обрана серед всіх кадрів основної пам'яті.

 




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

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

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

  

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


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