Презентация на тему "Организация виртуальной памяти"

  • Презентации учебные
  • pptx
  • 10.04.2024
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Лекция 5.pptx

Организация виртуальной памяти

Лекция 5

Виртуальная память

Виртуальная память – это программно-аппаратное средство расширения пространства памяти, предоставляемой программе в качестве оперативной.

Виртуальная память

Виртуальная память - это сочетание оперативной памяти и временного хранилища на жестком диске.

Основные определения

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

Виртуальная память

Физическая память

Механизм
отображения
адресов

Организация
виртуальной памяти

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

Концепция
виртуальной памяти

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

Организация
виртуальной памяти

1. страничная организация ВП;
2. сегментная организация ВП;
3. сегментно-страничная организация.

Страничная организация ВП

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


Страничная организация ВП

Страница – определенного размера участок виртуального адресного пространства процесса, который управляется как единое целое
Формат виртуального адреса в страничной системе:


Виртуальный адрес v=(p,d).
Кадр страницы – блок оперативной памяти, в котором может размещаться страница виртуальной памяти.




Номер страницы p

Смещение d

Страничные системы

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

Схема страничной системы организации памяти

Номер виртуальной страницы p

Смещение в виртуальной страницы S

№ вирт. страницы

№ физич. страницы

p

n

Номер физической страницы n

Смещение в физической страницы S

Виртуальный адрес

Физический адрес

Достоинства

► минимально возможная фрагментация.

Недостатки

► программы разбиваются на страницы случайно, без учета логических взаимосвязей, имеющихся в коде;
► требует существенных расходов памяти.

Страничное нарушение (отказ)

Страничное нарушение (отказ) – это ситуация, которая возникает, если страница отсутствует в оперативной памяти в процессе выполнения команды.
В этом случае:
1. выполнение команды прерывается;
2. необходимая страница подкачивается из вторичной памяти в свободный страничный кадр оперативной памяти;
3. при отсутствии свободных страничных кадров на диск выгружается редко используемая страница;
4. повторение выполнения команды.

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

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

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

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



Виртуальный адрес v=(s,d).

Номер сегмента
(селектор сегмента) s

Смещение d

Селектор

Смещение

Таблица

сегментов

Базовый адрес сегмента

Физический адрес

Виртуальный адрес

+

Достоинства

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

Недостатки

► для получения доступа к искомой ячейке памяти необходимо потратить намного больше времени;
► внутренняя фрагментация.

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

Происходит двухуровневая трансляция виртуального адреса в физический.
Виртуальный адрес состоит из:
► номера сегмента;
► номера страницы внутри сегмента
► смещения внутри страницы.
 

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

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

Достоинства и недостатки

Объединяются достоинства страничной и сегментной организации, недостатки взаимокомпенсируются.