程序与进程的关系

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序与进程的关系相关的知识,希望对你有一定的参考价值。

一、程序与进程的关系

1、程序:静态保存的代码
保存在硬盘、光盘等介质中的可执行的代码和数据
2、进程:在CPU及内存中运行的程序代码
动态执行的代码
父子进程
每个进程可以创建一个或多个进程
3、线程:一个进程包含多个线程
进程是线程的集合

二、查看进程信息

1、ps命令

(1)ps aux 静态查看

技术图片
%MEM:内存所在百分比
VSZ :占用的虚拟内存大小
RSS:占用的常驻内存大小
TTY终端
STAT 进程状态
S:可中断休眠进程
D:不可中断休眠进程
s:父进程
<:代表优先级高的进程
R:代表正在运行的进程
l:代表多线性进程
N:代表优先级低
Z:僵尸进程
+:前台进程
START 启动时间
TIME:今年初占用CPU的总时间
COMMAND 进程名称

(2)ps -elf 查看进程

技术图片
F:加载序列
PPID 当前进程的父进程
AADR
-:正在运行
SZ : 虚拟交换分区的容量
WCHAN:当前进程的内核名称
C CPU占用
PRI 用户态优先级
NI 内核态优先级 (-20~19,数值越低优先级越高)

2、top命令——查看进程动态信息

默认每隔3秒刷新一次
技术图片
CPU占用信息: ni,内核调度优先级 id,空闲空间 wa, i/o读写占用
hi ,硬占用 si ,软占用 st ,虚拟占用
内存占用(Mem)信息:total,总共 ; free,空闲; used,使用 ;buffers,缓冲区间
交换空间(Swap):total,总共; free,空闲; used,使用 ;cached,缓存空间;

3、pgrep命令——查询进程信息

根据特定条件查询进程PID信息
技术图片

4、pstree命令——查看进程树

以树形结构列出进程信息
技术图片

三、控制进程

1、手工启动进程

(1)前台启动:用户输入命令,直接执行程序。
(2)后台启动:在命令行尾加入“&符号”
命令为:cp /mnt/Packages/ /opt/ &
输出信息中包含后台任务序号、PID号
技术图片

2、进程的前后台调度

Ctrl+Z键
将当前进程挂起,即调入后台并停止执行
jobs命令
jobs -l
查看后台的任务列表
fg命令
将后台进程恢复到前台运行,可指定任务序号·
技术图片

3、终止进程执行

Ctrl+C组合键
中断正在执行的命令
kill、killall命令
kill 用户终止指定PID号的进程
killall用于终止指定所有名称的所有进程
-9选项用于强制终止
pkill命令
根据特定条件终止相应的进程
命令形式:pkill -9 -U
-U:根据进程所属的用户名终止相应进程
-t:根据进程所在的终端终止相应进程
结束单个进程
技术图片
结束多个相同名称的进程
技术图片
强行终止用户lzp的进程
技术图片

四、计划任务管理

1、at 命令

一次性计划任务
at命令常用类型
at [HH:MM] [yyyy-mm-dd]
data获取时间
atq查看等待任务
atrm 删除
at命令应运示范
技术图片

2、crontab命令

按照预先设置的时间周期(分钟、小时、天.....)重复执行用户指定的命令操作
属于周期性计划任务
主要设置文件
全局配置文件,位于文件:/etc/crontab
系统默认的设置,位于目录:/etc/cron./
用户定义的设置,位于文件:/var/spool/cron/用户名
编辑计划任务
crontab -e [-u 用户名]
查看计划任务
crontab -l [-u 用户名]
删除计划任务
crontab -r [-u 用户名]
crontab 任务配置的格式格式
事件数值的特殊表示范围
“/”指定间隔的时间频率
”表示该范围内的任意时间
“,”表示间隔的多个不连续时间点
“-”表示一个连续的时间范围
crontab命令常用格式:
技术图片
分钟:取值为从0~59的任意整数
小时:取值为从0~23的任意整数
日期:取值为从1~31的任意整数(日期在该月份中必须有效)
月份:取值为从1~12的任意整数
星期:取值为从0~7的任意整数,0或7代表星期日
命令:可以是普通命令,也可以是自己编译的程序脚本
crontab命令应运示范
查看系统任务配置
技术图片
技术图片
进入crontab e后输入的内容
技术图片
删除计划任务
技术图片

以上是关于程序与进程的关系的主要内容,如果未能解决你的问题,请参考以下文章

Linux 内核进程管理 ( 进程与操作系统 | 进程与程序 | 进程与线程 | 虚拟地址空间 )

Windows NT/2000/XP进程与线程之间的关系

程序自动化与进程的含义

进程和线程关系与区别

VB怎么获得与程序标题对应的进程名

计算机-进程与线程的关系