683 字
3 分钟
linux之进程
ps,查看进程。
ps aux ,详细查看进程。
ps 默认只显示:当前用户当前终端相关的进程ps aux会显示系统中几乎所有用户、所有终端以及没有终端的进程,并且信息更加详细。
参数 作用a 显示其他用户的进程u 使用详细的用户格式显示x 显示没有控制终端的进程
你这里看到多个 /bin/bash:/bin/bash/bin/bash/bin/bash/bin/bash
是因为这个容器中建立过多个终端会话:pts/0pts/1pts/2pts/3
每打开一个终端,通常就会启动一个新的 bash 进程。
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND列 含义USER 进程属于哪个用户PID 进程编号%CPU CPU 使用率%MEM 内存使用比例VSZ 虚拟内存大小RSS 实际占用的物理内存TTY 进程属于哪个终端STAT 进程当前状态START 进程启动时间TIME 累计使用 CPU 的时间COMMAND 启动进程的命令
student 69 0.0 0.0 4588 3840 pts/3 Ss 15:09 0:00 /bin/bash
表示:
用户 student 在 pts/3 终端运行了一个 PID 为 69 的 Bash 进程。
什么是进程?
可以这样理解:
- 程序:硬盘上的代码文件
- 进程:程序运行起来后的实例
例如:
/bin/bash是一个程序文件。
当打开终端运行它时,系统会创建一个 Bash 进程。
同一个程序可以同时产生多个进程。例如同时打开四个终端,就可能有四个 Bash 进程,每个进程都有不同的 PID。
PID 是 Process ID,也就是进程编号。
例如:
PID 69表示这个进程的编号是 69。系统通过 PID 区分和管理进程。
查看指定 PID:
ps -p 69查看更详细的信息:
ps -fp 69结束指定进程:
kill 69强制结束:
kill -9 69一个进程可以创建另一个进程。
例如你在 Bash 中执行:
ps关系大致为:
bash└── ps此时:
bash是父进程ps是子进程
查看父进程 PID:
ps -o pid,ppid,cmd其中:
PID:自己的进程号PPID:父进程的进程号
查看树状关系:
ps -ef --forest或者:
pstree -pSTAT 一列中常见字母:
| 状态 | 含义 |
|---|---|
R | 正在运行或等待 CPU |
S | 正在休眠,等待某个事件 |
D | 不可中断休眠,常见于磁盘 I/O |
T | 已暂停 |
Z | 僵尸进程 |
s | 会话首进程 |
+ | 当前终端的前台进程组 |
Ss+可以理解为:
S:当前在等待输入s:它是会话首进程+:属于当前终端的前台进程组
R+表示该进程正在运行,并且位于终端前台。
- 版权声明:本文由 余林阳 创作,转载请注明出处。
喜欢这篇文章吗?
点击右侧按钮为文章点赞,让更多人看到!
在下余林阳