概述
- 在linux 中,每个执行的程序都称为一个进程,每一个进程都分配一个ID号
- 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程,例如www服务器
- 每个进程都可能以两种方式存在的,前台与后台。所谓前台进程就是用户目前的屏幕上可以进行操作的,后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行
- 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束
- 进程与线程
- 进程:就是正在执行的程序
- 线程
- 轻量级的进程
- 进程有独立的地址空间,线程没有
- 线程不能独立存在,它是由进程创建
- 相对讲,线程耗费的CPU和内存要小于进程
进程的管理
ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的情况,可以不加任何参数,显示详细的进程信息
- ps ‐a:显示当前终端的所有进程信息
- ps ‐u:以用户的格式显示进程信息
- ps ‐x:显示后台进程运行的参数
ps显示的信息选项:
字段 |
说明 |
PID |
进程识别号 |
TTY |
终端机号 |
TIME |
此进程所消CPU时间 |
CMD |
正在执行的命令或进程名 |
终止进程kill/killall
若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程,使用kill命令来完成此项任务
终止某个进程:kill 进程号
【案例】kill 16251:终止进程号为16251的进程
【案例】kill -9 16251:因为有些进程会捕捉某些信号,如果直接不能结束进程可以用“-9”传送信息
killall:杀死同名的所有进程
动态监控进程
top命令与ps命令很相似。它们都用来显示正在执行的进程。top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的进程
- 监视特定用户
- top:输入此命令,按回车键,查看执行的进程
- u:然后输入“u”回车,再输入用户名,即可
- 终止指定的用户
- top:输入此命令,按回车键,查看执行的进程
- k:然后输入“k”回车,再输入要结束的进程ID号
- 指定系统状态更新的时间
- top ‐d 10:指定系统更新进程的时间为10秒
top显示选项解释
- 1:52,表示系统启动了多久
- 2 user,用户数
- load average:0.11 0.06 0.05,当前系统负载情况,一般来说,参数越小,系统运行的越轻松,当平均数>0.6时,系统就很紧张了
- Tasks: 进程数
- 0 zombie,僵尸进程数,相当于这个进程没有用了,还占用资源,比如父进程来不及收回子进程
- Mem,内存
- Swap,类似于虚拟内存