Multitasking

En teknik, der anvendes i styresystemer, og som tillader en tilsyneladende samtidig afvikling af flere programmer i en computer. Sædvanligvis omfatter multitasking det forhold, at CPU'en deler sin tid mellem en række parallelt kørende processer (tasks). Denne teknik kaldes for time slicing. Fordelingen af tid mellem de enkelte processer kan ske efter forskellige metoder, tvungent eller frivillig (se preemptive scheduling, non-preemptive scheduling og corutiner).

Ofte vil der være et prioritetsniveau knyttet til de enkelte processer, således at de processer, der har højest prioritet, tildeles tid først.

Multitasking anvendes i computere, der fungerer som flerbrugersystemer, hvor hver bruger efter tur får tildelt en vis tidsportion af CPU'ens datakraft. Multitasking anvendes tillige i enkeltbrugersystemer, hvor teknikken benyttes til at afvikle flere opgaveprogrammer samtidigt for samme bruger.

I moderne styresystemer som OS/2 og UNIX er multitasking-begrebet generaliseret, så ét program internt efter behov kan oprette flere parallelle processer eller tasks, der samarbejder om udførelsen af en opgave (se også thread).

Multitasking må ikke forveksles med det noget ældre begreb multiprogrammering. Se også multiprocessing.

Forfattere: 
Tue Bertelsen
Casper Thomsen