Операционные системы. Макушкина Л.А - 24 стр.

UptoLike

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

                                     24