Linux 进程和计划任务管理

程序 进程 线程

程序:保存在外部存储介质(如硬盘,光盘)中的可执行机器代码和数据的静态集合。

进程:在CPU及内存中处于动态执行状态的计算机程序。

线程:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。

如下图中,宿主机开启一个虚拟机就是一个进程,而虚拟机正常运行过程中,又会开启开启很多服务,这些服务对宿主机来说就是线程,一个进程可包含多个线程。

Linux 进程和计划任务管理

查看进程

ps--查看静态的进程统计信息

ps命令是Linux系统中最为常用的经常查看工具,主要用于显示包含当前运行的各进程完整信息的静态快照

a:显示当前终端下所有的进程信息

u: 使用以用户为主的格式输出进程信息

x:显示当前用户在所有终端下的进程信息

-e:显示系统内的所有进程信息

-l:使用长格式显示进程信息

-f:使用完整的格式显示进程信息

ps aux命令
Linux 进程和计划任务管理

其中各项含义如下所示

Linux 进程和计划任务管理

ps -elf

Linux 进程和计划任务管理

与aux显示相比,多了几个加载项,含义如下所示

PPID :该进程的父进程ID号,0即使没有父进程

C:CPU占用率

PRI:用户状态的进程优先级,数值越低,,级别越高

NI:内核状态的优先级,数值越低,级别越高

ADDR:运行状态,- 表示运行中

WCHAN:进程在内核中的名称

top-查看进程动态信息

top命令将会在当前终端以全屏交互式的界面显示进程排名,及时跟踪包括cpu,内存等系统资源占有情况,默认情况下每三秒刷新一次,其作用类似windows下的任务管理器。

Linux 进程和计划任务管理

含义如下

Linux 进程和计划任务管理

pgrep-查询进程信息

当使用ps查询某个进程PID信息时,往往需要结合grep命令对输出结果进行过滤,这样使用非常不方便,而pgrep命令则正是用来查询特定进程信息的专用工具。

常用选项

-l 显示进程名

-u 查询特定用户

-t 查询在特定终端运行的进程

Linux 进程和计划任务管理
Linux 进程和计划任务管理

pstree-查看进程树

pstree命令可以输出Linux系统中各进程的树形结构,更加直观地判断出各进程之间的相互关系

常用选项

-a 列出完整的而命令信息

-u 指定用户

-p 列出PID号

Linux 进程和计划任务管理

Linux 进程和计划任务管理

控制进程

启动进程

1 手工启动

(1) 前台启动

进程在前台运行时,用户必须等到该进程执行结束并退出才能继续输入其他命令

Linux 进程和计划任务管理
(2)后台启动

进程在后台运行,用户可以继续在当前终端输入指令,无需等待该进程结束,适用于运行耗时较长的操作,在执行命令末尾加上&即可

Linux 进程和计划任务管理

2 调度启动进程

调度启动进程通过at crontab命令进行设置,at命令用于设置一次性的计划任务,crontab用于设置周期性运行,调度启动的计划任务在后台运行,不会占用客户的命令终端

(1)at

Linux 进程和计划任务管理

atq

查询计划任务,已执行的任务不会出现在列表中

Linux 进程和计划任务管理

atrrm

删除at任务,删除后任务不会执行,但执行过的任务无法删除
Linux 进程和计划任务管理

(2)crontab
选项

-e 编辑计划任务列表

-u 指定计划任务属于哪个用户,默认时针对当前用户

-l 列表显示计划任务

-r 删除计划任务列表

配置格式:分,时,日,月,周 如下所示

Linux 进程和计划任务管理

Linux 进程和计划任务管理

Linux 进程和计划任务管理

进入后模式与vim相同,直接输入即可

Linux 进程和计划任务管理

改变进程运行方式

CTRL+Z:将进程挂起,调入后台并停止执行

jobs-l 查看后台进程

Linux 进程和计划任务管理

fg:将挂入后台的命令调入前台执行

bg:在后台暂停执行的命令,继续在后台执行

终止进程执行

当用户在前台执行某个进程时,ctrl+c组合键可强制中断,也可使用终止工具kill,killall,pkill

kill

Linux 进程和计划任务管理

对于无法正常终止的进程,必要时结合-9强行终止

killall

Linux 进程和计划任务管理

pkill

使用此命令可以根据进程的名称,运行该进程的用户,进程所在的终端等多种属性终止特定进程

常用选项

-U 指定用户

-t 指定终端

Linux 进程和计划任务管理

Linux 进程和计划任务管理

猜你喜欢

转载自blog.51cto.com/14449536/2432784