Выбор размера страниц. Комбинация сегментации и страничной организации. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Выбор размера страниц. Комбинация сегментации и страничной организации.



Размер страницы (~ 4Кб – 16Мб)

При выборе размера страницы учитываются различные факторы. Один из них –

внутренняя фрагментация. Чем больше размер страницы, тем больше внутренняя

фрагментация. С другой стороны, чем меньше размер страниц, тем больше их нужно для

хранения процесса, а значит увеличивается таблица страниц, что не есть хорошо,

поскольку часть таблиц будет выгружаться на диск и потребуется 2 раза совершать

операцию ввода-вывода для доступа к данным. Также физические характеристики

устройств вторичной памяти таковы, что передача данных большего объема является

более эффективной.

Комбинация сегментной и страничной организации

При сегментной организации памяти, для использования виртуальной памяти, в

записи таблицы сегментов также добавляются бит модификации и бит присутствия.

Трансляция логического адреса в физический происходит аналогично.

Одним из преимуществ сегментации является то, что она может быть видна

программисту, который сам решает, на какие сегменты будет разбита программа

(возможно разбиение по модулям, например). Упрощается совместное использование кода

и данных разными процессами, улучшается защита с помощью назначения разным

сегментам разных прав доступа.

Страничная организация в свою очередь лишена внешней фрагментации, упрощает

создание эффективных алгоритмов управления памятью ввиду одинаковых размеров

блоков.

Некоторые системы используют достоинства обоих методов. В них адресное

пространство разбивается на ряд сегментов по усмотрению программиста. Каждый

сегмент разбивается на страницы фиксированного размера. Если размер сегмента меньше

размера страницы, он занимает страницу целиком. Логический адрес с точки зрения

программиста представляет собой номер сегмента и смещение в нем. С точки зрения ОС –

это номер

 

Стратегии выборки и размещения страниц.

Стратегия выборки

Определяет, когда страница будет передана в основную память. Возможны два варианта –

по требованию и предварительно. При выборке по требованию страница передается в

основную память только при обращении к ячейке памяти, расположенной на этой

странице. Согласно принципу локализации, кол-во прерываний (т.е. обращений к

вторичной памяти) из-за отсутствия в памяти нужной страницы снижается до достаточно

низкого уровня.

В случае предварительной выборки загружается не только та страница, на которой

находится необходимая ячейка. В связи с физическими характеристиками уст-в вторичной

памяти, более эффективной является загрузка нескольких последовательных страниц за

один раз, чем загрузка этих страниц по одной. Но такая стратегия не дает выигрыша, если

обращения к загруженным вместе с запрошенной страницам.

 

 

Стратегия размещения

Определяет, где именно в физической памяти будут располагаться части процесса. Для

систем, использующих страничную или комбинированную организацию, стратегия

размещения не является критичной, т.к. аппаратная трансляция адреса эффективна при

любых сочетаниях страница-кадр. Эта стратегия важна в случае чистой сегментации.

 

28.Стратегия замещения.

Стратегия замещения

Определяет выбор страниц в основной памяти для замещения их загружаемыми с диска.

Все стратегии направлены на то, чтобы выгрузить страницу, обращений к которой не будет

в ближайшем будущем.

В соответствии с принципом локализации с большей вероятностью использоваться в

будущем будут те страницы, к которым уже обращались в последнее время. Чем более

интеллектуальная стратегия используется, тем выше накладные расходы на его

выполнение.

 

29. Резидентное множество процессов. Область видимости замещения.

Часть процесса, располагающаяся в некоторый момент времени в основной памяти,

называется резидентным множеством процесса. С помощью таблицы страниц или

сегментов процессор может определить, загружен ли запрашиваемый блок в основную

память. Если в основной памяти нет нужного логического адреса, ОС необходимо

загрузить в основную память нужный блок. Процесс блокируется, ОС осуществляет

операцию ввода-вывода (загружает нужный блок), после чего переводит процесс в

состояние готовности.

Область видимости замещения

Область видимости замещения можно разделить на локальную и глобальную.

Локальная стратегия замещения выбирает страницу только среди резидентных страниц

того процесса, страницу которого нужно загрузить в память. Глобальная стратегия

замещения рассматривает все незаблокированные страницы памяти для возможного

замещения, независимо от их принадлежности процессам.

Локальная стратегия проще для анализа, глобальная – проста в реализации.

При

 

 

30. Стратегия очистки. Управление загрузкой и приостановкой процессов.

Стратегия очистки

Является противоположностью стратегии выборки. Ее задача – определить момент,

когда измененная страница должна быть записана во вторичную память. Возможны 2

варианта: очистка по требованию и предварительная очистка. В первом варианте страница

записывается только тогда, когда выбирается для замещения. Предварительная очистка

записывает модифицированные страницы до того, как потребуется их выгрузка, поэтому

страницы могут записываться пакетами.

Управление загрузкой

Это определение кол-ва процессов, которые будут резидентными в основной

памяти, является критической частью системы управления памятью. При возрастании

уровня многозадачности эффективность использования процессора возрастает. Но

резидентное мн-во каждого отдельного процесса может стать неадекватно маленьким,

провоцируя постоянные прерывания и тем самым, наоборот, снижая эффективность

работы процессора.

Существуют различные варианты решения данной проблемы. Выполняться могут

только процессы, резидентные множества которых достаточно велики. Обеспечивая для

активных процессов необходимый размер резидентного мн-ва, стратегия определяет и кол-

во активных процессов.

Один из подходов заключается в том, что среднее врем между прерываниями

должно быть равно среднему времени обработки прерывания. Исследования показали,

что в этом случае достигается максимальная производительность процессора.

Приостановка процессов

Если кол-во резидентных процессов становится слишком большим, часть из них

должны быть приостановлены, т.е. полностью выгружены из памяти.

Существуют следующие возможности:

1. Процесс с наименьшим приоритетом.

2. Процесс, вызывающий прерывания. (он и так почти всегда в заблокированном

состоянии).

3. Последний активированный процесс. (маленькое резидентное мн-во)

4. Процесс с минимальным резидентным мн-вом. (минимизирует будущие затраты

на загрузку)

5. Наибольший процесс. Освобождаем большое кол-во кадров, меньше процессов

будут деактивированы.

6. Процесс с максимальным остаточным окном исполнения. (предоставляется

преимущество процессам с наименьшим временем работы (кол-вом квантов

времени до деактивации)).

 

31. Устройства ввода-вывода, их классификация. Эволюция функций ввода-вывода

Устройства ввода-вывода.

Внешние устройства ввода вывода могут быть разделены на три группы:

1. Работающие с пользователем. Используются для связи с пользователем:

принтеры, мониторы, мышь, клавиатура.

2. Работающие с компьютером. Используются для связи с электронным

оборудованием: дисковые устройства, датчики, контроллеры.

3. Коммуникации. Используются для связи с удаленными устройствами: модемы,

драйверы цифровых линий.

Устройства ввода-вывода могут различаться по следующим критериям:

1. Скорость передачи данных.

2. Применение. Функции устройств требуют соответствующего программного

обеспечения и изменения стратегии ОС.

3. Сложность управления. Например, для диска требуется гораздо более сложный

интерфейс управления по сравнению с принтером.

4. Единицы передачи данных. Могут передаваться как поток символов (терминал),

блоками (при выполнении дисковых операций).

5. Представление данных. Устройства использую разные схемы кодирования

данных.

6. Условия ошибок. Способ сообщения об ошибках и их последствии могут

значительно различаться у разных устройств.

Разнообразие устройств ввода-вывода приводит к невозможности разработки

единого подхода к задаче ввода-вывода.

Мы уже рассматривали три способа ввода-вывода: программируемый ввод-вывод,

ввод-вывод, управляемый прерываниями и прямой доступ к памяти. В настоящее время в

большинстве систем основным способом является прямой доступ к памяти.

Рассмотрим основные этапы развития управления вводом-выводом:

1. Процессор непосредственно управляет устройством.

2. Появляется контроллер или модуль ввода-вывода. Процессор отделяется от

некоторых деталей операций ввода-вывода, контроллер берет эти функции на себя,

предоставляя процессору более удобный и унифицированный интерфейс ввода

вывода.

3. Добавляются прерывания, благодаря которым процессор может переключиться на

другие задачи при выполнении операций ввода-вывода.

4. Появляется прямой доступ к памяти, который позволяет перемещать блоки данных

без участи процессора за исключением начала и окончания передачи.

5. Модуль ввода-вывода становится отдельным процессором со специальной

системой команд. Центральный процессор дает контроллеру команду – выполнить

программу ввода-вывода, после чего контроллер самостоятельно считывает и

выполняет ее команды, тем самым еще больше разгружая и увеличивая

производительность центрального процессора.

6. Модуль ввода-вывода теперь обладает своей локальной памятью, при этом

управление устройствами ввода-вывода происходит при минимальном участии

процессора.

 

 

32. Основные цели при проектировании ввода-вывода в ОС. Иерархия управления вводом-выводом.

Вопросы проектирования ввода-вывода в ОС

При разработке средств ввода-вывода преследуются 2 важнейшие цели:

эффективность и универсальность. Медленное выполнение операций ввода-вывода

приводит к неэффективной работе процессора, когда он простаивает из-за того, что все

процессы блокированы в ожидании операций ввода-вывода. Это частично решается с

помощью свопинга. Но выгрузка и загрузка процессов с диска в основную память сама по

себе является операцией ввода-вывода. Поэтому организация эффективного ввода-вывода

в ОС является критичной задачей.

Универсальность необходима для того, чтобы упростить работу с устройствами

ввода-вывода и снизить вероятность возникновения ошибок. Пользовательские процессы

как правило обращаются к устройствам с высокоуровневыми универсальными вызовами,

которые скрывают детали работы с конкретным устройством



Поделиться:


Последнее изменение этой страницы: 2016-08-16; просмотров: 436; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.231.245 (0.031 с.)