Junior — Middle
Jak operační systém rozděluje provádění dvou procesů spuštěných na jednom procesorovém jádře?
sobes.tech AI
Odpověď od AI
Operační systém používá plánovač (scheduler) k rozdělení času procesoru mezi více procesů, i když má pouze jedno jádro.
Hlavní princip je multitasking s dělením času (time slicing). Procesy dostávají kvantum času (time slice), během kterého jsou vykonávány. Po uplynutí kvanta plánovač pozastaví aktuální proces a přepne na jiný.
To se děje velmi rychle (milisekundy), vytvářející iluzi současného provádění.
V Go, kromě OS, existuje vlastní plánovač gorutin, který rozděluje vykonávání lehkých vláken (gorutin) uvnitř jednoho nebo více systémových vláken, ale na úrovni procesů je to již úkol OS.