我目前使用的是 Mac,无法在另一台 Mac 上尝试,所以我不确定确切的进程号是否会改变。我编写了一个 C 程序,它为我提供了进程列表,它在这两个问题上遇到了困难,并返回了我“?”反而。我使用命令行命令 ps aux 列出了系统上的所有进程,与其他进程不同的是,进程 11558 和 16290 的路径都放在括号中,并且非常奇特。这里发生了什么?什么是路径 (dd) 和 (security_authra)?有没有办法可以访问“实际”路径?
谢谢
最佳答案
当进程更改其命令行参数时,就会发生这种情况。例如在我的系统上我有这个过程:
$ ps aux -q 1478
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
rich 1478 0.0 0.0 99208 3340 ? S 19:14 0:00 (sd-pam)
但是 ps
只是报告 /proc
中的命令行参数:
$ strings /proc/1478/cmdline
(sd-pam)
但是仍然可以找到进程正在运行的可执行文件:
$ sudo ls -l /proc/1478/exe
lrwxrwxrwx. 1 root root 0 Jun 5 16:19 /proc/1478/exe -> /usr/lib/systemd/systemd
关于c - 使用 ps aux,进程 11558 和 16290 的路径位于括号中 : "(dd)" and "(security_authra)". 这些是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44337984/