Ett flertrådet operativsystem (OS) är ett som gör det möjligt för flera trådtrådar att köras samtidigt inom en enda process, och ofta också flera processer samtidigt. Detta skiljer sig från ett enkeltrådat operativsystem där endast en tråd körs åt gången. Den viktigaste skillnaden ligger i * samtidigheten * -aspekten.
Här är en uppdelning:
* Processer: En process är en oberoende, fristående exekveringsmiljö. Det har sitt eget minnesutrymme, resurser och säkerhetssammanhang. Tänk på det som en separat applikation som körs på din dator.
* trådar: En tråd är en lätt exekveringsenhet * inom * en process. Flera trådar kan dela samma processs minnesutrymme, vilket gör kommunikation mellan dem snabbare och enklare än kommunikation mellan separata processer. Tänk på trådar som olika uppgifter som händer inom samma applikation.
I ett flertrådat operativsystem:
* samtidig exekvering: Flera trådar kan tyckas köras samtidigt, även på en enkärnig processor. OS växlar snabbt mellan trådarna, vilket ger var och en en liten skiva bearbetningstid (kontextbrytning). Detta skapar en illusion av parallellism, även utan verklig parallell hårdvara.
* Förbättrad lyhördhet: Om en tråd blockerar (t.ex. väntar på användarinmatning) kan andra trådar i samma process fortsätta att köras, vilket förhindrar att hela applikationen fryser. Detta är avgörande för interaktiva applikationer.
* resursdelning: Trådar inom samma process kan dela resurser som minne och filer effektivt.
* parallellism (på multikärnsystem): På system med flera processorkärnor är sann parallellism möjlig. Olika trådar kan köras på olika kärnor samtidigt och ökande prestanda avsevärt.
Exempel: Nästan alla moderna operativsystem, inklusive Windows, MacOS, Linux och Android, är multi-threaded. De stöder både flertrådar inom processer och samtidig exekvering av flera processer.
Kontrast med engränsad operativsystem: Ett enda tråkigt operativsystem kan bara utföra en tråd åt gången. Om en uppgift blockerar, väntar hela systemet. Sådana system är mycket sällsynta idag och finns mest i inbäddade system med mycket begränsade resurser.