Linux-Kernel im Leerlauf tick Fresser (oder was Strom task_struct sein, wenn die CPU 0% ist)
-
01-10-2019 - |
Frage
Was Prozess wird durch "aktuelle" Zeiger in Linux-Kernel hingewiesen werden, wenn die CPU-Last 0% ist und es gibt keinen ready-to-run-Prozess?
Betrachten Situation ohne Energieeinsparung. Wie lautet der Name dieses Prozesses? Ich denke Aufgabe mit PID 0 ausgeführt werden soll, und der Code wird
rep nop
oder
HLT
Lösung
wird die aktuelle pid 0, Prozess Swapper oder den letzten Prozess sein, die syscall genannt blockiert?
http://oreilly.com/catalog/linuxkernel/chapter/ch10.html
Beachten Sie, dass, wenn die Runqueue Liste leer (kein lauffähiges Prozess existiert Mit Ausnahme von Swapper), ist der Zyklus nicht eingegeben und im nächsten Punkt init_task. Außerdem, wenn alle Prozesse in der Runqueue Liste hat eine Priorität weniger als die oder gleich der Priorität der prev, kein Prozess Schalter erfolgt und der alte Prozess wird auch weiterhin sein ausgeführt wird.