Читайте также:
|
|
Известны следующие стратегии замещения: Least Recently Used (LRU) – последний из недавно используемых (дольше всех не используемый, «удаление стариков»); Least Frequently Used (LFU) – используемый реже всех остальных (по минимальному значению счетчика числа обращений); «первым пришел – первым обслуживается» (First In – First Out, FIFO); случайная; упреждающей загрузки «лишних» прилегающих страниц и другие.
19)_Ч5Как при страничном распределении ОП осуществляется поддержка разделов?
Получило распространение и более сложное структурирование ВАП процесса, когда ВАП вначале делится на равные разделы, а разделы затем делятся на равные страницы размера 2k, причем число страниц в разделе для удобства преобразования специально подбирается равным 2n. Тогда состав виртуального адреса получает следующий вид:
m разрядов n разрядов k разрядов
номер раздела | номер страницы | Смещение |
Для каждого раздела строится собственная таблица страниц. Число дескрипторов в таблице и их длина подбираются так, чтобы объем самой таблицы стал равным объему страницы. Например, при объеме таблицы (страницы) 4 Кбайта и длине дескриптора 4 байта число дескрипторов определяется как 4 Кбайта / 4 байта = 1024 = 210 (n = 10). Каждый раздел описывается дескриптором, идентичным дескриптору обычной страницы. Дескрипторы разделов сведены в таблицу разделов (каталог страниц). Физический адрес таблицы разделов активного процесса также содержится в специальном регистре процессора и поэтому всегда тоже известен ОС. Но с таблицей страниц связана одна важнейшая особенность: страница, содержащая таблицу разделов, никогда не выгружается из ОП, иначе работа виртуальной памяти была бы невозможна.
Дополнительно:
Выгрузка страниц с таблицами страниц позволяет экономить ОП, но приводит к дополнительным временным затратам при получении физического адреса, когда искомой страницы нет в ОП.
Схема преобразования адресов при двухуровневой структуризации ВАП показана на рис.5.7.
Рис.5.7. Схема преобразования адресов при двухуровневой структуризации ВАП
20)_Ч5Какие недостатки страничного распределения ОП устраняет сегментное распределение?
21)_Ч5 Чем сегментное распределение ОП отличается от страничного?
Чем сегментное распределение ОП отличается от страничного?
Размер ВАП процесса в общем случае не кратен размеру страницы. Размер страницы специально выбирается равным 2к, например, 512, 1024, 4096 байт, что упрощает механизм преобразования адресов [2]. При порождении процесса ОС загружает в ОП несколько его виртуальных страниц (начальные страницы кодового сегмента и сегмента данных). Страницы могут быть расположены в ОП не подряд. Копия всего ВАП находится на диске.
Для каждого порождаемого процесса ОС создает в ОП таблицу страниц, содержащую записи о каждой виртуальной странице процесса - дескрипторы страниц
При страничной организации ВАП процесса делится на равные часта механически, без учета смыслового значения данных. Это не позволяет эффективно дифференцировать доступ для записи к сегментам кода или сегментам данных процесса. Кроме того, разбиение ВАП на «осмысленные» части делает принципиально возможным совместное использование фрагментов программ разными процессами. Например, двум процессам может требоваться одна и та же реентерабельная подпрограмма. Тогда ее можно в качестве сегмента включить в ВАП обоих процессов, а при отображении в физическую память сегменты ВАП с этой подпрограммой проецировать на одну и ту же область физической памяти (рис.22). Так оба процесса получат доступ к единственной копии подпрограммы в ОП [2].
22)_Ч5Как выполняется сегментное распределение ОП?
ОС переводит активный процесс в состояние ожидания, активизирует очередной процесс, а параллельно организует загрузку нужного сегмента с диска. А при отсутствии в ОП свободного места для загрузки данного сегмента, ОС выбирает «ненужный» сегмент для выгрузки по критериям, аналогичным критериям выгрузки страниц.
23)_Ч5Как представляется виртуальный адрес при сегментной организации?
Виртуальный адрес при сегментной организации памяти может быть представлен парой (g, s), где g – номер сегмента, s – смещение в сегменте. Физический адрес получается путем сложения базового физического адреса в ОП сегмента g (определяется из таблицы сегментов по его номеру g) и смещения s, как показано на рис.5.10.
Использование операции сложения замедляет процедуру преобразования виртуального адреса в физический по сравнению со страничной организацией
24)_Ч5 Что такое таблица сегментов и для чего она используется?
При порождении процесса во время загрузки его образа в ОП ОС создает таблицу сегментов процесса, подобную таблице страниц и содержащую в дескрипторе каждого сегмента: базовый физический адрес сегмента в ОП; размер сегмента; правила доступа к сегменту; признаки: модификации, присутствия и обращения к сегменту, а также некоторую дополнительную информацию.
25)_Ч5 Каковы недостатки и достоинства сегментного распределения ОП?
1*Использование операции сложения замедляет процедуру преобразования виртуального адреса в физический по сравнению со страничной организацией (с операцией конкатенации).
2*Другим недостатком сегментного распределения является избыточность. Единицей перемещения меду ОП и диском является сегмент, имеющий в общем случае размер, превышающий размер страницы.
3*Но главный недостаток сегментного распределения – фрагментация из-за непредсказуемости размеров сегментов.
Система с сегментной организацией функционирует аналогично системе со страничной организацией. Одним из существенных отличий и преимуществ сегментной организации памяти по сравнению со страничной является возможность задания дифференцированных прав доступа процесса к его сегментам.
Дата добавления: 2015-12-08; просмотров: 109 | Нарушение авторских прав