Linux - por que os nomes dos processos começam com a letra k?

1

Ao usar o comando top em um servidor linux, posso ver vários processos raiz começando com a letra k , como por exemplo kthreadd , kblockd , khelper , kacpi_notify , ksmd , kswapd0 , khugepaged , ksmd e muito mais.

Eu assumo que não é uma coincidência; o que o k representa aqui?

    
por Nicolas C 10.06.2016 / 17:31

1 resposta

5

Esses não são processos, mas tópicos do kernel :

Threads are "light weight processes" (LWPs). [...]

[...]

Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.

Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.

Leitura relacionada

    
por 10.06.2016 / 17:34

Tags