Содержание
-
Организация виртуальной памяти
-
Концепция виртуальной памяти заключается в следующем: оперативная память (ОП) и виртуальная память (ВП) в функциональном отношении (т.е. с точки зрения пользователя) рассматривается как одноуровневая память с произвольным доступом: ОП и ВП – единое адресное пространство. Для адресации такой памяти используются адреса где Например, в ПЭВМ типа IBM PС шина адреса ША содержит 32 разряда, т.е. =4ГВ (В). Размер же виртуального адресного пространства – В=64ТВ (32+14=46). Для адресации виртуальной памяти используются длинные (m=46, например) виртуальные адреса. При этом разрешено считать, что информация, которая хранится во ВП, также доступна ЦП, как и информация, которая хранится в ОП.
-
Для того, чтобы обеспечить это технически в ЭВМ встраиваются специальные программные и технические средства, которые и обеспечивают автоматический свопинг. Эти средства должны обеспечить выполнение двух действий: • преобразование виртуальных адресов в физические, т. е. либо в адреса ячеек ОП, либо, если это ВП, в адреса ВЗУ и номера блоков на носителе информации, по которым и производится обращение к памяти; • если адресуемая информация в момент обращения находится не в ОП, а во ВП, то передачу её (вместе с блоком информации) из ВП в ОП на заранее освобожденное место (свопинг).
-
Технически наиболее просто указанные действия реализуются при страничной организации памяти. В этом случае для адресации ячеек виртуальной памяти используются длинные виртуальные адреса (ВА) следующего формата: где m=k+n - длина ВА, Р – номер виртуальной страницы, D – номер ячейки в странице. Физический адрес имеет аналогичную структуру: только старшие разряды - поле S - указывают адрес (номер) физической страницы.
-
Понятие “виртуальная страница”связывается с той информацией, которая хранится в этой странице, а не с местом её хранения. А вот понятие “физическая страница”связано с местом хранения виртуальной страницы с номером Р. Таким образом, виртуальные страницы подвижны, а физические – неподвижны. Это означает, что одна и та же виртуальная страница в разные моменты времени может находиться в различных физических страницах памяти: то в ОП, то в ВП, то опять в ОП. Т.е. информация в процессе функционирования ЭВМ перемещается внутри физической памяти.
-
За процессом перемещения виртуальных страниц необходимо следить. С этой целью текущее состояние виртуальной памяти отображается в виде таблицы страниц. В таблице страниц каждой виртуальной странице с номером Р ставится в соответствие одна строка. В этой строке и указывается, в каком конкретно месте физической памяти расположены виртуальные страницы в данный момент времени, т.е. в этой строке указывается номер физической страницы S. Кроме того, здесь же указывается и признак доступности страницы ЦП dp, если dp=0 - страница P находится во ВП (Р∉ОП),если dp=1 – страница Р находится в ОП (Р ∈ОП), доступна ЦП. В случае dP=1 преобразование BA в физический ФА производится следующим образом.
-
Преобразование ВА в ФА
-
Физический адрес формируется конкатенацией поля S из таблицы страниц и поля D из ВА: ФА=S.D. В IBM PC физический адрес формируется суммированием этих полей: ФА=S+D, где S интерпретируется как базовый адрес, а поле D – как смещение. В случае если dp =0 – т.е. страница недоступна ЦП, происходит прерывание текущей команды и управление передаётся средствам перемещения страниц, т.е. средствам, обеспечивающим свопинг. Эти средства обеспечивают перемещение виртуальной страницы Р из ВП в ОП, предварительно удалив страницу из ОП в свободное место (в свободную физическую страницу) ВП. Порядок использования таблицы страниц можно проиллюстрировать следующим рисунком.
-
Порядок использования таблицы страниц
-
Хранить таблицы страниц проще всего в ОП. Но при этом при каждом обращении по ВА будет производиться два физических обращения к ОП: сначала к таблице страниц, а затем к ячейке ОП по ФА. Ясно, что такая организация памяти снижает быстродействие памяти вдвое. Необходимо хранить таблицы страниц не в ОП, а в СОП (в КЭШ, например). Это дороже, но быстрее.
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.