Linux---进程和计划任务管理
Linux—进程和计划任务管理
一.程序和进程的关系
程序:
1.保存在硬盘,光盘等介质中的课执行代码和数据
2.静态保存的代码
进程:
1.在CPU及内存中运行的程序代码
2.动态执行的代码
3.父,子进程(每个进程可以创建一个或多个进程)
应用程序—进程—线程
一个应用程序可以包含一个或者多个进程
一个进程包含一个或多个线程
线程是执行操作的最小单元
高并发处理—依赖于多线程操作
二.查看进程
1.ps命令静态查看
ps aux
a—显示当前终端下的所有进程信息,与x结合时,显示所有进程
u—以用户为主的格式输出进程
x—当前用户在所有终端下的进程信息
USER—用户账号名称
PID—唯一ID号
%CPU—CPU占用比
%MEM—内存占用比
VSZ—占虚拟内存大小(swap空间)
RSS—占常驻内存大小(物理空间)
TTY—进程终端,”?“表示未知或不需要
STAT—进程状态
START—启动进程的时间
TIME—占用CPU时间
COMMAND:启动该进程的命令的名称
其中STAT:
S—不可中断休眠
D—可中断休眠
R—运行
Z—僵死
<—高优先级
N—低优先级
l—多线性进程
s—父进程
±–前台进程
ps -elf
PPID—当前进程的父进程
PRI—优先级
NI—nice值,内核(-20~19)
ADDR—运行
SZ—占swap交换分区的容量
WCHAN—当前进程内核态模式
2.动态查看
top
每三秒刷新一次
3.pgrep条件查找
-l—显示进程名
-U:指定特定用户
-t:指定终端
例:
查看包含log的进程及PID:
查看root用户在pts/0终端运行的进程及ID号:
4.pstree树形结构查看
pstree -aup:
-a—完整命令
-u—用户名
-p—PID号
查看指定用户:
pstree -ap root
三.控制进程
1.启动进程
前台启动;用户输入命令,直接执行程序
后台启动:在命令行尾加入”&“符号
例:
Ctrl+Z 组合键:
将当前进程挂起,即调入后台并停止执行
jobs命令:
查看处于后台的任务列表
fg 命令:
将后台进程恢复到后台运行,可指定任务序号
2.终止进程
Ctrl+C组合键:
中断正在执行的命令
kill,killall命令:
kill用于终止指定PID号的进程
killall用于终止指定名称的所有进程
-9选项用于强制终止
例:kill
killall:
pkill命令:
1.根据特点条件终止相应的进程
2.常用命令:
-U—根据进程所属的用户名终止相应进程
-t—根据进程所在的终端终止进程
例:pkill -9 -U zhangsan
四.计划任务管理
1.at命令:一次性计划任务
Ctrl+D—提交任务
atq—查看等待执行的任务
atrm—删除计划任务
实例:
2.crontab:周期性任务设置
1.按照预先设置的时间周期(分,时,日,月,期)重复执行用户指定的命令操作
2.主要配置文件:
全局配置文件,位于文件:/etc/crontab
系统默认的设置,位于目录:/etc/cron.*/
用户定义的设置,位于文件:/var/spool/cron/用户名
3.管理cron计划任务:
crontab -e [-u 用户名] ----编辑
crontab -l [-u 用户名] ----查看
crontab -r [-u 用户名] ----删除
crontab -e的用法和VI编辑器一样
*—任意时间
,—表示间隔多个不连续时间点
-:表示一个连续的时间范围
/—指定间隔的时间频率
0和7都代表星期天
示例:
0 17 * * 1-5 ------周一到周五每天17:00
30 8 * * 1,3,5-----每周一三五的八点三十
0 8-18/2 * * * ------八点到十八点之间每两小时