Однозадачная система без подкачки на диск

I) Методы без использования внешней памяти

АЛГОРИТМЫ РАСПРЕДЕЛЕНИЯ ПАМЯТИ

Все алгоритмы распределения памяти разделены на 2 класса – это алгоритмы, в которых используется перемещение сегментов процессов между оперативной памятью и диском и алгоритмы, в которых внешняя память не используется.

Память разделяется только между программой и операционной системой.

Схемы разделения памяти:

1) 2) 3)

Третий вариант используется в MS-DOS. Та часть, которая находится в ПЗУ, часто называется BIOS.

Распределение памяти с фиксированными разделами

Память разбивается на несколько областей фиксированной величины (разделы). Такое разбиение может быть выполнено либо при загрузке системы, либо при ее установке. Процессы могут быть разными, поэтому каждому разделу необходим разный размер памяти.

Системы могут иметь:

1) общую очередь ко всем разделам

2) к каждому разделу отдельную очередь

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

Подсистема управления памятью в этом случае выполняет следующие задачи:

1) Сравнение объема памяти, требуемого для загружаемого процесса с размерами свободных разделов и выбор подходящего

2) Загрузка программы в раздел и настройка адресов.

Преимущество: простота реализации.

Недостаток: ограниченное число разделов.

Распределение памяти динамическими разделами

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

Состояние памяти в различные моменты времени

Функции операционной системы для реализации данного алгоритма:

1) Ведение таблиц свободных и занятых областей с указанием начальных адресов и размеров участков памяти

2) При создании новых процессов производится анализ требований к памяти, просмотр таблицы свободных областей и выбор раздела, размер которого достаточен для процесса

3) Загрузка программы в выделенный раздел и корректировка таблиц свободных и занятых областей

4) После завершения процесса – корректировка таблиц свободных и занятых областей

Преимущество: гибкость.

Недостаток: сложность и появление фрагментации памяти.

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

Распределение памяти перемещаемыми разделами

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

Преимущество: гибкость.

Недостаток: требуются затраты времени на сжатие.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: