如何检查进程是否正在运行或者被锁或 I/O 阻塞?

如何检查进程是否正在运行或者被锁或 I/O 阻塞?

报告了 2 个脚本实例ps
如何在命令行中查看其中一个(以及哪个)是否在 I/O 或文件锁上被阻止?

答案1

当您执行 ps -aux 时,在 STAT 列中,您可以看到进程状态代码。

摘自 man ps:

进程状态代码这里是 s、stat 和 state 输出说明符(标题“STAT”或“S”)将显示用于描述进程状态的不同值:

           D    uninterruptible sleep (usually IO)
           I    Idle kernel thread
           R    running or runnable (on run queue)
           S    interruptible sleep (waiting for an event to complete)
           T    stopped by job control signal
           t    stopped by debugger during the tracing
           W    paging (not valid since the 2.6.xx kernel)
           X    dead (should never be seen)
           Z    defunct ("zombie") process, terminated but not reaped by its parent

   For BSD formats and when the stat keyword is used, additional characters may be displayed:

           <    high-priority (not nice to other users)
           N    low-priority (nice to other users)
           L    has pages locked into memory (for real-time and custom IO)
           s    is a session leader
           l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
           +    is in the foreground process group

相关内容