Come interpretare i nomi dei thread di kworker?


15

Su Linux 3.11.0-13-generico in esecuzione su una scheda core hexa Xeon X5650 a doppio socket, htopmostra diversi thread di kworker. Ordinati per nome (ho modificato un po 'il risultato che sto mostrando qui per avere i thread sul core 2 prima di quelli sul core 10), ecco il risultato:

kworker/0:0H
kworker/0:1
kworker/0:2
kworker/1:0
kworker/1:0H
kworker/1:1
kworker/2:0
kworker/2:0H
kworker/2:1
.....
kworker/11:0
kworker/11:0H
kworker/11:1
kworker/u48:0
kworker/u49:4
kworker/u49:5
kworker/u50:1
kworker/u50:2
.......

I thread i cui nomi iniziano con un numero vengono aggiunti al core con lo stesso numero. Quindi il primo numero è il nucleo che esegue il thread e mi chiedo quale sia il simbolo dopo :( 0o 0Ho 1) per questi thread?

Mi chiedo anche qual è il significato dei uXX:Ysimboli?

Ho solo una vaga conoscenza di ciò che fanno i thread di Kworker: gestiscono eventi asincroni causati da chiamate di sistema che eseguono I / O. Sono documentati da qualche parte?

Risposte:


20

Secondo kernel.org , la sintassi è kworker/%u:%d%s (cpu, id, priority). Il udesigna una CPU speciale, la CPU non legato, il che significa che il processo kthread è attualmente legato.

I lavoratori del workqueue che hanno un valore negativo negativo hanno 'H' postfissato sui loro nomi. ( fonte )


Quindi tutti i kworkerprocessi nella domanda del PO non hanno priorità stabilite?
Ken Sharp,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.