Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MPT_otvety_na_ekzamen.docx
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
416.51 Кб
Скачать
  1. Страничное преобразование адресов, ее назначение и принцип реализации:

Сегментация памяти весьма эффективна при защите информации, в ней размещенной, от случайных либо несанкционированных воздействий. Кроме того, она позволяет расширить виртуальное адресное пространство до 64 терабайт. Однако, она неудобна с точки зрения эффективного использования физической памяти. Это неудобство определяется в основном двумя причинами.

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

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

Как следует из вышеизложенного, эти недостатки наиболее ярко проявляются при организации виртуальной памяти, а без нее немыслима работа современного компьютера. Логичным выводом из этого является такая организация памяти при формировании «виртуальной памяти», чтобы обмен информацией между оперативной физической и внешней памятью на жестких дисках при свопинге происходил сравнительно небольшими (оптимальными) блоками, которые имели бы одинаковый размер. Такие блоки получили название страниц, а соответствующая организация памяти – страничной организацией памяти.

Страничная организация памяти является дополнительной адресной структурой и может реализовываться только в защищенном режиме работы процессора. Для этого в регистре управления CR0 бит 31 должен быть установлен в 1 (бит PG = 1). При этом в защищенном режиме работы, сегментная организация памяти остается в любом случае. Однако если прикладной программист имеет доступ к части сегментных регистров, которые управляют сегментной адресацией, то страничная адресация от него скрыта. Операции со страницами разрешены только операционной системе. Объем страницы, как уже упоминалось, фиксирован и обычно составляет 4Кбайта – 4096 байт. Однако, в процессорах Pentium+, поддерживаются также страницы размером 2 и 4Мбайта. Таким образом, при включении страничной организации, устройство управления памятью процессора (MMUMemory Management Unit), в защищенном режиме работы, наряду с обязательной сегментацией, реализует еще один уровень косвенности в формировании физического адреса памяти. При этом, исходным адресным объектом для формирования физического адреса с помощью страничной организации является 32 разрядный линейный адрес, получаемый как результат обращения к дескрипторам сегментов. При этом заметим, что в простых системах страничная организация не применяется и устройство, ее реализующее выключено. Следует также отметить, что в случае использования страничной организации памяти, при формировании физического адреса, бит присутствия P в сегментных дескрипторах игнорируется. В этом случае свопинг организуется не на уровне сегментов, а на уровне страниц и, следовательно, бит P анализируется уже в элементах каталога или таблицы страниц.

Кроме того, следует отметить, что сегментация памяти характерна только для процессоров семейства Х86 и совместимых с ними. А страничная адресация используется, в настоящее время, при создании практически всех достаточно мощных процессоров.

При разрешенном страничном преобразовании адреса линейное адресное пространство объемом 4Гбайт, получающееся после модуля сегментного преобразования, (при линейном адресе – 32 разряда) можно представить разделенным на 1М страниц по 4Кбайт каждая. Физическая оперативная память также представляется разделенной на страницы с тем же размером 4Кбайта (смотри рисунок III.18). Эти страницы физической памяти иногда называют страничными кадрами (Page frame).

Поскольку, даже в современных персональных компьютерах физическая память обычно не превышает 2 Гбайт, возможное виртуальное адресное пространство, равное 4Гбайт, существенно больше. Следовательно, в любой момент времени только часть всех страниц возможной виртуальной памяти может присутствовать в физической оперативной памяти. Отсутствующие в физической памяти страницы обычно хранятся во внешней памяти, которой чаще всего служат накопители на жестких магнитных дисках. Фиксированный размер всех страниц позволяет загрузить любую нужную виртуальную страницу в любую физическую страницу (в любой страничный кадр).

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

Границы страниц следуют через одинаковые интервалы 4Кбайт.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]