进程和计划任务

发布于:2024-04-16 ⋅ 阅读:(152) ⋅ 点赞:(0)

一、程序

1.1什么是程序?

是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具

用于描述进程要完成的功能,是控制进程执行的指令集

二、进程

2.1什么是进程?

运行中的程序的一个副本,是被载入内存的一个指令集合,是资源分配的单位

  1. 硬件资源分配的最小单位
  2. 进程ID(Process ID,PID)号码被用来标记各个进程
  3. UID、GID语境决定对文件系统的存取和访问权限
  4. 通常从执行进程的用户来继承
  5. 存在生命周期
  6. 都由其父进程创建

2.2进程的基本状态

2.3进程具有的特征

 动态性:进程是程序的一次执行过程,是临时的,有生命期的,是动态产生,动态消亡的;

 并发性:任何进程都可以同其他进程一起并发执行;

 独立性:进程是系统进行资源分配和调度的一个独立单位;

 结构性:进程由程序、数据和进程控制块三部

2.4进程使用内存的问题

内存泄漏

内存溢出

内存不足:out of meory

2.5僵尸进程

2.5.1什么是僵尸进程

进程以及中止,但是依然占用硬件资源

父进程退出 子进程没有退出 那么这些子进程就没有父进程来管理了, 就变成僵尸进程

2.5.2如何过滤僵尸进程

ps aux | grep Z

2.5.3如何解决僵尸进程

  

  

STAT为Z代表为僵尸态

三、线程

线程是程序执行中一个单一的顺序控制流程,是程序执行流的最小单元,是处理器调度和分派的基本单位。一个进程可以有一个或多个线程,各个线程之间共享程序的内存空间。

四、查看进程

4.1静态查看进程ps命令

ps   选项

常用选项 功能
a 显示当前终端下的所有进程信息,包括其他用户的进程
u 使用以用户为主的格式输出进程信息
x 显示当前用户在所有终端下的进程信息
-e 显示系统内的所有进程信息
-l 长格式显示进程信息
-f

完整的格式使用进程信息

[选项]--soft 对属性排序,属性前加 - 表示降序排列

表头 含义
PID 进程的ID号
TTY 该进程是在哪个终端运行的
TIME 该进程占用 CPU 的运算时间,不是系统时间
CMD 产生此进程的命令名

4.1.1显示所有进程

ps   aux   显示所有当前活动的进程的详细信息

  

表头 含义
USER 该进程是由哪个用户产生的
PID 进程的ID
%CPU 该进程占用cpu资源的百分比,百分比越高进程越耗费资源

%MEM

该进程占用物理内存的百分比,百分比越高越耗费资源
VSZ 该进程占用虚拟内存的大小,单位kb
RSS 该进程占用物理内存的大小,单位kb
TTY 该进程是在哪个终端运行的
STAT 进程状态,常见的状态有以下几种
START 该进程的启动时间
TIME 该进程占用 CPU 的运算时间,不是系统时间
COMMAND 产生此进程的命令名

4.1.2ps   -ef

 

表头 含义
F 进程标志,表示进程的权限
S 进程状态。具体的状态和"psaux"命令中的 STAT 状态一致
UID 运行此进程的用户的 ID
PID 进程的ID
PPID 父进程的ID
C 该进程的 CPU 使用率,单位是百分比
PRI 进程的优先级数值越小,该进程的优先级越高,越早被 CPU 执行
NI 进程的优先级,数值越小,该进程越早被执行;可以人为修改
ARRD 该进程在内存的哪个位置
SZ 该进程占用多大内存
WCHAN 该进程是否运行。"-"代表正在运行
TTY 该进程由哪个终端产生
TIME 该进程占用 CPU 的运算时间,不是系统时间
CMD 产生此进程的命令名

4.1.3查看进程特定属性

ps -o pid,ppid,cmd,%cpu,%mem..

后面可以跟多个参数,用逗号隔开

 ps  axo  pid(仅显示pid)

ps -eo ppid,%CPU(仅显示父进程id,CPU占用)

  

4.1.4进程排序 --soft=

ps aux --sort=cpu | head -n 7        按CPU占用率降序排序所有进程 并显示前七行

  

ps aux --sort=-pid      按pid降序排列

  

4.2动态查看进程 top命令

top   选项   参数

top -u username:显示特定用户的进程使用情况。
top -p pid:显示特定PID的进程使用情况。
top -H:显示进程的线程视图,并按线程ID(LWP)进行排序。
top -o:可以使用不同的排序字段。例如,top -o %MEM将使用内存使用率进行排序。
top -n:设置top命令的显示次数或循环次数。例如,top -n 5将top命令的输出限制为5次。
top -b:以批处理模式运行top命令,将结果输出到标准输出,适用于脚本和后续处理。
top -d:设置刷新间隔,即更新数据的时间间隔。例如,top -d 5将每隔5秒刷新一次数据。

4.2.1top命令的交互界面

在top命令的交互界面中,可以使用不同的键来执行各种操作和切换不同的视图

k:杀死选中的进程

 1:切换到全局统计视图

 m:切换内存使用视图

 t:切换到进程排序模式,可以按不同的字段排序

4.3以树状结构显示当前系统中运行的进程pstree

  

pstree -p root       显示用户root的进程和对应pid

  

五、结束进程

5.1kill

kill命令根据进程的pid,向进程发送信号终止或操作进程

kill   [信号]   PID 

常用信号

-1 重新加载进程

-9 强制结束进程

-19 暂时停止进程

-18 让进程从停止状态恢复

5.2killall

killall命令用于根据进程名终止匹配的所有进程

killall  [选项]   [信号]   进程名

选项
-u 仅终止指定用户的进程
-l 列出可用的信号列表
-i 交互式,询问是否要杀死某个进程
-I(大i) 忽略进程名的大小写


网站公告

今日签到

点亮在社区的每一天
去签到