24524

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

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-08-09

30.45 KB

7 чел.

Вопрос 29. Сегментное распределение оперативной памяти.

§5.3.2.3.Сегментное распределение памяти.

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

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

Система с сегментной организацией функционирует аналогично системе со страничной организацией. Во время загрузки процесса система создает таблицу сегментов процесса (аналогичную таблице страниц), в которой для каждого сегмента указывается:

- начальный физический адрес сегмента в оперативной памяти;

- размер сегмента;

- права доступа;

- признак модификации;

- признак обращения к данному сегменту за последний интервал времени и т.д.

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

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

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

Виртуальный адрес при сегментной организации памяти может быть представлен парой (g, s), где g – номер сегмента, а s – смещение в сегменте. Физический адрес получается путем сложения начального физического адреса сегмента, найденного в таблице сегментов по номеру g, и смещения s.

В данном случае нельзя использовать операцию конкатенации, что замедляет процедуру преобразования виртуального адреса в физический по сравнению со страничной организацией.*

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

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

Однако главным недостатком сегментного распределения памяти является фрагментация, обусловленная непредсказуемостью размеров сегментов.


 

А также другие работы, которые могут Вас заинтересовать

20848. Підготовка верстата СТД 120м до роботи 51 KB
  Заготовки з деревини як правило мають квадратний переріз оскільки вони нарізуються з дощок на кругло пильному верстаті. Але такі заготовки небезпечні для токарної обробки оскільки виникає велике биття кутів по різцю. Із заготовки квадратного перерізу необхідно зробити заготовку восьмикутного перерізу. В цьому випадку підручник можна наблизити до заготовки на безпечну відстань 3 мм.
20849. Деревина як конструкційний матеріал: породи деревини, властивості, вади деревини, пиломатеріали 46.5 KB
  Залежно від кількості пропиляних сторін вони бувають двохмал. 18 а тримал. 18 б і чотири кантовімал. Бруски мал.
20851. ОСНОВИ УПРАВЛІНСЬКОГО ОБЛІКУ 354.5 KB
  Концепція, зміст та об’єкти управлінського обліку. Системи обліку витрат і калькулювання собівартості. Облік і контроль за центрами відповідальності. Аналіз релевантної інформації для прийняття управлінських рішень.
20853. Прокат 148.5 KB
  Профілі прокату геометрична форма перетину прокату. Сортамент прокату сукупність профілів прокату одержуваного на прокатному стані. Профілі прокату.
20855. ТВОРЧИЙ ПРОЕКТ З ТРУДОВОГО НАВЧАННЯ ДЛЯ УЧНІВ 7-8 КЛАСІВ ЗАГАЛЬНООСВІТНІХ НАВЧАЛЬНИХ ЗАКЛАДІВ 6.87 MB
  Організаційнопідготовчий етап охоплює такі стадії виконання проекту: формулювання завдання пошук проблеми усвідомлення проблемної сфери; дизайнаналіз аналіз аналогів вироблення ідей та варіантів; аналіз виробу формування основних параметрів і граничних вимог вибір оптимального варіанту та обґрунтування проекту прогнозування результатів. Конструкторський етап розробка початкових ідей генерування ідей складання їх замальовок рисунків ескізів; оцінка ідей для вибору найбільш досконалої оцінка ідей за розробленими критеріями...