Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС_модуль1.doc
Скачиваний:
11
Добавлен:
25.08.2019
Размер:
276.48 Кб
Скачать

Функции ос по управлению памятью

MMU (Memory Management Unit) или модуль управления памятью (или менеджер памяти, диспетчер памяти, или супервизор памяти) – часть ядра ОС, управляющая памятью.

Функции MMU:

  1. Управление свопингом (обменом между ОЗУ и HDD при недостаточном размере ОП).

  2. Отслеживание занятости памяти.

  3. Выделение памяти процессам и освобождение ее при завершении процесса.

  4. Преобразование адресов из виртуальных и реальные и обратно.

  5. Динамическое выделение памяти во время выполнения процесса (при ее недостатке).

  6. Защита памяти (Запрещает другим процессам записывать или читать данные из области, назначенной другому процессу. Реализуется это обычно так: В ЦП есть 2 граничных регистра, в которые записываются старший и младший адрес, ограничивающие диапазон ячеек для записи. При попытке процесса записать в память делается проверка выхода за границы. Если не попадаем в выделенную область, происходит страничное прерывание и вызывается обработчик.).

Стратегии управления памятью

Стратегии направлены на обеспечение наилучшего использования ресурсов ОП.

Стратегии делятся на 3 категории:

  1. Стратегии выборки.

  2. Стратегии замещения.

  3. Стратегии размещения.

Стратегии выборки (когда) определяют когда помещать в ОП очередной блок данных: до запроса системы (прогнозирование), или после. Сейчас наиболее интенсивно развиваются механизмы прогнозирования для повышения производительности.

Стратегии замещения (вместо чего) определяют какой блок данных выгрузить из ОП чтобы освободить место для нового.

Стратегии размещения (куда) определяют в какое место ОП помещать нужную для исполнения программу.

При загрузке в память очередного процесса встает проблема выбора свободного участка из множества имеющихся. Очевидно, что труднее найти место для большого процесса, чем для маленького. Если мы загрузим на большой свободный участок очередной небольшой процесс, то для следующего большого можно не найти места.

Стратегии размещения делятся на следующие:

1. Стратегия Первого подходящего – первый попавшийся, подходящий по размеру участок (самый быстрый метод и самый популярный).

2. Стратегия Самого подходящего – задание помещается в наименьший из подходящих участков (самый медленный метод, так как на поиск участков тратится много времени. Увеличивает фрагментацию, так как образуются мелкие свободные блоки).

3. Стратегия Наименее подходящего – новое задание помещается в максимальный по размеру участок ОП. Оставшийся участок часто оказывается большим для размещения следующей программы. А тем временем освобождается место на плотно занятых участках (используется совместно с файловой системой HPFS, например ОС Windows, OS/2).

Фрагментация памяти

Существует несколько видов управления памятью, но мы рассмотрим самый популярный из современных – это мультизадачность с переменными разделами.

При таком подходе заданиям разрешено занимать в памяти столько места, сколько им требуется. Размеры устанавливаются по размеру заданий.

Выделение памяти случайной длины в случайные моменты времени приводит к фрагментации памяти.

Фрагментация памяти – это наличие большого числа несмежных свободных участков. Крайняя степень фрагментированности - ни один свободный участок не вмещает новые данные, хотя их общий объем может быть большим. Даже при использовании этих участков всё равно остаются дыры.