Swapset - это высокоуровневый подход облегчающий работу с контекстными окнами (отдельными программами), его целью не является оптимизация по скорости.
Для переключения контекстов программ абсолютно не нужен планировщик или организация прерываний с TCB, и даже не задействован стек.
Это именно свобода выбора между ролями процессора в любой момент времени. Свобода забыть и вспомнить о главном цикле, или временно заняться другой задачей. Можно вообще не писать подпрограммы (call/ret) так как каждый сет регистров это новое пространство (как отдельный код запущенный в своем окне).
Здесь нет параллельных вычислений и фонового выполнения как в вытесняющей многозадачности.
Есть возможность запуска любой задачи, независимо от места программы, и возврата при необходимости.
А основная фишка, то, что в любой контекст можно вернуться простым переключением.




Ответить с цитированием