aliases |
tags |
date |
zero-link |
parents |
linked |
non-preemptive multitasking |
cooperative multitasking |
кооперативная многозадачность |
невытесняющей многозадачности |
кооперативной многозадачности |
невытесняющая многозадачность |
кооперативную многозадачность |
|
|
|
|
|
|
Подход к управлению выполнением задач в операционных системах, при котором текущий выполняющийся процесс должен явно отдать управление ../../../../knowledge/dev/pc/Операционная система, чтобы другой процесс мог быть запущен.
В этом режиме ../../../../knowledge/dev/pc/Операционная система не может прервать и вытеснить текущий процесс для переключения на другой процесс, как в Вытесняющая многозадачность. Вместо этого, каждый процесс должен "добровольно" уступить ресурсы, достигнув определённой точки в своём выполнении или завершив свою работу.
[!INFO]
В современных операционных системах преимущественно используется вытесняющая многозадачность.
Особенности кооперативной многозадачности:
- Кооперативность: Процессы сами решают, когда отдать управление ОС, что требует более внимательного программирования, чтобы избежать занимания Центральный процессор одним процессом на долгое время.
- Риски: Если один из процессов захватывает процессор и не отдаёт управление, это может привести к "зависанию" системы или снижению отзывчивости, поскольку другие процессы не смогут выполняться до тех пор, пока не будет освобожден процессор.
- Простота: Механизмы кооперативной многозадачности проще в реализации по сравнению с Вытесняющая многозадачность, так как не требуют сложной логики управления приоритетами и безопасности переключения контекста.
- Применение: Этот подход чаще всего используется в системах с ограниченными ресурсами, встраиваемых системах или в старых операционных системах, где аппаратная поддержка для вытесняющей многозадачности может отсутствовать.
Мета информация
Область:: ../../meta/zero/00 Архитектура ЭВМ
Родитель:: Многозадачность
Источник::
Автор::
Создана:: 2024-03-19
Дополнительные материалы
Дочерние заметки