Читайте также: |
|
Чем больше страниц находится в ОП, тем ниже коэффициент мультипрограммирования, так как меньше ОП остается для других работ. С другой стороны, чем меньше страниц в ОП, тем дольше будет выполняться работа, так как чаще будут возникать случаи отсутствия страниц. Общая эффективность систем со страничной организацией зависит от стратегии подкачки страниц и стратегии откачки (вытеснения) страниц из ОП. Общая цель - свести к минимуму отсутствие страниц. Используются 3 стратегии подкачки.
Загрузка всех страниц работы до начала исполнения полностью исключает отсутствие страниц. Не требуется перемещать одну работу после завершения другой. Загрузчик можно использовать абсолютный, так как настройка на физическую память осуществляется автоматически аппаратно. Но не используется внешняя память как продолжение основной, что ведет к ограничению программ, а также уменьшается коэффициент мультипрограммирования.
Динамическая опережающая подкачка используется, если известно какие страницы потребуются, сокращая тем самым случаи отсутствия страниц и увеличивая коэффициент мультипрограммирования. Однако цена опережающей подкачки страницы, к которой не будет обращения, намного превышает выгоду от опережающей подкачки страницы, обращение к которой действительно произойдет. Так как предсказать поведение программы трудно, динамическая подкачка используется редко.
Подкачка по требованию нашла более широкое применение. Здесь подкачивается страница при фактическом обращении к ней. Хотя при этом работе сколько-то придется побыть в ожидании, подкачивается действительно нужная страница, что увеличивает коэффициент мультипрограммирования.
Необходимость в вытеснении (откачке) страниц возникает, когда нет свободных физических страниц, но пришел запрос на подкачку с другой работы. Цель стратегий вытеснения - уменьшить число обменов по подкачке/откачке, т.е. уменьшить число случаев отсутствия страниц. Оптимальной стратегией является вытеснение страницы, следующее обращение к которой будет нескоро. Используются 3 стратегии откачки.
Стратегия FIFO ("первый подкачан - первый откачан"). Замещается страница, которая дольше всех находилась в ОП. Вероятно, что эта страница не потребуется в ближайшее время. Однако часто удаляются нужные страницы. Стратегия проста в реализации, так как планировщику памяти необходимо просто следить за очередью всех физических страниц, контролируя не моменты обращения к страницам, а только их загрузку.
Стратегия LRU (least - recently - used - наименее - недавно - использована) - по давности использования. Вытесняется страница, к которой не было обращения в течение достаточно длительного периода. Хорошо себя зарекомендовала. Высока стоимость реализации.
Стратегия LFU (least - freguently - used - наименее - часто - использована) - вытеснение наиболее редко используемых. Откачивается та страница, к которой за данный интервал времени было меньше всего обращений. Только что подкаченная страница не вытесняется, пока не определяется частота ее использования. Данная стратегия применяется как глобально, ко всем страницам ОП, так и локально - к страницам памяти, связанным с каждой работой.
Страничные организации не снимают всех проблем. Может появиться пробуксовка - состояние, при котором система тратит больше времени на обработку отсутствующих страниц, чем на собственно вычисления (до сотни раз). Это возникает, когда выделяется мало физических страниц. Второй недостаток - незаполненность страниц. В среднем 0,5 страницы на работу не заполнено.
Чем больше размер страницы, тем больше общая незаполненность, меньше страниц в ОП и работ. Но маленькие страницы требуют больше памяти под таблицы, при этом увеличивается вероятность отсутствия требуемой страницы.
Дата добавления: 2015-10-02; просмотров: 79 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Сегментно-страничная организация | | | Особенности сегментно-страничной организации в ПЭВМ |