Preemptivní multitasking

Preemptivní multitasking ( prioritní multitasking , anglicky  preemptive multitasking , doslova preemptivní multitasking ) je druh multitaskingu , při kterém se operační systém rozhodne přepínat mezi úkoly po určitém časovém kvantu [1] .

Funkce

Rozhodnutí je učiněno v souladu s prioritami úkolů. Na rozdíl od kooperativního multitaskingu je řízení přeneseno na operační systém bez ohledu na stav spuštěných aplikací, díky čemuž zejména zavěšené (například zacyklené ) aplikace zpravidla „nevisí“ operační systém. Pravidelné přepínání úloh také zlepšuje odezvu systému, efektivitu uvolňování systémových prostředků, které již úloha nevyužívá [1] [2] .

V implementaci se preemptivní multitasking liší od kooperativního multitaskingu zejména tím, že vyžaduje zpracování systémového přerušení z hardwarového časovače [3] . Po vypršení časového kvanta pro proces dojde k přerušení a vyvolá se plánovač procesu . Frekvence volání plánovače je kritická: příliš časté volání bude plýtvat časem CPU.

Podpora v operačních systémech

Preemptivní multitasking se používá ve většině moderních operačních systémů pro všeobecné použití [4] , například: Windows 9x a NT [5] , Linux (a další UNIX ) [6] a OS/2 [7] , [8] Mac OS [9 ] [10] a BeOS [11] , MenuetOS a KolibriOS [12] . Příkladem preemptivního multitaskingového systému dřívějšího než UNIX je VMS [13] . Používá se také v mnoha vestavěných operačních systémech pracujících v reálném čase , jako je FreeRTOS [14] .

Viz také

Poznámky

  1. ↑ 1 2 Dorot Vjačeslav Leonidovič. Preemptivní multitasking // Explanatory Dictionary of Modern Computer Vocabulary . - 3. vyd. - BHV-Petersburg, 2004. - S. 143. - 608 s. — ISBN 978-5-94157-491-9 .
  2. Hailperin, 2007 , str. 37.
  3. Hailperin, 2007 , str. 37-38.
  4. Alexej Belokopytov. Moderní informační technologie: Studijní příručka . — Litry, 2016-01-02. - S. 6. - 173 s. — ISBN 9785457413658 .
  5. Jurij Abramovič Ščupák. Multitasking // WIN32 API: Vývoj aplikací pro Windows . - Nakladatelství "Petr", 2008-07-14. - S. 17-18. — 592 s. — ISBN 978-5-388-00301-0 . Archivováno 15. září 2016 na Wayback Machine
  6. Raymond, 2005 , 3.1.2. Podpora multitaskingu, str. 81.
  7. Raymond, 2005 , 3.2.3. OS/2, str. 92.
  8. Alexandr Vladimirovič Gordějev. Plánování a rozvrhování procesů úkolů // Operační systémy: [ve směru přípravy. "Informatika a počítačové inženýrství" ]. - Nakladatelství "Petr", 2009. - S. 57. - 417 s. — ISBN 9785947236323 . Archivováno 15. září 2016 na Wayback Machine
  9. To platí pro moderní verze, počínaje OS X, „klasický“ Mac OS implementoval nepreemptivní multitasking (viz např . Raymond, 2005 , 3.2.2. Mac OS, str. 91
  10. Pavel Urusov. Zkažená jablka. Nejhorší Apple produkty . gagadget.com (5. února 2015). Získáno 1. září 2016. Archivováno z originálu 15. září 2016.
  11. Historie operačního systému BeOS  // Hacker. - 2013. - č. 10 . Archivováno z originálu 26. srpna 2016.
  12. Sergej Kuzmin. Nová tvář Menuet OS . comprice.ru (15. prosince 2004). Získáno 1. září 2016. Archivováno z originálu 13. října 2016.
  13. Raymond, 2005 , 3.2.1. VMS, s. 89.
  14. Kormanyos, 2015 , str. 196-197.

Literatura