Разница между poll_s и ep_poll WCHAN в выпуске ps

Когда я ps -elf|grep python например, в свою систему, я вижу следующее:

 1 S 1000 6020 6008 0 80 0 - 9914 poll_s Jul12 ? 00:00:01 python manage.py run_gunicorn -t 3600 -w 8 -b 127.0.0.1:8000 0 S 1000 22496 22491 0 80 0 - 10477 ep_pol 12:32 ? 00:00:10 /var/lib/mywebapp/env/bin/python /var/lib/mywebapp/env/bin/pserve development.ini 

В чем разница между poll_s и ep_pol ?

Чтобы отобразить немного больше имени функции WCHAN , вы можете использовать, например:

 ps -e -o pid,wchan=WIDE-WCHAN-COLUMN -o comm 

Это покажет вам, что две функции: ep_poll и poll_schedule_timeout .

Первая из них находится в fs/eventpoll.c в ядре и связана с установкой epoll , в частности, с системным вызовом epoll_wait .
Другой находится в fs/select.c и будет использоваться как для «простого» poll системного вызова, так и для select .

Таким образом, они оба «ждут чего-то, что связано с событиями», ожидания, но для разных системных объектов.