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

2. Круговое или карусельное планирование (rr – round robin) использует вытеснение на основе таймера для повышения эффективности работы с короткими процессами в методе fcfs.

Таймер генерирует прерывания через определенные интервалы времени. При каждом прерывании выполняющийся в настоящий момент процесс помещается в очередь готовых к выполнению процессов и начинает выполнять очередной процесс, выбираемый в соответствии со стратегией FCFS. Этот метод известен также как квантование времени, поскольку перед тем как быть вытесненным каждый процесс получает квант времени для выполнения. При этом принципиальным становится вопрос о продолжительности кванта времени. При малом кванте времени короткие процессы будут относительно быстро проходить через систему, но при этом возрастают накладные расходы, связанные с обработкой прерывания и выполнением функций планирования. Следует придерживаться правила: квант времени, должен быть немного больше, чем время, требующееся для типичного полного обслуживания рис. 3.7.6. Если квант оказывается меньшего размера, большинство процессов потребует как минимум два кванта времени. Когда квант времени превышает продолжительность самого длинного процесса, круговое планирование вырождается в планирование FCFS.

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

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

Недостатки. Обычно у процесса с интенсивным вводом-выводом промежуток времени между двумя операциями с ввода-вывода, когда процесс использует процессор, меньше, чем у процесса, ориентированного на использование процессора. В результате возможна следующая ситуация: процесс с интенсивным вводом-выводом использует процессор в течение короткого промежутка времени и оказывается в заблокированном состоянии в ожидании завершения операции ввода-вывода. По завершении этой операции он вновь присоединяется к очереди готовых к выполнению процессов. Процесс, ориентированный на использование процессора, использует отпущенный ему квант времени полностью и немедленно возвращается в очередь готовых к выполнению процессов. Таким образом, он получает больше процессорного времени, что приводит к снижению производительности процессов с интенсивным вводом-выводом, неэффективному использованию устройств ввода-вывода и увеличению времени отклика. Для решения этой проблемы вводится вспомогательная очередь для процессов, завершивших операции ввода-вывода, которой отдается преимущество при выборе процесса.