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