Linux ps命令
ps的命名是两个单词的缩写Process Status进程状态的意思,ps列出系统中当前正在运行的进程,ps返回的结果是执行ps这个命令的那个时间点的那些进程,ps不能动态的展示进程的信息,如果需要一直查看这些进程的信息,你应该需要top命令。
进程状态
/*
* The task state array is a strange "bitmap" of
* reasons to sleep. Thus "running" is zero, and
* you can test for combinations of others with
* simple bit tests.
*/
static const char * const task_state_array[] = {
"R (running)", /* 0 */
"S (sleeping)", /* 1 */
"D (disk sleep)", /* 2 */
"T (stopped)", /* 4 */
"t (tracing stop)", /* 8 */
"X (dead)", /* 16 */
"Z (zombie)", /* 32 */
};
这是linux内核源码,通过这个源码我们可以知道进程有七个状态,但往往通过ps查看进程的状态可以查看到许多未知的内容比如
- O:进程正在处理器运行
- I:空闲状态
- B:进程正在等待更多的内存页
顺便说一下上边的disk sleep也就是D是不可中断的深度睡眠意思
如何查看
ps -aux
即可查看这些状态