Sobes.tech
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.