В операционной системе совместная многозадачность - это средство создания видимости, что одновременно выполняется более одной задачи (выполняемого процесса). Кооперативная многозадачность представляет собой улучшение по сравнению с загрузкой нескольких программ, при которой в память может быть загружено несколько программ, но одновременно может выполняться только одна. Многозадачность создает впечатление, что две или более программы работают одновременно, за счет быстрого переключения задач. При совместной многозадачности задачи предназначены для добровольной передачи управления ЦП другим приложениям. См. Превентивную многозадачность, задачу.
Technipages объясняет совместную многозадачность
Кооперативная многозадачность - это метод, при котором разные части программного обеспечения отказываются от своего непосредственного контроля над процессором компьютера, чтобы другое программное обеспечение могло его использовать. Программы добровольно отказываются от своего контроля, поскольку это позволяет другим программам использовать процессор компьютера.
Метод зависит от способности приложений согласовать наилучший коэффициент обработки. Приложения в равной степени позволяют блокам обработки данных взаимодействовать друг с другом; следовательно, когда программа используется, все остальные программы останавливаются. Приложения в фоновом режиме будут обрабатывать данные только тогда, когда программы на переднем плане не работают.
Обратной стороной этого является то, что когда программа, которая была написана не для соответствия совместной многозадачности, начинает выполняться, она останавливает выполнение других программ. Это было большой проблемой для разработчиков, поскольку одна программа может привести к сбою всей операционной системы. Использование совместной многозадачности сократилось, поскольку в Windows 3.1 и операционную систему Macintosh (macOS) была встроена совместная многозадачность. Последующие версии от двух компаний теперь полагаются на упреждающую многозадачность, новый метод, который заставил замолчать его предшественник - кооперативную многозадачность.
Распространенное использование совместной многозадачности
- Так или иначе, невесомые нити заставляют вспомнить совместная многозадачность версий macOS и более старых версий Windows.
- Вообще говоря, в совместная многозадачность, процесс не остановится, пока не обнаружит, что делает это добровольно.
- Совместная многозадачность помогает центральному процессору компьютера выделять ресурсы обработки для определенной деятельности.
Распространенные злоупотребления совместной многозадачностью
- Совместная многозадачность не допускается для тяжелых потоков.