Лекция: Алгоритмы распределения памяти
Следует ли назначать каждому процессу одну непрерывную область физической памяти или можно выделять память «кусками»? Должны ли сегменты программы, загруженные в память, находиться на одном месте в течение всего периода выполнения процесса или их можно время от времени сдвигать? Что делать, если сегменты программы не помещаются в имеющуюся память? Разные ОС по-разному отвечают на эти и другие базовые вопросы управления памятью.
На рис. 4.3 представлена схема алгоритмов распределения памяти.
| Методы распределения памяти |
| С использованием внешней памяти |
| Без использования внешней памяти |
| Страничное распределение |
| Динамическими разделами |
| Сегментное распределение |
| Перемещаемыми разделами |
| Сегментно-страничное распределение |
Рис. 4.3. Классификация методов распределения памяти
Все алгоритмы разделены на два класса: алгоритмы, в которых используется перемещение сегментов процессов между оперативной памятью и диском, и алгоритмы, в которых внешняя память не привлекается.