图文详解和实验——进程和计划任务管理
其他
2021-02-09 10:11:46
阅读次数: 0
一、查看进程
1、程序和进程的关系
程序 |
保存在硬盘、光盘的介质中的可执行代码和数据 |
文件中静态保存的代码 |
进程 |
在CPU及内存中运行的程序代码 |
动态执行的代码 |
父、子进程(每个程序可以创建一个或者多个进程) |
2、查看进程静态信息:PS
①、方法一:ps aux
a |
显示终端上的所有进程,包括其他用户的进程 |
u |
表示列出进程的用户 |
x |
显示所有终端的进程 |
各个名词的解释 |
USER |
进程的用户 |
PID |
进程的ID |
%CPU |
进程占用的CPU百分比 |
%MEM |
进程占用的内存百分比 |
VSZ |
进程占用的虚拟内存量(KB) |
RSS |
进程占用的物理内存量(KB) |
TTY |
启动进程的终端名,不是从终端启动的进程则显示为 ? |
STST(进程状态) |
D:不可中断的休眠状态 |
R:正在运行状态 |
S:处于休眠状态,可被唤醒 |
T:停止状态,可能是在后台暂停或进程处于跟踪调试状态 |
Z:僵尸进程,进程已经终止,但是部分程序还在内存当中 |
START |
进程被触发启动时间 |
TIME |
进程实际使用CPU运行的时间 |
COMMAND |
进程的启动命令 |
②、方法一:ps -elf
-e |
显示系统内的所有进程信息 |
-l |
使用长格式显示进程信息 |
-f |
使用完整的格式显示进程信息 |
各个名词的解释 |
F |
内核分配给进程的系统标记 |
S |
进程的状态 |
UID |
启动这些进程的用户 |
PID |
进程的进程ID |
PPID |
父进程的进程号(如果该进程是由另一个进程启动的) |
C |
进程生命周期中的CPU利用率 |
PRI |
进程的优先级(越大的数字代表优先级越低) |
NI |
谦让度值用来参与决定优先级 |
ADDR |
进程的内存地址/td> |
SZ |
假如进程被换出,所需交换空间的大致大小 |
WCHAN |
若该进程在睡眠,则显示睡眠中的系统函数名 |
STIME |
进程启动时的系统时间 |
TTY |
进程启动时的终端设备 |
TIME |
运行进程需要的累计CPU时间 |
CMD |
进程的启动命令 |
③、僵尸进程
3、查看进程动态信息:top
①进程动态行
第一行:任务队列信息 |
20:58:13 |
系统时间 |
up 18:01 |
系统已运行时长 |
2 users |
当前登录用户数 |
load average: 0.00, 0.01, 0.05 |
系统负载,即单位时间内系统处理的任务数,后面三个数值分别为1分钟、5分钟、15分钟前到现在的平均值 |
第二行:进程信息 |
Tasks |
总进程数 |
running |
正在运行的进程数 |
sleeping |
休眠的进程数 |
stopped |
终止的进程数 |
zombie |
僵死的进程数 |
第三行:CPU信息 |
us |
用户占用 |
sy |
内核占用 |
ni |
优先级调度占用 |
id |
空闲CPU(要了解空闲CPU百分比,主要看 %id 部分) |
wa |
I/O 等待占用 |
hi |
硬件中断占用 |
si |
软件中断占用 |
st |
虚拟化占用 |
第四行:内存信息 |
total |
总内存空间 |
free |
空闲内存 |
used |
已用内存 |
buff/cache |
物理内存和交换内存的缓冲区总和 |
第五行:交换空间的信息 |
total |
总交换空间 |
free |
空闲交换空间 |
used |
已用交换空间 |
avail Mem |
可用物理空间 |
②、进程信息区
进程信息区名词解释 |
PID |
进程ID |
USER |
进程所有者的用户名 |
PR |
优先级 |
NI |
谦让值。负值表示高优先级,正值表示低优先级 |
VIRT |
进程使用的虚拟内存大小,单位kb |
RES |
进程使用的物理内存大小,单位kb |
SHR |
共享内存大小,单位kb |
S |
进程状态 |
%CPU |
上次更新时间到现在的CPU占用百分比 |
%MEM |
进程使用的物理内存百分比 |
TIME+ |
进程使用的CPU时间总计,单位1/100秒 |
COMMAND |
命令名/命令行 |
③top常用命令
P |
根据CPU使用百分比大小进行排序 |
M |
根据驻留内存大小进行排序 |
N |
根据启动时间进行排序 |
c |
切换显示命令名称和完整命令行 |
h |
可以获得top程序的在线帮助信息 |
k |
根据提示输入指定进程的PID号并按Enter键终止对应的进程 |
q |
退出top程序 |
数字 1 |
显示CPU个数和状态 |
4、查看进程信息:pgrep
5、查看进程树:pstree
选项 |
-a |
显示完整信息 |
-u |
列出对应用户名 |
-p |
列出对应PID号 |
参数 |
teacher |
指定用户 |
二、控制进程
1、手工启动
2、调度启动
3、进程的前后台调度
①、Ctrl+Z组合键
②、查看处于后台的任务:jobs
③、恢复挂起命令到前台执行:fg
4、终止进程运行
①、Ctrl+C组合键
②、kill、killall命令
kill |
终止指定PID号的进程 |
killall |
终止指定名称相关的所有进程 |
选项 -9 |
用于强制终止 |
③、根据特定条件终止相应进程:pkill
-U |
根据进程所属的用户名终止相应进程 |
-T |
根据进程所在的终端终止相应进程 |
三、计划任务管理
1、一次性计划任务:at
2、周期性任务设置:crontab
按照预先设置的时间周期(分钟、小时、天、月、周)重复执行用户指定的命令操作 |
属于周期性计划任务 |
主要设置文件 |
全局配置文件,位于文件:/etc/crontab |
系统默认的设置,位于目录:/etc/cron.*/ |
用户自定义的设置,位于文件:/var/spool/cron/用户名 |
①、管理crontab计划任务
②、任务配置的格式
字段 |
说明 |
分钟 |
取值为0~59之间的任意整数 |
小时 |
取值为0~23之间的任意整数 |
日期 |
取值为1~31之间的任意整数 |
月份 |
取值为1~12之间的任意整数 |
星期 |
取值为0~7之间的任意整数,0或7代表星期日 |
命令 |
要执行的命令或程序脚本 |
时间数值的特殊表示方法 |
* |
表示该范围内的任意时间 |
, |
表示间隔的多个不连续时间点 |
- |
表示一个连续的时间范围 |
/ |
指定间隔的时间频率 |
3、实验:crontab计划
①、需求
②、开始
③、设置开机自启动即可
转载自blog.csdn.net/Lucien010230/article/details/113521768