Билет 41. Сегментное, страничное и сегментно-страничное распределение памяти. Виды фрагментации памяти. Борьба с фрагментацией. Достоинства и недостатки методов распределения памяти.

1. Сегмент кода 11. Св-ва: возможность чтения (R). Запись запрещена всегда. Размер. Привилегии. Базовый адрес.

2. Сегмент данных 10. Св-ва: возможность записи(W). Чтение разрешено всегда. Размер. Привилегии. Базовый адрес.

3. Сегмент LDT 00. Св-ва: чтение и запись НЕВОЗМ. Размер. Привилегии. Базовый адрес.

ВСЕ свойства сегмента хранятся в ДЕСКРИПТОРЕ сегмента. ВСЕ дескрипторы хранятся в GDT или LDT

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

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


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

где, таблица страниц – это внутренняя структура ОС. Адрес страницы входит в контекст процесса. Таблица страниц состоит из дескрипторов. Каждый дескриптор включает:

  • Номер физической таблицы
  • Признак присутствия в ОЗУ (формируется аппаратно)
  • Признак модификации (формируется аппаратно)
  • Признак обращения (формируется аппаратно)


Виртуальный адрес, который представлен парой (p, sv) преобразуется в (n, sf).Объем страницы равен степени 2k, тогда смещение (s) можно получить отделением к разрядов.Например. Если размер страницы = 1кб (210), то 50718 = 101 000 111 0012, 108=28 – номер страницы.
Достоинства:

§ нет проблемы внешней фрагментации

§ никак не ограничены размерами физической памяти, т.е. мы часть страниц можем всегда держать во вне и через прерывания их закачивать, когда они нам нужны

Недостатки:

§ проблема принятия решений об организации таблицы страниц

§ при страничной организации памяти адресное пространство представляет одну модель от 0 до Ν. Т.е. мы работаем с одним пространством адресации в этом процессе. В некоторых ситуациях это бывает не очень удобно.

Сегментное распределение

При страничном распределении виртуальное адресное пространство делится на равные части механически, без учета смыслового значения данных. В одной странице могут одновременно оказаться код программы и исходные данные. Такой подход не позволяет обеспечить раздельную обработку, например защиту, совместный доступ и т.д.Разбиение адресного пространства на "осмысленные" части устраняет эти недостатки и называется сегментным распределением. Примеры сегментов: код программы, массив исходных данных и пр.На этапе создания процесса, ОС создает таблицу сегментов процесса, аналогичную таблице страниц. (рис.13)

Билет 41. Сегментное, страничное и сегментно-страничное распределение памяти. Виды фрагментации памяти. Борьба с фрагментацией. Достоинства и недостатки методов распределения памяти. - student2.ru


Рис.14 Распределение памяти сегментами

Билет 41. Сегментное, страничное и сегментно-страничное распределение памяти. Виды фрагментации памяти. Борьба с фрагментацией. Достоинства и недостатки методов распределения памяти. - student2.ru


Рис.15. Схема преобразования виртуального адреса в физический при сегментном распределении.

где, физический адрес получается путем сложения по модулю 2. К недостаткам сегментного распределения можно отнести следующие:

  • Использование операции сложения при формировании физического адреса приводит к понижению производительности
  • Избыточность. Т.к. сегмент в общем случае может быть больше страницы, то следовательно единица обмена между ОЗУ и диском более крупная, что приводит к замедлению работы.

Достоинства:

· простота реализации

· размер таблицы сегментов может быть много меньше размера таблицы страниц

Недостатки:

· наличие внешней фрагментации

· сегмент рассматривается как единое целое

Наши рекомендации