海牛部落 Linux 系列教程:(6) 进程管理

教程 青牛 ⋅ 于 2017-09-22 15:29:20 ⋅ 最后回复由 wdy 2022-05-19 20:50:47 ⋅ 15992 阅读

在Linux系统上运行的任何东西,每一个用户的工作、每一个系统监控程序等等都是以进程的形式运行的。因此进程管理是Linux系统管理非常重要的一个方面。在这一章,我们将详细介绍如何管理进程:

■ 如何查找系统中运行的进程。
■ 找出扰乱系统的进程。
■ 如何终止一个进程。
■ 如何管理进程。

1 什么是进程

1.1 进程的定义
进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放。可以认为进程是一个程序的一次执行过程。

1.2 进程与程序
1)像bin目录下有许多二进制可执行文件,这些文件放在那就是程序。
2)如果执行了某个可执行文件,这个运行的程序就叫做进程,进程是OS(操作系统)任务调度基本单元。
3)程序只占磁盘空间,不占系统资源;进程是将程序加载到内存中,运行过程是占用系统资源的。一个程序可以启动多个进程。
4)进程是有生命周期的,每个进程都有一个ID(PID),而且有一个父进程ID(PPID)。
1.3 调用过程

file

程序都会藉由父进程以复制 (fork) 的方式产生一个一模一样的子进程, 然后被复制出来的子进程再以 exec 的方式来执行实际要进行的程序,最终就成为一个子进程的存在。下图是对调用过程的细节描述:

file

1.4 进程状态

file

2 进程管理

2.1 查看进程:ps
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程.。

要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。

命令格式:

file

命令功能:
用来显示当前进程的状态。

file

file

file

file

其中各列的内容意思如下:
UID :用户ID、但输出的是用户名
PID :进程的ID
PPID :父进程ID
C :进程占用CPU的百分比
STIME :进程启动的时间
TTY :该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
TIME:进程已经占用的CPU的时间
CMD :命令的名称和参数
2.2 实时监控:top

回复帖子,然后刷新页面即可查看隐藏内容

版权声明:原创作品,允许转载,转载时务必以超链接的形式表明出处和作者信息。否则将追究法律责任。来自海汼部落-青牛,http://hainiubl.com/topics/171
回复数量: 73
暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter