Junior — Middle
De que forma o sistema operativo distribui a execução de dois processos iniciados num mesmo núcleo de processador?
sobes.tech IA
Resposta da IA
O sistema operativo usa um agendador (scheduler) para distribuir o tempo de CPU entre vários processos, mesmo que tenha apenas um núcleo.
O princípio básico é a multitarefa com divisão de tempo (time slicing). Os processos recebem um quantum de tempo (time slice), durante o qual são executados. Após o quantum, o agendador pausa o processo atual e troca para outro.
Isso acontece muito rapidamente (milissegundos), criando a ilusão de execução simultânea.
No Go, além do sistema operativo, há um agendador próprio para goroutines, que distribui a execução de threads leves (goroutines) dentro de uma ou várias threads do sistema, mas ao nível de processos, isso já é tarefa do sistema operativo.