进程的延迟与周期调度
进程的概念
进程:开始执行但是还没有结束的程序的实例

程序:包含可执行代码的文件

进程由程序产生,是一个运行着的、要占系统资源的程序,进程不等于程序。

进程分为:交互进程、批处理进程、守护进程。

进程与程序是多对一关系

进程的查看
命令语法:ps [选项]

选项说明:

-A:显示系统中所有进程的信息,与-e 具有相同的功能。
-a:显示所有用户进程的信息。
-f:完整的显示进程的所有信息。
-l:以长格式显示进程信息。
-r:只显示正在运行的进程。
-u:显示面向用户的格式(包括用户名、CPU 及内存使用情况等信息)。
-x:显示所有非控制终端上的进程信息。
-p:显示由进程 ID 指定的进程的信息。
-t:显示指定终端上的进程的信息。
查看各进程继承关系的命令
pstree 命令以树状结构显示系统进程的继承关系。树状图将会以 pid (如果有指定) 或是以 init 为根,如果指定
user
,则树状结构只显示该用户所拥有的进程。

命令格式:pstree [选项] [pid
|user
]

选项说明:

-
a:显示该进程的完整继承关系,如果是被内存置换出去的进程则会加上括号。

-
c 如果有重复的进程名, 则分开列出 (默认值是会在前面加上
*
)。

pid
|user
:查看指定根进程(pid)或用户(
user
)所拥有的进程。

进程的终止
kill
[信号代码]
pid

Killall
[信号代码]
进程名

通过

ps -aux 显示进程

pstree查看子进程

进程的调度
延迟性调试
功能:指定时间运行指定的程序

格式:
at
[-f 文件] [-m ] 时间

-f : 指定存放计划执行命令的文件

-m: 作业结束后发送邮件给执行
at
命令的用户

时间:任务执行的时间,可采用相对和绝对两种方法

绝对表示法:MMDDYY 或 MM/
DD
/YYYY, today 或 tomorrow 来表示今天或明天

相对表示法:now+num+时间单位,其中的时间间隔可以是 minutes, hours, days, weeks

at
now+
1
minutes 明天执行

at
> echo
"hell"
> /dev/pts/
2
回车

ctrl+d 结束

at
-f 指定文件
17
:
30
+
2
days

周期性调度
功能:计划调度服务

crontab –u user {-e | -l | -r}

-u:为指定的用户设置计划任务
-e:编辑计划任务列表
-l:查看指定用户的计划任务列表,默认为当前用户
-r:删除用户的计划任务列表
crontab –u user file (其中 file 代表任务列表文件)

任务列表文件的格式:minute hour day month day-of-the-week run_command

crontab -u 用户名 -e 编辑/创建任务列表

00 00 */3 * * 命令路径 [参数]

crontab -l 查看

crontab -u 用户 -r 删除任务 命令得是绝对路径

00 00 */3 * * 命令路径

分钟 小时 日期 月份 星期 命令

时间数值表示

* 表示该范围内的任意时间

, 表示间隔的多个不连续时间点

- 表示一个连续的时间范围
/ 指定时间间隔的时间频率

应用示例

周一到周五每天17:00

0 17 * * 1-5

每周一、三、五的八点30分

30 8 * * 1,3,5

8点到18点之间每隔2小时

0 8-18/2 * * *

每隔3三天

0 * */3 * *


计划目录列表存放位置

/var/spool/scron/root
链接:https://www.cnblogs.com/yanlzy/p/11916911.html
(版权归原作者所有,侵删)
继续阅读
阅读原文