Sobes.tech
Junior — Middle

Wie verteilt das Betriebssystem die Ausführung von zwei Prozessen, die auf einem einzigen Prozessor-Kern gestartet wurden?

sobes.tech KI

Antwort von AI

Операционная система использует планировщик (scheduler) для распределения времени процессора между несколькими процессами, даже если у неё только одно ядро.

Основной принцип — многозадачность с разделением времени (time slicing). Процессы получают квант времени (time slice), в течение которого они выполняются. По истечении кванта планировщик приостанавливает текущий процесс и переключается на другой.

Это происходит очень быстро (миллисекунды), создавая иллюзию одновременного выполнения.

В Go, помимо ОС, есть собственный планировщик горутин, который распределяет выполнение лёгких потоков (горутин) внутри одного или нескольких системных потоков, но на уровне процессов это уже задача ОС.