Разница между упреждающей и кооперативной многозадачностью заключается в том, как операционная система управляет переключением между задачами. www.geeksforgeeks.org senjun.ru
Упреждающая (вытесняющая) многозадачность. ru.wikipedia.org senjun.ru Операционная система принимает решение о переключении между задачами по истечении некоего кванта времени в соответствии с приоритетами задач. ru.wikipedia.org Планировщик задач принудительно приостанавливает выполнение текущей задачи и отдаёт управление другой задаче, готовой для исполнения. senjun.ru
Кооперативная многозадачность. ru.ruwiki.ru senjun.ru Операционная система не инициирует передачу управления между задачами. senjun.ru Задачи самостоятельно отдают управление планировщику, а он решает, какая задача будет выполняться следующей. senjun.ru
Таким образом, при упреждающей многозадачности управление операционной системой передаётся вне зависимости от состояния работающих приложений, благодаря чему зависшие приложения, как правило, не «подвешивают» операционную систему. ru.wikipedia.org При кооперативной многозадачности управление передаётся только после того, как текущая задача явно объявит себя готовой отдать процессорное время другим задачам. ru.ruwiki.ru