Forebyggende multitasking

Forebyggende multitasking ( priority multitasking , engelsk  preemptive multitasking , bogstaveligt talt præemptive multitasking ) er en type multitasking , hvor operativsystemet beslutter sig for at skifte mellem opgaver efter et vist tidskvante [1] .

Funktioner

Beslutningen træffes i overensstemmelse med opgavernes prioritering. I modsætning til kooperativ multitasking overføres kontrol til operativsystemet uanset tilstanden af ​​kørende applikationer, på grund af hvilken, især hang (for eksempel looped ) applikationer, som regel ikke "hænger" operativsystemet. Regelmæssig skift af opgaver forbedrer også systemets reaktionsevne , effektiviteten ved at frigive systemressourcer, der ikke længere bruges af opgaven [1] [2] .

I implementeringen adskiller forebyggende multitasking sig fra cooperativ multitasking, især ved, at det kræver behandling af et systemafbrydelse fra en hardwaretimer [ 3] . Efter at tidskvantumet for processen er udløbet, opstår der et afbrydelse, og procesplanlæggeren påkaldes . Hyppigheden af ​​at ringe til skemalæggeren er kritisk: at ringe til den for ofte vil spilde CPU-tid.

Support i operativsystemer

Forebyggende multitasking bruges i de fleste moderne operativsystemer til generelle formål [4] , for eksempel: Windows 9x og NT [5] , Linux (og andre UNIX ) [6] og OS/2 [7] , [8] Mac OS [9 ] [10] og BeOS [11] , MenuetOS og KolibriOS [12] . Et eksempel på et forebyggende multitasking-system tidligere end UNIX er VMS [13] . Det bruges også i mange indlejrede realtidsoperativsystemer såsom FreeRTOS [ 14 ] .

Se også

Noter

  1. ↑ 1 2 Dorot Vyacheslav Leonidovich. Forebyggende multitasking // Explanatory Dictionary of Modern Computer Vocabulary . - 3. udg. - BHV-Petersburg, 2004. - S. 143. - 608 s. — ISBN 978-5-94157-491-9 .
  2. Hailperin, 2007 , s. 37.
  3. Hailperin, 2007 , s. 37-38.
  4. Alexey Belokopytov. Moderne informationsteknologi: En studievejledning . — Liter, 2016-01-02. - S. 6. - 173 s. — ISBN 9785457413658 .
  5. Yuri Abramovich Shchupak. Multitasking // WIN32 API: Windows-applikationsudvikling . - Forlaget "Peter", 2008-07-14. - S. 17-18. — 592 s. — ISBN 978-5-388-00301-0 . Arkiveret 15. september 2016 på Wayback Machine
  6. Raymond, 2005 , 3.1.2. Multitasking support, s. 81.
  7. Raymond, 2005 , 3.2.3. OS/2, s. 92.
  8. Alexander Vladimirovich Gordeev. Planlægning og planlægning af opgaveprocesser // Operativsystemer: [i retning af forberedelse. "Informatik og computerteknik" ]. - Forlaget "Peter", 2009. - S. 57. - 417 s. — ISBN 9785947236323 . Arkiveret 15. september 2016 på Wayback Machine
  9. Dette gælder for moderne versioner, startende med OS X, det "klassiske" Mac OS implementeret ikke-forebyggende multitasking (se f.eks . Raymond, 2005 , 3.2.2. Mac OS, s. 91
  10. Pavel Urusov. Rådne æbler. Værste Apple-produkter . gagadget.com (5. februar 2015). Hentet 1. september 2016. Arkiveret fra originalen 15. september 2016.
  11. Historien om BeOS-operativsystemet  // Hacker. - 2013. - Nr. 10 . Arkiveret fra originalen den 26. august 2016.
  12. Sergey Kuzmin. Menuet OS' nye ansigt . comprice.ru (15. december 2004). Hentet 1. september 2016. Arkiveret fra originalen 13. oktober 2016.
  13. Raymond, 2005 , 3.2.1. VMS, s. 89.
  14. Kormanyos, 2015 , s. 196-197.

Litteratur