- •V(s) - переменная s увеличивается на 1 единым действием. Выборка, наращивание и запоминание не могут быть прерваны. К переменной s нет доступа другим потокам во время выполнения этой операции;
- •2. Круговое или карусельное планирование (rr – round robin) использует вытеснение на основе таймера для повышения эффективности работы с короткими процессами в методе fcfs.
- •3. Выбор самого короткого процесса (spn – shortest process next). Для выполнения выбирается процесс с наименьшим ожидаемым временем выполнения.
- •1.Назначение процессов процессорам, предполагает, что процессоры – это единый ресурс и все процессоры идентичны. Подразделяют статическое и динамическое назначение.
- •3. Бригадное планирование (gang scheduling). Множество связанных процессов (потоков) распределяется для одновременной работы среди множества процессоров, по одному процессу (потоку) на процессор.
- •4. Динамическое планирование. Количество потоков процесса может изменяться во время работы.
2. Круговое или карусельное планирование (rr – round robin) использует вытеснение на основе таймера для повышения эффективности работы с короткими процессами в методе fcfs.
Таймер генерирует прерывания через определенные интервалы времени. При каждом прерывании выполняющийся в настоящий момент процесс помещается в очередь готовых к выполнению процессов и начинает выполнять очередной процесс, выбираемый в соответствии со стратегией FCFS. Этот метод известен также как квантование времени, поскольку перед тем как быть вытесненным каждый процесс получает квант времени для выполнения. При этом принципиальным становится вопрос о продолжительности кванта времени. При малом кванте времени короткие процессы будут относительно быстро проходить через систему, но при этом возрастают накладные расходы, связанные с обработкой прерывания и выполнением функций планирования. Следует придерживаться правила: квант времени, должен быть немного больше, чем время, требующееся для типичного полного обслуживания рис. 3.7.6. Если квант оказывается меньшего размера, большинство процессов потребует как минимум два кванта времени. Когда квант времени превышает продолжительность самого длинного процесса, круговое планирование вырождается в планирование FCFS.
Кванты, выделяемые процессам, могут быть одинаковыми для всех процессов или различными. Кванты, выделяемые одному процессу, могут быть фиксированной величины или изменяться в разные периоды жизни процесса. Процессы, которые не полностью использовали выделенный им квант (например, из-за ухода на выполнение операций ввода-вывода), могут получить или не получить компенсацию в виде привилегий при последующем обслуживании.
В методе происходит смена активного процесса: если процесс завершился и покинул систему, произошла ошибка, процесс перешел в состояние блокирование (ожидание), исчерпан квант процессорного времени, отведенный данному процессу. Процесс, который исчерпал свой квант, переводится в состояние готов и ожидает, когда ему будет предоставлен новый квант процессорного времени, а на выполнение в соответствии с определенным правилом выбирается новый процесс из очереди готовых.
Недостатки. Обычно у процесса с интенсивным вводом-выводом промежуток времени между двумя операциями с ввода-вывода, когда процесс использует процессор, меньше, чем у процесса, ориентированного на использование процессора. В результате возможна следующая ситуация: процесс с интенсивным вводом-выводом использует процессор в течение короткого промежутка времени и оказывается в заблокированном состоянии в ожидании завершения операции ввода-вывода. По завершении этой операции он вновь присоединяется к очереди готовых к выполнению процессов. Процесс, ориентированный на использование процессора, использует отпущенный ему квант времени полностью и немедленно возвращается в очередь готовых к выполнению процессов. Таким образом, он получает больше процессорного времени, что приводит к снижению производительности процессов с интенсивным вводом-выводом, неэффективному использованию устройств ввода-вывода и увеличению времени отклика. Для решения этой проблемы вводится вспомогательная очередь для процессов, завершивших операции ввода-вывода, которой отдается преимущество при выборе процесса.
