У загальному випадку проектування менеджера пам'яті у складі ОС вимагає вибору трьох основних стратегій:
· стратегії розміщення: яку область реальної пам'яті виділити процесу? як вести облік свободной/занятой реальної пам'яті?
· стратегії підкачки: коли розміщувати процес (або частина його) в реальній пам'яті?
· стратегії витіснення: якщо реальної пам'яті не вистачає для задоволення чергового запиту, то у якого процесу відібрати раніше виділений ресурс реальної пам'яті (або частина його)?
Моделі віртуальної пам’яті
Для забезпечення коректної адресації незалежно від розташування програми в оперативній пам'яті комп'ютера в якості віртуальних адрес використовуються відносні адреси, тобто зміщення від деякої базової адреси
о Пласка (flat) модель пам'яті
• Кожному процесу виділяється єдина неперервна послідовність віртуальних адрес
• Зміщення дозволяє однозначно вказати на положення даних або команди в адресному просторі процесу
о Сегментна модель пам'яті
• Адресний простір процесу поділяється на окремі частини, які називаються сегментами (зустрічаються також інші назви: секції, області)
• Віртуальна адреса задається парою чисел (n, m), де n визначає сєгмент, а m - зміщення в даному сегменті
• Сегментна модель є більш складною, але й більш гнучкою.