Linxu进程的延迟与周期调度

嵌入式技术

1368人已加入

描述

进程的延迟与周期调度

进程的概念

进程:开始执行但是还没有结束的程序的实例 
程序:包含可执行代码的文件 
进程由程序产生,是一个运行着的、要占系统资源的程序,进程不等于程序。
进程分为:交互进程、批处理进程、守护进程。
进程与程序是多对一关系

进程的查看

命令语法: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

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分