Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Топ:
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Интересное:
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2017-11-16 | 494 |
5.00
из
|
Заказать работу |
|
|
Алгоритм планирования, основанный на квантовании.
Квантование – каждому потоку поочередно для выполнения предоставляется ограниченно непрерывный период процессорного времени, который называется квантом. Смена активного потока происходит, если:
1. поток завершился;
2. произошла ошибка;
3. состояние ожидания;
4. исчерпан квант времени, отведенный данному потоку.
Размер кванта времени принимается небольшим (десятки миллисекунд). Чем больше квант, тем выше вероятность завершения потока в результате первого же цикла. Квант может быть фиксированным, либо изменяться различными способами.
1) Если величина каждого последующего кванта уменьшается до некоторого заданного минимума. В этом случае преимущество получают короткие задачи, а длительные вычисления будут проводиться в фоновом режиме.
2) Каждый следующий квант больше предыдущего. Снижаются накладные расходы на переключения задач, выгодно в случае нескольких потоков, выполняемых длительное время.
В системе может быть предусмотрена возможность учета неполного использования кванта.
Алгоритм планирования, основанный на приоритетах.
Приоритет – это число, характеризующее степень привилегированности потока относительно использования ресурсов компьютера (чем выше приоритет, тем меньше времени поток проводит в очередях).
Значение приоритета включается в описатель процесса. Потоки этого процесса получают приоритет, связанный с приоритетом процесса. Приоритет может быть положительным, отрицательным, целым или дробным. Он назначается системой при создании процесса, может меняться в процессе выполнения. В разных системах наивысшему приоритету соответствует либо max, либо min его значение. Пользователь может вручную изменить значение приоритета (возможность ограничена). Если приоритеты меняются в процессе выполнения, они называются динамическими, иначе – статическими, или фиксированными.
|
Особенности приоритетов в WinNT.
1) По прошествию времени приоритеты потоков могут выходить за пределы диапазона. Если поток не полностью использовал свой квант, приоритет повышается, иначе – понижается.
2) Дифференцированное изменение приоритетов. Потоки, ожидающие ввода с клавиатуры, имеют более быстро возрастающий приоритет. Например, дисковые операции менее быстрые.
2 способа приоритетного планирования:
Общее между ними – на выполнение из очереди выбирается поток с наивысшим приоритетом.
Отличие – в моменте выбора смены потока.
Относительный приоритет означает, что активный поток выполняется до тех пор, пока он сам не освободит процессор.
“+” – минимизируется время переключения процесса.
“–” – процесс может занять процессор на долгое время.
В основном, применяется в системах пакетной обработки.
Абсолютный приоритет означает, что выполнение активного потока может быть прервано системой при появлении в очереди потока с более высоким приоритетом.
В системах с абсолютным приоритетом есть механизм срочного перевода процессора на другую задачу. Применяется в системах реального времени.
Современные ОС основываются на смешанном алгоритме планирования с использованием квантования и приоритетов.
Мультипрограммирование на основе прерываний
Назначение и типы прерываний
Прерывание возникает либо из-за внешних для данных процесса событий, либо при проявлении непредвиденных ситуаций при выполнении программы.
Прерывание процедура
Виды прерываний:
1) Внешние = аппаратные, возникают в результате действий пользователя или в результате сигналов от аппаратных устройств (сигнал завершает операции Ввода-Вывода или сигнал датчиков подключается к компьютеру). Они асинхронные по отношению к выполняемой программе (прерывание возникает между выполняемыми командами).
|
2) Внутренние = исключение (exception), их отличие от Внешних в том, что происходит синхронное выполнение команды при появлении аварийной ситуации какой-либо инструкции (деление на 0,ошибка защиты памяти, попытка выполнить привилегированные инструкции в пользовательском режиме).
3) Программные не является «истинными», возникает при выполнении специальной команды процессора, имитирующей прерывание INT.
Прерывание характеризуется приоритетами (степень важности).
Механизм прерываний:
Необходима аппаратная и программная поддержка.
Существует 2 способа выполнения прерываний шины:
1) Векторные (vectored);
2) Опрашиваемый (polled).
В обоих способах процессор получает информацию об уровне приоритета прерывания на шине подключения внешних устройств (PCI).
Векторное прерывание, в процессор передается информация об адресе обработчика прерывания. Устройствам использующим векторное прерывание назначается Вектор прерываний – электрический сигнал, выставляет на соответствующей шине процессора и несущий в себе информацию о закрепленном за данным устройством номере, который идентифицирует и обработчик прерываний.
По номеру вызываются соответствующие обработчики.
Вектор бывает:
1) Фиксированным (не изменяемым);
2) Конфигурирующим (аппаратные конфигурации (джамперы, переключатели и т.д.));
3) Программируемыми.
При подключении устройства выполняется регистрация вектора в системе. При получении сигнала запроса прерывания процессор не сразу обрабатывает, а выполняется специальный цикл подтверждения прерывания (устройство должно идентифицировать себя).
Опрашиваемое прерывание – процессор получает от запрашиваемого прерывание устройства только уровень приоритета прерывания. С каждым уровнем приоритета может быть связано несколько устройств и обработчиков прерывания. Чтобы процессор определил нужное устройство, он вызывает всех обработчиков прерываний для данного уровня приоритета и ждет подтверждения запроса.
Подтверждается следующими шинами: ISA, EISA, MCA, PCI.
Платформа Intel реализует смешанный механизм прерывания: до процессора обработка идет по механизму опрашивания прерываний, внутри процессора векторный.
|
Механизм прерываний реализует приоритезацию и маскирования прерываний. Приоритеты могут обслуживаться как Относительные и Абсолютные.
Относительные – даже если вызывается прерывание с более высоким приоритетом, обработка текущего прерывания не останавливается.
Абсолютные – при поступлении прерываний с более высоким приоритетом, процессор переходит к его обработке.
Маскирование – это сокрытие прерывания более низкого уровня по с равнению с обрабатываемым.
Последовательность действий аппаратных и программных средств по обработке прерываний:
0) Сигнал прерывании;
1) Аппаратное распознавание типа прерывания. Если прерывание данного типа в текущий момент запрещены, то продолжается выполнении текущего потока. Иначе вызывается процедура обработки прерываний, адрес которой находится в специальной таблице Операционные Системы;
2) Автоматическое сохранение некоторой части контекста прерванного потока;
3) Загрузка адреса процедур обработки прерываний в счетчик команд + автоматическая загрузка нового значения слова о состоянии машины (для привилегированного режима);
4) Временный запрет прерывания данного типа, чтобы не организовывать вложенный цикл прерываний;
5) После обработки восстановления прерываний, контекст и работа потока возобновляется (при этом частично контекст восстанавливается аппаратно по команде возврата из прерываний, а часть программы извлечением данных из стека).
Планирование и диспетчеризация процессов и потоков в многозадачных ОС.
Планирование – это работа по определению в какой момент необходимо прервать выполнение текущего активного потока и какому потоку предоставить возможность выполнятся.
Две задачи:
Примеры реализации планирования:
Планирование может осуществляться:
|
Динамическое планирование – решение принимается во время работы системы на основе анализа текущей ситуации.
Статическое планирование выполняется когда набор всех выполняемых задач известен заранее. (системы реального времени). Планировщик принимает решение не во время работы системы, а заранее.
Диспетчеризация – это реализация найденного в результате планирования решения, то есть непосредственное переключение процессора с одного потока на другой.
Состоит из 3 этапов:
Выполняется диспетчеризация аппаратно-программным способом.
|
|
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!