ps输出中poll_s和ep_poll WCHAN的区别

Use*_*007 6 linux process 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
Run Code Online (Sandbox Code Playgroud)

poll_s和 和有ep_pol什么区别?

Mat*_*Mat 5

要显示更多的WCHAN函数名称,您可以使用例如:

ps -e -o pid,wchan=WIDE-WCHAN-COLUMN -o comm
Run Code Online (Sandbox Code Playgroud)

这将向您展示两个函数是ep_pollpoll_schedule_timeout

第一个在fs/eventpoll.c内核中,与epoll工具有关,特别是与epoll_wait系统调用有关。
另一个在fs/select.c并将用于“普通”poll系统调用和select.

所以它们都是“等待 I/O 相关的事情发生”的等待状态,但是对于不同的系统设施。

  • 我认为 `ps -elf` 给出的输出格式保证了 Linux。 (2认同)