Назад к вопросам
Junior — Middle
87
Каким образом операционная система распределяет выполнение двух процессов, запущенных на одном процессорном ядре?
Ответ от нейросети
sobes.tech AI
Операционная система использует планировщик (scheduler) для распределения времени процессора между несколькими процессами, даже если у неё только одно ядро.
Основной принцип — многозадачность с разделением времени (time slicing). Процессы получают квант времени (time slice), в течение которого они выполняются. По истечении кванта планировщик приостанавливает текущий процесс и переключается на другой.
Это происходит очень быстро (миллисекунды), создавая иллюзию одновременного выполнения.
В Go, помимо ОС, есть собственный планировщик горутин, который распределяет выполнение лёгких потоков (горутин) внутри одного или нескольких системных потоков, но на уровне процессов это уже задача ОС.