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 страниц. Аналогично при отсутствии свободного места в памяти не стоит выгружать целый сегмент, когда можно обойтись выгрузкой нескольких страниц.

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


 

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

55461. Политическая система США 52.5 KB
  Учитель применил небольшое количество методов словесного воздействия на учеников, что свидетельствует о том, что урок был проведен на высоком уровне. Уровень дисциплины на уроке был очень высоким, учитель ни разу не повысил интонацию.
55468. Методические рекомендации к прохождению психологической практики студентами педагогических специальностей 83.5 KB
  Психологическая цель урока: 1 проектирование развития учащихся в пределах изучения конкретного учебного предмета и конкретного урока; 2 учет в целевой установке урока психологической задачи изучения темы и результатов достигнутых в предшествующей работе;...