代码之家  ›  专栏  ›  技术社区  ›  Shouvik

需要top的源代码并在linux中找到top和/proc/目录之间的连接

  •  3
  • Shouvik  · 技术社区  · 14 年前

    我想要top的源代码,但是我在任何地方都找不到,我想要更多关于/proc目录到底包含什么的信息。我看到它有一系列文件夹,标记为1,2,3,4。。。。在这些文件夹中似乎有一组一致的文件。我想知道这些是否是目前机器上运行的进程的目录。

    谢谢你的帮助

    2 回复  |  直到 14 年前
        2
  •  1
  •   Joril    14 年前

    顶部是 procps

        3
  •  1
  •   CAoT    4 年前

    procfs基本上是系统和进程信息的文件抽象。

    编号的文件夹当前正在运行与文件夹名称相关的PID的进程。


    您可以跟踪top或任何其他进程读取的文件

    strace -e open top
    

    或者在覆盆子上

    strace -e openat top
    

    或者更一般的grep

    strace top | grep open
    

    例如,你得到输出

    ...
    openat(AT_FDCWD, "/proc/7353/stat", O_RDONLY|O_LARGEFILE) = 8
    openat(AT_FDCWD, "/proc/7353/statm", O_RDONLY|O_LARGEFILE) = 8
    ...
    

    在这里你可以看到,上面打开了文件

    /过程/[pid]/stat

    它包含了一些关于这个过程的信息

    推荐文章