Аппаратный механизм преобразования виртуального адреса в физический
Итак, пусть произошло обращение к памяти по некоторому виртуальному адресу. Аппаратными схемами процессора выполняются следующие действия:
1. Из специального регистра процессора извлекается адрес AT таблицы страниц активного процесса. На основании начального адреса таблицы страниц, номера виртуальной страницы p(старшие разряды виртуального адреса) и длины отдельной записи в таблице страниц L(системная константа) определяется адрес нужного дескриптора в таблице страниц: a=AT+(p*L).
2. Из этого дескриптора извлекается номер соответствующей физической страницы – n.
3. К номеру физической страницы присоединяется смещение s (младшие разряды виртуального адреса).
Типичная машинная инструкция требует 3-4 обращений к памяти (выборка команды извлечение операндов, запись результата). И при каждом обращении происходит либо преобразование виртуального адреса в физический, либо обработка страничного прерывания. Время выполнения этих операций в значительной степени влияет на общую производительность вычислительной системы, поэтому столь большое внимание разработчиков уделяется оптимизации виртуальной памяти.
Рис. Схема преобразования виртуального адреса в физический при страничной организации памяти
Именно для уменьшения времени преобразования адресов во всех процессорах предусмотрен аппаратный механизм получения физического адреса по виртуальному. С той же целью размер страницы выбирается равным степени двойки, благодаря чему двоичная запись адреса легко разделяется на номер страницы и смещение, и в результате в процедуре преобразования адресов более длительная операция сложения заменяется операцией присоединения (конкатенации). Используются и другие способы ускорения преобразования, такие, например, как кэширования таблицы страниц – хранения наиболее активно используемых записей в быстродействующих запоминающих устройствах в частности в регистрах процессора.
Другим важным фактором, влияющим на производительность системы, является частота страничных прерываний, на которую, в свою очередь, влияют размер страницы и принятые в данной системе правила выбора страниц для выгрузки и загрузки. При неправильно выбранной стратегии замещения страниц могут возникать ситуации, когда система тратит большую часть времени впустую, на подкачку страниц из оперативной памяти на диск и обратно.
Дата добавления: 2016-06-05; просмотров: 2628;