Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)

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

Для простоты разглядим ситуацию, когда процессы в состоянии готовность организованы в 4 очереди, как на рисунке 7. Планирование процессов меж очередями осуществляется Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) на базе вытесняющего приоритетного механизма. Чем выше на рисунке размещается очередь, тем выше ее ценность. Процессы в очереди 1 не могут исполняться, если в очереди 0 есть хотя бы один процесс. Процессы в очереди 2 не будут выбраны для выполнения, пока есть хоть один процесс в очередях 0 и 1. И, в конце концов Многоуровневые очереди с обратной связью (Multilevel Feedback Queue), процесс в очереди 3 может получить микропроцессор в свое распоряжение только тогда, когда очереди 0, 1 и 2 пусты. Если при работе процесса возникает другой процесс в какой-нибудь более приоритетной очереди, исполняющийся процесс вытесняется показавшимся. Планирование процессов снутри очередей 0–2 осуществляется с внедрением метода RR, планирование процессов в очереди 3 основывается на методе Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) FCFS.

Рис. 7 Схема передвижения процессов в многоуровневых очередях

планирования с оборотной связью

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

Лекция 3. Мониторинг и управление процессами в MS Windows и Linux

1. Понятие процесса MS Windows. Мониторинг Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) и управление процессами в MS Windows.

2. Процессы в Linux.

1. Понятие процесса MS Windows.

Мониторинг и управление процессами в MS Windows

2. Процессы в Linux

Лекция 4. Обработка прерываний

1. Общий принцип обработки прерываний в операционной системе.

2. Работа системы прерываний в реальном режиме работы микропроцессора.

3. Работа системы прерываний в защищенном режиме работы микропроцессора Многоуровневые очереди с обратной связью (Multilevel Feedback Queue).

1. Общий принцип обработки прерываний в операционной системе

Одной из более принципиальных функций ОС является управление ресурсами компьютера, на котором она работает. Многие ресурсы имеют прямое отношение к аппаратным устройствам, таким как ЦП, оперативка, каналы ввода-вывода. Таким макаром, многие функции ОС плотно сплетены с архитектурой компьютера. Реализация управления этими функциями осуществляется Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) при помощи механизма прерываний – IRQ (Interrupt Request - запрос на прерывание).

Прерывание – это сигнал, заставляющий ЭВМ поменять обыденный порядок выполнения потока команд. Появление схожих сигналов обосновано такими событиями, как окончание операций ввода-вывода, истечение заблаговременно данного интервала времени либо попытка деления на нуль.

Ценность аппарата прерываний состоит в том, это микропроцессор Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) может автоматом реагировать на наружные по отношению к системе ситуации, также на ситуации, возникающие снутри него самого. По природе возникновения аппарат прерываний содержит в себе несколько типов прерываний. Более общим является прерывание генерируемые периферийными устройствами, требующими обслуживания после окончания ввода-вывода. Другой источник прерывания – это устройство управления памятью, которое может Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) говорить об воззвании к виртуальной страничке памяти, отсутствующей оперативки, либо неверной адресации. Снутри микропроцессора прерывания могут генерироваться в случае арифметических ошибок. И, в конце концов, прерывание может быть сгенерировано средством выполнения специальной команды – программное прерывание.

Представим, что в момент пришествия от некого источника сигнала прерывания программка Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) Р находится в решении.

В итоге прерывания происходит переход к программке обработки прерывания (ПОП). До того как приступить к анализу предпосылки прерывания, эта программка должна сохранить текущее состояние микропроцессора. ПОП обычно является частью ОС. После окончания обработки прерывания управление передается в ту же точку программки Р, где ее выполнение было Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) прервано.

В рассмотренной последовательности событий появление и обработка прерывания могут быть совсем не связаны с программкой Р. К примеру, оно может быть вызвано окончанием операции ввода-вывода, выданной другой программкой. В общем случае нереально предсказать когда и по какой причине программка Р будет прервана. За сохранение текущего состояния машины во Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) время прерывания программки Р, а так же за ее восстановлением, когда Р будет продолжена, смотрят аппаратные и программные средства. Благодаря этому в случае прерывания, ничто кроме времени, не оказывает влияние на ее выполнение.

Есть последующие виды прерываний:

· SVC – прерывание появляется при выполнении ЦП команды вывода супервизора. Эта команда употребляется программками Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) для вызова функции ОС.

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

· Прерывание по таймеру вызывается интервальным таймером ЦП. Этот таймер содержит регистр, которому может быть присвоено определенное Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) изначальное значение средством привилегированной команды STI. Значение этого регистра автоматом миниатюризируется на один после использования каждой единицы времени ЦП. Когда это значение становиться равным нулю, происходит прерывание по таймеру. Схожий интервальный таймер употребляется ОС для определения времени, в течение которого программка юзера может оставаться под управлением машины.

· Прерывание по вводу Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)-выводу вызывается каналами либо устройствами ввода-вывода. Предпосылкой таких прерываний является обычное окончание некой операции ввода-вывода; но они могут также оповещать о появлении разных неверных ситуаций.

Не считая рассмотренных стандартных ситуаций появление прерываний случается также, что прерывание вызывается так именуемыми несуществующими устройствами. К примеру, при подключении периферийного устройства к Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) микропроцессору требуется, чтоб определенные сигналы и регистры устройства были «состыкованы» с шиной ввода-вывода системы. Если эта стыковка осуществлена не правильно, то могут появиться неверные прерывания, относящиеся к несуществующему устройству. Если неверное прерывание соответствующим образом не обработано, то управление микропроцессором может совершить случайный скачек по памяти, высчитать какие Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)-нибудь случайные последовательности данных и, в конечном счете, привести к аварийной остановке всей системы.

Неоднократные прерывания имеют механизм вложения. При всем этом учитывается приоритетность прерываний. К примеру: I – SVC – прерывание; II – программные; III – таймеру; IV – вводу-выводу.

По прерыванию по вводу-выводу состояние программки выполняющейся в этот момент Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) ЦП, сохраняется, а управление передается обработчику прерываний по вводу-выводу. Во время его работы происходит новое прерывание уже по таймеру, в итоге чего управление передается обработчику прерываний по таймеру. По окончанию обработки этого прерывания с помощью команды SPL 2 из рабочей области прерывания по таймеру устанавливается состояние ЦП. В итоге Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) управления опять передается обработчику по прерыванию по вводу-выводу. После окончания обработки прерывания с помощью уже другой SPL 1 восстанавливается состояние ЦП, которое было в момент первого прерывания. Сейчас все прерывания открыты, так как в слове состояния, применяемом программкой Р, все биты установлены в единицу.

2. Работа системы прерываний в реальном Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) режиме работы микропроцессора

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

В реальном режиме работа системы прерываний Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) употребляет понятие вектора прерывания. Термин «вектор прерываний» употребляется поэтому, что для указания адреса употребляется не одно значение, а два, другими словами имеем дело не со скалярной величиной, а с «векторной». Каждый вектор прерываний состоит из 4 байтов либо 2 слов. Таблица векторов прерываний занимает 1024 б. Таким макаром, в ней может быть Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) задано 256 векторов прерываний.

Таблица векторов прерываний заполняется (инициализируется) при запуске системы, но в принципе может быть изменена либо перемещена. Каждый вектор прерываний имеет собственный номер, именуемый номером прерывания, который показывает его номер в таблице.

Подобно вызову процедуры, прерывание принуждает процессор сохранить в стеке для следующего возврата, а потом перейти к группе команд Многоуровневые очереди с обратной связью (Multilevel Feedback Queue), адресок которых определяется вектором прерывания. Таким макаром, прерывание вызывает косвенный переход к собственной подпрограмме обработки за счет получения ее адреса из вектора прерывания.

В компьютерах класса IBM PC прерывания бывают 2-ух видов: внутренние и наружные.

Внутренние прерывания появляются в итоге работы микропроцессора. Они появляются в ситуациях Многоуровневые очереди с обратной связью (Multilevel Feedback Queue), которые нуждаются в особом обслуживании, либо при выполнении особых инструкций INT либо INTO. Это последующие прерывания:

· прерывание при делении на ноль; номер прерывания – 0;

· прерывание по флагу TF (trap flag – особый бит в регистре PSW (слова состояния программки)). В данном случае прерывание обычно употребляется особыми программками отладки типа DEBUG. Номер прерывания – 1.

· аннотация Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) INT (interrupt – выполнить прерывание с подходящим номером) и INTO (interrupt of overflow – прерывание по переполнению). Эти прерывания именуются программными.

Наружные прерывания появляются по сигналу какого-либо наружного устройства. Есть два особых наружных сигнала посреди входных сигналов микропроцессора, с помощью которых можно оборвать выполнение текущей программки и тем Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) переключить работу центрального микропроцессора. Это сигналы NMI (no mask interrupt – не маскируемое прерывание) и INTR (interrupt request – запрос на прерывание). Соответственно наружные прерывания разделяются на немаскируемые и маскируемые.

Маскируемые прерывания генерируются контроллером прерываний по заявке определенных устройств перифирии. Сигнал запроса на прерывание в большинстве случаев является сигналом готовности периферийного устройства Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) на выполнение последующей команды, связанной с управлением операциями ввода/вывода. Маскируемые прерывания также именуют аппаратными прерываниями.

Обычно в современных компьютерах употребляется 15 линий IRQ (запросов на прерывание), часть из которых употребляется внутренними контроллерами системной платы, а другие заняты стандартными адаптерами или не употребляются. Прерывания с наименьшими номерами владеют более высочайшим Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) ценностью.

IRQ Применение
Системный таймер, представляющий для операционной системы такт продолжительностью 18,21 мс.
Клавиатура
Не доступно на 16-ти разрядной шине ISA , так как употребляется для подключения ввода контроллера прерываний, чтоб получить прерывания 8 – 15. Вывод прерывания 2 на 16-ти разрядной шине ISA подключен к выводу прерывания 9 контроллера прерываний. ПК настрое таким макаром, чтоб вызывать обработчик Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) прерывания 2 при активизации прерывания 9.
Порт 2 поочередной передачи данных (COM 2), а время от времени порт СОМ 4, если последний установлен.
Порт 1 поочередной передачи данных (COM 1), а время от времени порт СОМ 3, если последний установлен.
Сначало применялось для контроллера жестких дисков. Потом было зарезервировано для второго параллельного порта принтера (LPT Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) 2). Так как в ПК изредка устанавливается более 1-го параллельного порта принтера, BIOS ПК вообщем не пользуется прерываниями для печати, то это прерывание IRQ, обычно, доступно для использования. Часто употребляется сетевым адаптером или звуковой платой (sound blaster).
Контроллер гибких дисков.
1-ый параллельный порт принтера LPT 1. Это прерывание самым низким ценностью Многоуровневые очереди с обратной связью (Multilevel Feedback Queue).
ИС часов реального времени в ПК, содержащая КМОП-память с запасным батарейным питанием и часы настоящего времени, показания которых считываются при включении ПК, может быть установлена для формирования прерывания 8 с частотой кратной двум, от 2 до 8192 раз за секунду. Прерывание 8 обладает более низким ценностью, чем прерывание 1, но более высочайшим ценностью Многоуровневые очереди с обратной связью (Multilevel Feedback Queue), чем прерывание 9.
Употребляется для работы с платами, формирующими прерывание 2, так как истинное прерывание 2 употребляется для каскадного подключения прерываний 8-15.
Доступно
Доступно
Может быть применено мышью, подключаемой к шине типа IBM PS/2, но обычно этого не делается и потому, обычно, оно доступно.
Зарезервировано для указания ошибок математического сопроцессора. Труднодоступно шине ISA.
Употребляется контроллером Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) жестких дисков с хорошим от SCSI интерфейсом (обычно с интерфейсом IDE).
Часто употребляется дисковыми контроллерами с интерфейсом SCSI, но установка дискового контроллера SCSI не является «стандартной». Обладает более низким ценностью, чем прерывание 14, но более высочайшим, чем прерывание 3.

Номер прерывания и его ценность инсталлируются на шаге инициализации системы Многоуровневые очереди с обратной связью (Multilevel Feedback Queue). После пуска операционной системы юзер в неких случаях может поменять таблицу векторов прерывания, так как она ему доступна.

3. Работа системы прерываний в защищенном режиме работы микропроцессора

В защищенном режиме система прерываний микропроцессора употребляет не вектора прерываний, а таблицу дескрипторов прерываний (IDT, interrupt descriptor table). При этом таблица IDT представляет собой таблицу не Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) с адресами обработчиков прерываний, а таблицу со особыми системными структурами данных (дескрипторами), доступ к которой со стороны пользовательских прикладных программ неосуществим. Только сам процессор (его система прерываний) и код операционной системы могут получить доступ к этой таблице, которая представляет собой особый сектор, адресок и сектор которой содержатся в Многоуровневые очереди с обратной связью (Multilevel Feedback Queue) таблице регистре таблицы прерываний.

Лекция 5. Рассредотачивание оперативки в операционной системе

1. Общие принципы организации управления оперативной памятью.

2. Организация управления виртуальной памятью.

3. Рассредотачивание оперативки в MS-DOS.

4. Рассредотачивание оперативки в Windows NT.

1. Общие принципы организации управления оперативной памятью


mnogoplodnaya-beremennost-referat.html
mnogopovtornij-zhim-pravila-ego-vipolneniya.html
mnogoprocessornie-vichislitelnie-sistemi.html