Циклическое планирование работ в системах оперативной обработки информации > Полезные советы
Тысяча полезных мелочей    

Циклическое планирование работ в системах оперативной обработки информации

Циклическое планирование работ в системах оперативной обработки информации

Шорин Д.Ю. Резуев С.В. Статья в формате PDF 332 KB

Одним из самых старых, простых и наиболее используемых способов планирования работ считается алгоритм циклического планирования. Каждому процессу предоставляется промежуток времени работы процессора - квант времени, если к концу кванта процесс всё ещё работает, то этот процесс прерывается и процессор обpaбатывает уже другой, следующий процесс. Если процесс прекращает работу раньше срока истечения кванта, то происходит передача управления. Планировщик только поддерживает список процессов. Исчерпавшие лимит, обработанные процессы помещаются в конец списка процессов. Важный вопрос - длина кванта - при малой длине кванта высоки потери на переключение, при большой - заторможенность реакции на быстрые запросы. Пример циклического планирования представлен на рисунке.

Планирование по циклическому принципу

Циклическое обслуживание эффективно для работы с разделением времени, когда система должна гарантировать приемлемые времена ответа для всех интеpaктивных пользователей. Временные затраты на диспетчеризацию здесь удается снизить за счет эффективных механизмов контекстного переключения и благодаря предоставлению достаточного объема основной памяти, чтобы процессы могли размещаться в ней одновременно.

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

При таких параметрах настройки после 4 мс полезной работы центральному процессору придется затратить (то есть потерять) 1 мс на переключение процесса. Таким образом, 20% процессорного времени будет выброшено на административные издержки, а это, вне всякого сомнения, слишком много.

Определение размера кванта времени имеет критическое значение для эффективной работы вычислительной системы.

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

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

Рассмотрим предположительно оптимальное значение кванта времени (небольшую долю секунды), при котором обеспечиваются хорошие времена ответа. Чем именно хаpaктеризуется подобный квант времени? Он достаточно велик, так что подавляющее большинство интеpaктивных запросов требует для своего обслуживания меньшего времени, чем длительность кванта. Когда интеpaктивный процесс начинает выполняться, он, как правило, использует ЦП в течение некоторого времени, после чего генерирует запрос ввода-вывода. Когда запрос ввода-вывода выдан, этот процесс уступает ЦП следующему процессу. Поскольку величина кванта больше, чем это время вычислений до формирования запроса ввода-вывода, процессы пользователей выполняются пpaктически с максимальной скоростью. Каждый раз, когда процесс пользователя получает в свое распоряжение ЦП, он с большой вероятностью доработает до момента выдачи запроса ввода-вывода. Благодаря этому сводятся к минимуму временные затраты на диспетчеризацию, обеспечивается максимальное использование ресурсов ввода- вывода и относительно короткие времена ответа.

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

Список литературы

1. Олифер В.Г., Олифер Н.А. Сетевые операционные системы: - СПб.: Питер, 2002. - 544 с.

2. Средства и системы компьютерной автоматизации. - http://www.asutp.ru.



Изомерия и гомеостаз популяций

Изомерия и гомеостаз популяций Статья в формате PDF 102 KB...

16 06 2026 23:15:20

ПРИМЕНЕНИЕ ГИС НА ЖЕЛЕЗНОДОРОЖНОМ ТРАНСПОРТЕ

ПРИМЕНЕНИЕ ГИС НА ЖЕЛЕЗНОДОРОЖНОМ ТРАНСПОРТЕ Статья в формате PDF 335 KB...

15 06 2026 19:28:22

АТОМ. СТРОЕНИЕ И ДИНАМИКА (электронное издание)

АТОМ. СТРОЕНИЕ И ДИНАМИКА (электронное издание) Статья в формате PDF 278 KB...

13 06 2026 5:10:21

КЛИНИКА СОВРЕМЕННОГО ИНФЕКЦИОННОГО МОНОНУКЛЕОЗА

КЛИНИКА СОВРЕМЕННОГО ИНФЕКЦИОННОГО МОНОНУКЛЕОЗА Статья в формате PDF 215 KB...

11 06 2026 15:21:10

СОЗДАНИЕ БАЗЫ ДАННЫХ ДЛЯ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ

СОЗДАНИЕ БАЗЫ ДАННЫХ ДЛЯ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ Статья в формате PDF 253 KB...

05 06 2026 23:49:17

МОРФОЛОГИЧЕСКИЕ ОСНОВЫ ФОРМИРОВАНИЯ ИММУНИТЕТА

МОРФОЛОГИЧЕСКИЕ ОСНОВЫ ФОРМИРОВАНИЯ ИММУНИТЕТА Статья в формате PDF 152 KB...

30 05 2026 6:27:23

КОРРЕКЦИЯ ИММУННОБИОХИМИЧЕСКОГО СТАТУСА У БЫЧКОВ ПРИ ХРОНИЧЕСКОМ СЕЛЕНОВОМ ТОКСИКОЗЕ

КОРРЕКЦИЯ ИММУННОБИОХИМИЧЕСКОГО СТАТУСА У БЫЧКОВ ПРИ  ХРОНИЧЕСКОМ СЕЛЕНОВОМ ТОКСИКОЗЕ В данной работе представлены материалы по изучению влияния добавок серы к рациону крупного рогатого скота с целью коррекции иммуннобиохимического статуса при хроническом селеновом токсикозе. ...

27 05 2026 4:21:20

Феномен технонауки

Феномен технонауки Статья в формате PDF 255 KB...

24 05 2026 12:54:15

ФАКТОРЫ, ВЛИЯЮЩИЕ НА РЕПРОДУКТИВНОЕ ЗДОРОВЬЕ ДЕТЕЙ

ФАКТОРЫ, ВЛИЯЮЩИЕ НА РЕПРОДУКТИВНОЕ ЗДОРОВЬЕ ДЕТЕЙ Статья в формате PDF 123 KB...

19 05 2026 15:21:40

КОНТРОЛЬ КАЧЕСТВА ЗНАНИЙ СТУДЕНТОВ

КОНТРОЛЬ КАЧЕСТВА ЗНАНИЙ СТУДЕНТОВ Статья в формате PDF 103 KB...

11 05 2026 12:21:28

СОЮЗ ФИЗИКИ И ИСКУССТВА (СИММЕТРИЯ)

СОЮЗ ФИЗИКИ И ИСКУССТВА (СИММЕТРИЯ) Статья в формате PDF 249 KB...

09 05 2026 16:52:47

Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::