Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС_лекции.docx
Скачиваний:
23
Добавлен:
22.02.2015
Размер:
109.07 Кб
Скачать

3.5.6 Многоуровневые очереди (multilevelQueue)

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

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

0,RR

3.5.7 Многоуровневые очереди

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

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

Только что родившийся процесс поступает в очередь 0. если его величина (время использования процесса) < 8, то он перестает выполнятся. если CPU> 16, то он переходит во 2.

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

Многоуровневые очереди с обратной связью – наиболее универсальное решение.

Какие параметры необходимо учитывать при реализации планирования?

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

  2. задать алгоритм планирования процессов в общем

  3. задать алгоритмы планирования внутри очереди

  4. правило помещение вновь рожденных процессов в очереди

  5. правило перевода процессов из очереди в очередь.

4. Кооперация процессов и основные аспекты в её логической реализации.

Необходимо чтобы процессы взаимодействовали друг с другом.

4.1 Взаимодействующие процессы

Различные процессы могут выполнятся псевдопараллельно (в однопроцессорной ВС), или параллельно (на разных ВС), или в рамках одной ВС с множеством процессов.

Причины, по которым необходимо взаимодействие:

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

  2. совместное использование данных

  3. модульная конструкция системы (микроядерная организация ОС) В микроядерной организации отдельные части ОС фактически представляют для себя разные процессы, общаясь с друг другом передачей сообщений через микроядро.

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

Общение процессом приводит к изменению их поведения

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

для организации кооперации требуются специальные средства (действия ОС)

4.2 Категории средств обмена информацией

все средства общения с процессором принято делить на 3-ри категории:

  • сигнальные средства.

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

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

4.3 Логическая организация механизма передачи информации

4.3.1 Установление связи

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

Способы адресации (необходимо указать при передачи информации) :

  1. прямая. процессы взаимодействуют друг с другом по линии связи, указывая адреса и никто не вмешивается в передачу – схема прямой адресации. Один из взаимодействующих процессов (передающий) указывает имя партнера, а второй в качестве партнеры рассматривает другой процесс в системе – ассиметричная прямая адресация.

  2. непрямая (косвенная). Данные помещаются при передачи процесса в некоторый промежуточный объект.