Linux Kernel di inattività tick mangiatore (o quello che sarà task_struct corrente quando la CPU è 0%)
-
01-10-2019 - |
Domanda
Quale processo sarà indicato dal puntatore "corrente" in kernel Linux, quando il carico della CPU è 0% e non v'è alcun processo di ready-to-run?
Si consideri la situazione senza alcun risparmio energetico. Qual è il nome di questo processo? Credo che compito con PID 0 sarà in esecuzione e il codice sarà
rep nop
o
HLT
Soluzione
attuale sarà pid 0, swapper processo o l'ultimo processo, che ha chiesto il blocco chiamata di sistema?
http://oreilly.com/catalog/linuxkernel/chapter/ch10.html
Si noti che se la lista è runqueue vuoto (non esiste alcun processo eseguibile Fatta eccezione per swapper), il ciclo non è inseriti e punti successivi a INIT_TASK. Inoltre, se tutti i processi elenco runqueue hanno una priorità inferiore o uguale alla priorità di prev, senza interruttore processo avrà luogo e il vecchio processo continuerà ad essere eseguito.