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

47. Странично-сегментное распределение памяти

Данный метод представляет собой комбинацию страничного и сегментного распределения памяти и, вследствие этого, сочетает в себе достоинства обоих подходов. Виртуальное пространство процесса делится на сегменты, а каждый сегмент, в свою очередь, делится на виртуальные страницу. Виртуальные страницы нумеруются не в пределах всего адресного пространства процесса, а в пределах сегмента. Виртуальный адрес в этом случае выражается тройкой (номер сегмент, номер страницу, смещение в странице).

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

Таблица страниц содержит дескрипторы страниц. Таблица сегментов состоит из дескрипторов сегментов, которые содержат описание расположения таблиц страниц в физической памяти.

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

1. По номеру сегмента, заданному в виртуальном адресе, из таблицы сегментов извлекается физический адрес соответствующей таблицы страниц.

2. По номеру виртуальной страницы, заданному в виртуальном адресе, из таблицы страниц извлекается дескриптор, в котором указан номер физической страницы.

3. К номеру физической страницы пристыковывается младшая часть виртуального адреса – смещение.

48. Борьба с фрагментацией памяти

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

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

В настоящее время все множество реализаций виртуальной памяти может быть представлено тремя классами.

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

2. Сегментная виртуальная память предусматривает перемещение данных сегментами - частями виртуального адресного пространства произвольного размера, полученными с учетом смыслового значения данных.

3. Сегментно-страничная виртуальная память использует двухуровневое деление: виртуальное адресное пространство делится на сегменты, а затем сегменты делятся на страницы. Единицей перемещения данных здесь является страница.