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

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

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

Функции ОС:

  • Ведение таблиц свободных и занятых участков

  • Поиск участка

  • Загрузка и корректировка таблиц

  • После завершения процесса корректировка таблиц

Достоинство: большая гибкость, по сравнению с методом распределения фиксированными разделами. Недостаток – высокий уровень фрагментации.

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

В этом методе разработчики попытались учесть достоинства и недостатки предыдущего.

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

2.Алгоритмы распределения памяти с использованием внешней памяти

Для полной загрузки процессора могут понадобиться иногда сотни интерактивных задач. Все они должны быть размещены в памяти, большая часть которых находится в состоянии ожидания. Логично было бы на время ожидания, в случае нехватки физической памяти, вытеснять их на диск, а когда необходимо, возвращать в память. Такая подмена (виртуализация) оперативной памяти дисковой памятью существенно повышает уровень мультипрограммирования. Важно, что все действия по перемещению происходят автоматически, без участия программиста. Для виртуализации применяются два основных подхода: Свопинг – образ процесса выгружается на диск и возвращается в память целиком. Часто называется подкачкой. Виртуальная память – образ процесса выгружается на диск и возвращается в память частями (сегментами, страницами...)

Реализация виртуальной памяти, представлена тремя классами: страничное распределение, сегментное, сегментно-страничное распределение

2.1.Страничное распределение

При страничном распределении виртуальная память делится на части одинакового и фиксированного для данной системы размера, называемыми виртуальными страницами. Вся оперативная память также делится на части такого же размера, называемые физическими страницами. Размер страницы выбирается равным степени двойки: 512, 1024, 4096 и т.д.

Адрес страницы входит в контекст процесса. Таблица страниц состоит из дескрипторов. Каждый дескриптор включает:

  • Номер физической таблицы

  • Признак присутствия в ОЗУ (формируется аппаратно)

  • Признак модификации (формируется аппаратно)

  • Признак обращения (формируется аппаратно)

Виртуальный адрес, который представлен парой (p, sv) преобразуется в (n, sf). Объем страницы равен степени 2k, тогда смещение (s) можно получить отделением к разрядов Аппаратно, из регистра извлекается адрес таблицы страниц. На основании номера страницы Р и длины записи L, определяется адрес дескриптора (A=AT+P*L). Из таблицы извлекается номер физической страницы N. К номеру N присоединяется смещение S.

Размер страниц, (часто 4096) влияет на размер таблиц, а это в свою очередь отражается на производительности. для устранения этого недостатка ВАП может делится на разделы, а в каждом разделе формируется своя таблица страниц. Этот вариант ускоряет поиск.