Junior — Middle
Hogyan osztja el az operációs rendszer két, ugyanazon processzormagon indított folyamat végrehajtását?
sobes.tech MI
Válasz az MI-től
A működési rendszer egy ütemezőt (scheduler) használ a CPU idejének elosztására több folyamat között, még akkor is, ha csak egy magja van.
Az alapelv a többfeladatos működés időmegosztással (time slicing). A folyamatok időkvantumot (time slice) kapnak, amely alatt futnak. Az időkvantum lejárta után az ütemező megszakítja a jelenlegi folyamatot, és másra vált.
Ez nagyon gyorsan történik (milliszekundumok), így jön létre a párhuzamos végrehajtás illúziója.
A Go-ban, a rendszeroperációs rendszer mellett, van saját goroutine ütemezője, amely elosztja a könnyű szálak (goroutine-ok) végrehajtását egy vagy több rendszer szálon belül, de a folyamat szintjén ez már az OS feladata.