Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Страничная организация на примере с регистрами адресов страниц

В настоящее время известно несколько различных подходов к реализации аппарата страничной организации памяти. Рассмотрим конкретный упрощенный пример одного из широко применяемых методов. Пусть для определенности оперативная память нашей ВС содержит 8 страниц по 512 ячеек (байт). Виртуальные адреса выполняемых процессов 15-разрядные, что позволяет адресоваться к 64 блокам по 512 ячеек. При размере блока 512 ячеек для адресации каждой из них используется девять младших двоичных (три восьмеричных) разрядов виртуального адреса. Дополнительными аппаратными средствами рассматриваемого метода являются «регистры адресов страниц» (РАС), каждый из которых однозначно связан с соответствующей страницей ОЗУ (Рисунок 2.1.6). Регистр РАС содержит многоразрядный номер блока (в нашем примере от 0 до 63, десятичный) из адресного пространства процессора и три двоичных разряда, называемых разрядом «активности», разрядом «использования» и разрядом «записи». Рассмотрим прежде всего использование разряда «активности» (здесь термин «активность» употребляется в смысле соответствия статусу процесса «свободен», а не в выше употребленном к определению различных типов блоков виртуальной памяти). Разряды активности устанавливаются главным процессом при переключении статусов процессов и при их завершении. Аппарат преобразования адреса выделяет в виртуальном адресе старшие разряды, указывающие на номер активного блока текущего процесса, и последовательно сравнивают со всеми номерами блоков в регистрах РАС. Совпадение фиксируется при значении разряда активности 1. При этом вырабатывается номер соответствующей страницы ОЗУ(5), который добавляется к номеру ячейки в блоке (176). Таким образом формируется каждый физический адрес обращения к памяти.


Рисунок 2.1.6 – Использование регистров адресов страниц в аппарате страничной организации

Может случиться так, что ни одна из страниц не содержит нужного блока. Если ни один из регистров РАС не отвечает номеру блока, аппарат преобразования адреса посылает экстракод «прерывание неэквивалентности», который заставляет управление возбудить процедуру управления памятью. При наличии свободных страниц в ОЗУ проблема решается просто. Бывший до этого момента пассивным блок ищется на диске и переписывается на свободную страницу. Если затребованный программой блок был мнимым, ему отводится свободная страница в ОЗУ и делается соответствующая запись в РАС.

При отсутствии свободных страниц в ОЗУ требуется применить ту или иную стратегию «изгнания» страниц процессов, которые уже завершены или находятся в состоянии «приостановлен».

Назначение разряда «записи» в РАС заключается в следующем. При появлении нового блока в данной странице он устанавливается в 0. Любая команда записи данных в эту страницу переводит разряд «записи» в единичное состояние. Опираясь на значение этого разряда, управление принимает решение о необходимости перенести (скопировать) на диск данный блок или о возможности его просто затереть. Ведь, если это фрагмент неизменяемого текста программы или исходных данных, то соответствующий экземпляр со всеми блоками постоянно находится на диске, и необходимости в копировании нет.

Блоки процессов с нулевым значением разряда «активности» изгоняют на основе различных алгоритмов принятия решения. Простейшие из них не связаны с использованием разряда «использования». Это алгоритмы циклического изгнания и случайного выбора страниц с равной вероятностью. Эффективность второго метода для ВС выше, однако циклическое изгнание реализуется проще.

Пусть любое обращение к данной странице переводит разряд «использования» в состояние 1. Если регулярно опрашивать состояние разрядов «использования» (например, через 0,3 с), сбрасывая их значения в 0, то в соответствующих счетчиках управляющей процедуры может накапливаться информация об относительной частоте использования всех блоков, находящихся в ОЗУ. Выбор для изгнания блока с наименьшим числом использований с момента последнего «прерывания неэквивалентности» не дает существенного улучшения эффективности работы ВС по сравнению со случайным равновероятным изгнанием. Существенное повышение эффективности достигается при использовании информации о динамике роста числа «использований», т. е. изгоняется тот блок, который имеет наименьшее число использований и у которого это число растет медленнее других.

 

<== предыдущая лекция | следующая лекция ==>
Страничная организация памяти. Мощные ВС снабжаются более сложным аппаратом преобразования адреса — аппаратом страничной организации памяти | Программы обслуживания ввода-вывода
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 271; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.