美文网首页
Linux进程调度

Linux进程调度

作者: sk邵楷 | 来源:发表于2022-07-25 21:24 被阅读0次

linux调度类:
一共有5个调度类, 每个进程都对应一种调度策略, 每种策略又会对应一种调度类(每个调度类可以对应多种调度策略)
extern const struct sched_class stop_sched_class;
extern const struct sched_class dl_sched_class;
extern const struct sched_class rt_sched_class;
extern const struct sched_class fair_sched_class;
extern const struct sched_class idle_sched_class;

rt_sched_class: 实时调度器(调度策略: SCHED_FIFO, SCHED_RR)
fair_sched_class: 完全公平调度器(调度策略: SCHED_NORMAL, SCHED_BATCH, SCHED_IDLE)

调度类优先级顺序: stop_sched_class>dl_sched_class>rt_sched_class>fair_sched_class>idle_sched_class

调度策略:
struct task中 unsigned int policy 保存进程的调度策略
SCHED_NORMAL: 用于普通进程, 通过CFS调度器实现
SCHED_BATCH: 相当于SCHED_NORMAL分化版本, 采用分时策略, 根据动态优先级, 分配CPU运行需要的资源
SCHED_IDLE: 优先级最低, 在系统空闲时才执行这类进程
SCHED_FIFO: 先进先出调度算法(实时调度策略), 相同优先级任务先到先服务, 高优先级的任务可以抢占低优先级的任务.
SCHED_RR: 轮流调度算法(实时调度策略)
SCHED_DEADLINE: 新支持的实时进程调度策略, 针对突发性计算
SCHED_BATCH用于非交互处理器消耗型进程, SCHED_IDLE是在系统负载很低时使用CFS
/*

  • 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

CFS调度
CFS调度器(1)—— 基本原理
https://www.cnblogs.com/hellokitty2/p/13171709.html
CFS调度器(2)——源码解析
http://t.zoukankan.com/hellokitty2-p-13195256.html
linux内核源码分析之CFS调度
https://blog.csdn.net/WANGYONGZIXUE/article/details/123456109
带你玩转linux内核源码分析之CFS调度
https://www.bilibili.com/read/cv16902712
Linux进程调度-CFS调度器原理分析及实现,懂了
https://zhuanlan.zhihu.com/p/395810060
操作系统调度算法3——CFS,完全公平调度器
https://zhuanlan.zhihu.com/p/372441187

Linux进程调度源码学习之调度策略与调度类工作流程
https://blog.csdn.net/xsjzn/article/details/124721909

相关文章

  • Linux内核学习013——进程调度(二)

    Linux内核学习013——进程调度(二) Linux的进程调度 早期版本(1~2.4)的Linux内核中,调度程...

  • 打通Framework与Kernel-谈谈我对进程管理的理解

    Kernel:Linux学习-进程管理与调度(一)-进程描述及其生命周期Linux学习-进程管理与调度(二)-进程...

  • Linux内核学习014——进程调度(三)

    Linux内核学习014——进程调度(三) Linux调度算法 在Linux中,调度器是以模块方式提供的,这样可以...

  • 学习之路 | 1 进程调度

    进程调度 多任务 Linux的进程调度 策略 策略决定调度程序在何时让什么进程运行。调度器的策略往往就决定系统的整...

  • 进程调度

    目标 本章将讨论Linux内核是如何进行进程调度的,进程调度程序(也称为调度器)的工作与实现原理。 进程调度程序负...

  • Linux进程调度

    Linux进程调度是通过内核子系统:进程调度程序完成的。进程调度程序决定投入运行的进程、何时运行已经运行时长。从这...

  • linux中的调度

    linux系统的线程是内核线程,所以linux系统的调度是基于线程而不是基于进程的 为了进行调度,linux系统将...

  • Linux 进程调度

    Linux的调度策略区分实时进程和普通进程,实时进程的调度策略是SCHED_FIFO和SCHED_RR,普通的,非...

  • Linux - 进程调度

    介绍 进程调度算法也称 CPU 调度算法,毕竟进程是由 CPU 调度的。 当 CPU 空闲时,操作系统就选择内存中...

  • Linux进程调度

    linux调度类:一共有5个调度类, 每个进程都对应一种调度策略, 每种策略又会对应一种调度类(每个调度类可以对应...

网友评论

      本文标题:Linux进程调度

      本文链接:https://www.haomeiwen.com/subject/fitwirtx.html