Несколько вопросов, подобных этому, заданы здесь, но я не смог ответить на следующий вопрос: когда ядро планирует процесс P для запуска на процессоре S, как планировщик сигнализирует об этом? Благодарю.linux kernel scheduler
1
A
ответ
2
Ядро имеет очередь на процессор. Перемещение задачи из одного ядра в другое предполагает удаление его из одной очереди и перенос его в другую. См., Например, http://lxr.linux.no/#linux+v2.6.37/kernel/sched.c#L5859.
0
Посмотрите на sched_getaffinity()
и pthread_getaffinity_np()
.
+0
Но это в пользовательском пространстве, делает ядро планировщика делать то же самое? –
-1
В нескольких сценариях ядро связывает процессор с задачей.
1), когда задача раздвоенный 2), когда задача проснулся после сна 2), когда задача перенесенного
Да, это, вероятно, то, что мне нужно было знать. –