Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену ОС полные.doc
Скачиваний:
17
Добавлен:
24.09.2019
Размер:
542.72 Кб
Скачать

17. Принципы функционирования очереди.

Очередь – это последовательность постановки процессов на выполнение (конкуренции за ресурс).

  1. Есть следующие типы очередей: FIFO (first input first output) – в очереди не играет роли, какая задача по объему, по приоритету, по ресурсам, главное – ее момент появления в очереди (караван, буфер). Самая важная заявка – первая.

  1. LIFO (last input first output). Стэк.

Если в момент обслуживания (n-1) заявки поступила еще одна, то она встает сразу за (n-1). Такой тип обслуживания называется стеком.

Согласно LIFO самая важная заявка, которая пришла последней, а в FIFO – первой.

  1. Очередь с использованием приоритетов. Заявки на обслуживание при появлении в очереди имеют разные значения приоритетов. Чем ниже число, тем выше уровень приоритета.

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

Приоритеты зависят от объема задачи – чем меньше задача, тем быстрее она обслужится.

  1. Планирование возможно с разделением тактов машинного времени – круговая диспетчеризация.

Между этими задачами делится машинное время.

Работает система приоритетов – чем больше время переключения, тем больше теряем время процессора.

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

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

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

Например, в качестве первой очереди могут выступать какие-либо системные процессы (например, нажать комбинацию клавиш Alt+Ctrl+Del).

В качестве второй очереди могут выступать программы пользователя, в качестве третьей – какие-либо фоновые задачи (например, печать документа на принтере).

19. Планирование с использованием многоуровневой очереди с обратными связями.

Очередь 1

Очередь 2

t2

t3

Очередь 3

процесс

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

Замечание: в основном этот механизм используется в системах реального времени.

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

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

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

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

Все реальное состояние процесса определяется блоком PCB.