Menu Close

进程和进程管理命令:ps,kill,top,df,free,nice命令

什么是进程(process)?

程序执行起来就被成为进程。linux下触发任何一个事件,系统都会将它定义成一个进程,并且给予这个进程一个 ID,称为 PID (Process ID),同时依据启发这个进程的用户与相关属性关系,给予这个 PID 一组有效的权限设置。

进程(process)与程序 ( program)

执行一个程序或指令,就可以触发一个事件而取得一个 PID。进程就是程序的运行,一个程序可以包括很多进程。

不同的用户运行程序,程序所拥有的权限也是不同的,概念如下图:

系统通过这个 PID 来判断该 process 是否具有权限进行工作的。

程序与进程总结:

  • 程序 program:通常为 binary program,实体文件的形态存在
  • 进程 process:程序被触发后,执行者的权限与属性、程序的程序代码与所需数据等都会被加载到内存中,操作系统并给予这个内存单元一个标识符(PID),可以说,进程就是一个正在运行的程序

进程的分类

  • 前台进程:它们在屏幕上运行,需要用户输入。 例如Office程序
  • 后台进程:它们在后台运行,通常不需要用户输入。 例如防病毒。

运行前台进程

要启动前台进程,可以从仪表板运行它,也可以从终端运行它。使用终端时,必须等待,直到前台进程运行。

运行后台进程

如果从终端启动前台程序/进程,则只有在程序启动并运行后,才能在终端上工作。

但是,如果程序需要处理大量数据密集型任务,系统需要大量的处理能力,甚至可能需要数小时才能完成。 为避免这种情况,可以运行该程序并将其发送到后台,以便终端仍然可用。

[bg]

可以把运行的程序转入后台

[fg jobname]

可以把正在后台运行的进程转入前台。

停止一个命令用 ‘ctrl +z’ 命令

重要的process管理命令

top

top是系统管理员经常使用的命令。该命令显示占用资源最多的进程名称。退出可以用 ‘ctrl +c’ 命令或’q’ 键盘推出。

终端将显示很多重要信息。

The terminology follows:

Field Description Example 1 Example 2
PID 每一个进程的PID 1907 4725
User 每一个进程的所有者 zhihuixinpian Root
PR 优先权 20 20
NI 一个任务的Nice值 0 0
VIRT 占用虚拟空间 (kb) 1775 75972
RES 占用的资源 (kb) 100 51
SHR 共享内存 (kb) 28 7952
S Status (状态)

There are five types:(有五个类型)

‘D’ = uninterruptible sleep (不可打断的睡眠)

‘R’ = running (正在运行)

‘S’ = sleeping (睡觉)

‘T’ = traced or stopped (停止的)

‘Z’ = zombie (僵尸)

S R
%CPU % of CPU time (占有CPU 百分比) 1.7 1.0
%MEM Physical memory used (占用内存) 10 5.1
TIME+ Total CPU time (CPU 时间 ) 5:05.34 2:23.42
Command Command name (命令 名) gnome Web Co

PS

ps也是系统管理员常用的命令。PS代表命令状态“process status”。该命令和“top”命令类似,但是显示方式有所不同。

检查一个用户的所有进程,可以使用命令

 ps ux 

如果检查一个一个单一进程的状态,可以使用命令:

 ps PID 

Kill

该命令终结一个进程,具体语法:

 kill PID

彻底杀死一个进程:

 kill -9 PID

这个命令一般和 top 一起使用,发现哪一个进程消耗资源太多,就kill它。一般网站号称提供无限空间和带宽,但是如果用户的程序占用太多资源的时候,管理员很容易用TOP和KILL命令发现并终止它。

但如果想终止一个具体进程,可以使用下列命令发现该进程PID

 pidof Process name 

NICE

Linux一次可以运行许多进程,这可能会降低某些高优先级进程的速度,并导致性能下降。为避免这种情况,可以根据需求确定进程的优先级。

优先级在Linux中称为Niceness,其值介于-20到19之间。Niceness指数越低,该任务的优先级就越高。

所有进程的默认值为0。

要使用默认值以外的niceness值启动进程,请使用以下语法:

 nice -n 'Nice value' processname

如果该进程正在运行,可以使用重新NICE命令:

 renice 'nice value' -p 'PID'

DF

该命令报告所有文件系统上的可用磁盘空间(硬盘)。

如果您希望上述信息以可读格式显示,请使用以下命令

 df -h

Free

该命令显示已经使用和尚未使用的内存空间。

 

[free -g] 输出显示 GB

[free -m] 输出显示MB

摘要:

  • 任何正在运行的程序或命令都称为进程
  • 进程可以在前台或后台运行
  • 进程的优先级索引在Linux中称为Nice。 其默认值为0,并且可以在20到-19之间变化,Niceness 指数越低,该任务的优先级越高
命令 描述
bg 把进程送入后台运行
fg 把后台停止运行的进程导入前台运行, 停止一个命令用 ‘ctrl +z’ 命令
top 所有正在运行的进程
ps 一个用户的所有进程
ps PID 特定进程的状态
pidof 显示一个进程的PID
kill PID 终止一个进程
nice 确定一个程序的niceness值
renice 重新给一个正在运行的进程新的优先值
df 列出所有文件系统上的可用磁盘空间(硬盘)
free 该命令显示已经使用和尚未使用的内存空间
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in Linux 教程

Related Posts