Сторінковий спосіб організації пам’яті
Сегментна, сторінкова і сегментно-сторінкова організація пам'яті
Сегментний спосіб організації пам'яті
Першим серед розривних методів распредел ?? ення пам'яті був сегментний. Природним способом розбиття програми на частини є розбиття її на логічні елементи - т.зв. сегменти. Кожен програмний модуль повинна бути сприйнятий як окремий сегмент.
Перетворення імені сегмента в його порядковий номер здійснює система програмування. ОС розміщує сегменти в пам'ять і для кожного сегмента отримує інформацію про його початку.
Переваги сегментного методу:
· Програму можна завантажувати не цілком, а в міру вкрай важливо сті;
· Деякі програмні модулі бувають розділяються - вони є сегментами, і до них досить легко можна організувати доступ за допомогою приміщення в дескриптори сегментів покажчики ?? їй на такі колективні сегменти.
Недоліки сегментного методу:
· Уповільнення доступу до необхідної комірки пам'яті;
· Втрати пам'яті і процесорного часу на розміщення і обробку дескрипторних таблиць;
· Фрагментація пам'яті - в силу того, що розмір сегмента повинна бути різним, після завершення роботи одних сегментів і завантаження нових (дуже малоймовірно, що точно такого ж розміру) неминуче виникнення вільних малих ділянок пам'яті.
Як приклад операційної системи, яка застосовує сегментное перетворення пам'яті, можна назвати OS / 2.
Сторінкове перетворення полягає в заміні номера віртуальної сторінки на номер фізичної. Кожній віртуальної сторінці ставиться у відповідність фізична, ᴛ.ᴇ. сторінкове перетворення - ϶ᴛᴏ відображення фізичних сторінок в віртуальні. Для цього відображення існує таблиця дескрипторів сторінок. Відмінність від таблиці дескрипторів сегментів полягає в тому, що тут не потрібно поле довжини.
Сторінкове перетворення являє собою сукупність апаратних і програмних засобів, що забезпечують механізми віртуальної пам'яті, свопинга і реалізацію інших алгоритмів управління пам'яттю.
Основною перевагою сторінкового способу распредел ?? ення пам'яті є мінімально можлива фрагментація.
Недоліки сторінкового перетворення:
· Як і при сегментному способі, втрати пам'яті і процесорного часу на розміщення і обробку дескрипторних таблиць;
· Програми розбиваються на сторінки випадково, без урахування логічних взаємозв'язків, наявних в коді, отже, міжсторінкових переходи реалізуються частіше, ніж міжсегментні. Внаслідок цього важче організувати розділ ?? ення програмних модулів між виконуються процесами.