Interested Article - Вытесняющая многозадачность
- 2020-12-31
- 1
Вытесняющая многозадачность ( приоритетная многозадачность , англ. preemptive multitasking , дословно упреждающая многозадачность ) — это вид многозадачности , при которой операционная система принимает решение о переключении между задачами по истечении некоего кванта времени .
Особенности
Решение принимается в соответствии с приоритетами задач. В отличие от кооперативной многозадачности , управление операционной системе передаётся вне зависимости от состояния работающих приложений, благодаря чему, в частности, зависшие (к примеру — зациклившиеся ) приложения, как правило, не «подвешивают» операционную систему. За счёт регулярного переключения задач также улучшается отзывчивость системы, оперативность освобождения ресурсов системы, которые больше не используются задачей .
В реализации вытесняющая многозадачность отличается от кооперативной, в частности, тем, что требует обработки системного прерывания от аппаратного таймера . По истечении кванта времени, отведённого процессу, происходит прерывание и вызывается планировщик процессов . Частота вызова планировщика критична: слишком частый его вызов будет расходовать процессорное время впустую.
Поддержка в операционных системах
Вытесняющая многозадачность используется в большинстве современных операционных систем общего назначения , к примеру: Windows 9x и NT , Linux (и другие UNIX ) и OS/2 , Mac OS и BeOS , MenuetOS и KolibriOS . Примером системы с вытесняющей многозадачностью более ранней, чем UNIX, может служить VMS . Она также используется во многих встраиваемых операционных системах реального времени , таких как FreeRTOS .
См. также
Примечания
- ↑ Дорот Вячеслав Леонидович. Вытесняющая многозадачность // . — 3 изд.. — БХВ-Петербург, 2004. — С. 143. — 608 с. — ISBN 978-5-94157-491-9 .
- , p. 37.
- , p. 37-38.
- Алексей Белокопытов. . — Litres, 2016-01-02. — С. 6. — 173 с. — ISBN 9785457413658 .
- Юрий Абрамович Щупак. Многозадачность // . — Издательский дом «Питер», 2008-07-14. — С. 17-18. — 592 с. — ISBN 978-5-388-00301-0 . 15 сентября 2016 года.
- , 3.1.2. Поддержка многозадачности, с. 81.
- , 3.2.3. OS/2, с. 92.
- Александр Владимирович Гордеев. Планирование и диспетчеризация процессов задач // ]. — Издательский дом «Питер», 2009. — С. 57. — 417 с. — ISBN 9785947236323 . 15 сентября 2016 года.
- Это касается современных версий, начиная с OS X, «классическая» Mac OS реализовывала невытесняющую многозадачность (см, к примеру , 3.2.2. Mac OS, с. 91
- Павел Урусов. . gagadget.com (5 февраля 2015). Дата обращения: 1 сентября 2016. 15 сентября 2016 года.
- // Хакер. — 2013. — № 10 . 26 августа 2016 года.
- Сергей Кузьмин. . comprice.ru (15 декабря 2004). Дата обращения: 1 сентября 2016. 13 октября 2016 года.
- , 3.2.1. VMS, с. 89.
- , с. 196-197.
Литература
- Эрик Реймонд . . — Издательский дом Вильямс, 2005. — 544 с. — ISBN 978-5-8459-0791-2 .
- Max Hailperin. 2.5. Preemptive multitasking // . — Max Hailperin, 2007. — С. 33-34. — 496 с. — ISBN 978-0-534-42369-8 . от 15 сентября 2016 на Wayback Machine
- Christopher Kormanyos. 11.7 Preemptive Multitasking // . — Springer, 2015. — 389 с. — ISBN 978-3-662-47810-3 .
- 2020-12-31
- 1