zl程序教程

您现在的位置是:首页 >  系统

当前栏目

【Linux 内核】进程管理 - 进程优先级 ① ( 限期进程 | 实时进程 | 普通进程 | 进程优先级相关字段 )

Linux内核实时进程 管理 相关 优先级 普通
2023-06-13 09:18:05 时间

文章目录

一、进程分类 ( 限期进程 | 实时进程 | 普通进程 )


Linux 进程 分为

3

种类型 , " 限期进程 " , " 实时进程 " , " 普通进程 " ; 从 " 进程优先级 " 角度对比 , 优先级从高到低分别是 : 限期进程 > 实时进程 > 普通进程 ;

限期进程 : 优先级为

-1

;

实时进程 : 优先级为

1

~

99

; 实时进程 中 优先级的数值越大 , 优先级越高 ;

普通进程 : 优先级为

100

~

139

; 普通进程 中 优先级的数值越小 , 优先级越高 ;

在 " 普通进程 " 中 , 可以通过 修改 nice 字段的值 , 进而 修改 普通进程的优先级 , 计算公式如下 :

普通进程优先级 = \rm nice + 120

二、进程优先级相关字段


linux-5.6.18\include\linux\sched.h 头文件中 task_struct " 进程描述符 " 结构体 中定义了 进程优先级字段如下 :

struct task_struct {
	// ...
	int				prio; 				 // 调度优先级
	int				static_prio; 		 // 静态优先级
	int				normal_prio; 		 // 正常优先级
	unsigned int			rt_priority; // 实时优先级
	// ...
}