文章目录一、Linux内核调度策略源码
"Linux应用进程"可以依据"Linux内核"提供的"调度策略"选择"调度器";
Linux内核"调度策略"源码在linux-5.6.18includeuapilinuxsched.h头文件中,
/*
* Scheduling policies
*/
#define SCHED_NORMAL 0
#define SCHED_FIFO 1
#define SCHED_RR 2
#define SCHED_BATCH 3
/* SCHED_ISO: reserved but not implemented yet */
#define SCHED_IDLE 5
#define SCHED_DEADLINE 6
/* Can be ORed in to make sure the process is reverted back to SCHED_NORMAL on fork */
#define SCHED_RESET_ON_FORK 0x40000000
复制
注意:停机调度器和责令调度器只能在内核中使用,应用进程难以使用这两个调度器;
二、SCHED_NORMAL策略
SCHED_NORMAL是"普通进程调度策略"linux服务器安全策略详解,"进程"选择"CFS调度器"进行调度运行;
三、SCHED_FIFO策略
SCHED_FIFO是"实时进程调度策略",这是一种先进先出(FirstInFirstOut)调度策略;
该策略不涉及CPU时间片机制(分时复用机制),在没有高优先级进程的前提下,只能等待其它进程主动释放CPU资源;
四、SCHED_NORMAL策略
SCHED_RR是"实时进程调度策略"linux视频教程,使用的是时间片轮转机制;
进程使用完CPU时间片后linux软件,会加入到与进程优先级相应的执行队列的末尾;
同时,释放CPU资源,CPU时间片会被轮转给相同进程优先级的其它进程;
五、SCHED_BATCH策略
SCHED_BATCH是"普通进程调度策略"linux服务器安全策略详解,该策略可以进行批量处理,令"进程"选择CFS调度器进行进程调度;
六、SCHED_IDLE策略
SCHED_IDLE是"普通进程调度策略",令"进程"以最低优先级选择CFS调度器进行进程调度;完全公正调度器;
七、SCHED_DEADLINE策略
SCHED_DEADLINE是"责令进程调度策略",令"进程"选择Deadline调度器进行进程调度;
本文原创地址:https://www.linuxprobe.com/lnhddclymml.html编辑:刘遄,审核员:暂无