问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

CFS的调度程序

发布网友 发布时间:2022-04-23 05:07

我来回答

1个回答

热心网友 时间:2023-09-23 18:55

CFS(Completely Fair Scheler,CFS)
完全公平调度程序 Linux 2.6.23 内核附带了一个模块化调度程序内核和一个被实现为调度模块的完全公平调度程序(Completely Fair Scheler,CFS)。
Linux 2.6.23 内核的调度程序为其他调度模块并行处理内核打好了基础(这里所说的 “模块化” 并不意味着将调度程序分解为若干可加载的模块,而是指代码本身模块化)。有关调度程序工作原理的更多细节,请参考 developerWorks 文章 “Inside the Linux scheler”(参见本文末尾 参考资料 小节中的链接)。 最新版调度程序引入的主要特性包括:
模块化调度程序完全公平调度程序(Completely Fair Scheler,CFS)CFS 组调度 模块化调度程序
调度类的引入显著增强了内核调度程序的可扩展性。这些类(调度程序模块)封装了调度策略。这个调度程序将调度策略模块化,但是与 Pluggable CPU 调度程序框架不同的是,并没有把调度程序本身模块化(后者在内核编译时选择默认调度程序,而通过在启动时向内核传递参数来使用其他 CPU 调度程序)。
CFS
完全公平调度程序(CFS)试图按照对 CPU 时间的 “最大需求(gravest need)” 运行任务;这有助于确保每个进程可以获得对 CPU 的公平共享。如果某个任务休眠时间 “非常短”,那么 CFS 不会将该任务视为休眠任务 — 短暂休眠的进程可能会获得一些额外时间,但是决不会超过它的未休眠时间。
CFS 组调度
考虑一个两用户示例,用户 A 和用户 B 在一台机器上运行作业。用户 A 只有两个作业正在运行,而用户 B 正在运行 48 个作业。组调度使 CFS 能够对用户 A 和用户 B 进行公平调度,而不是对系统中运行的 50 个作业进行公平调度。每个用户各拥有 50% 的 CPU 使用。用户 B 使用自己 50% 的 CPU 分配运行他的 48 个作业,而不会占用属于用户 A 的另外 50% 的 CPU 分配。
CFS 调度模块(在 kernel/sched_fair.c 中实现)用于以下调度策略:SCHED_NORMAL、SCHED_BATCH 和 SCHED_IDLE。对于 SCHED_RR 和 SCHED_FIFO 策略,将使用实时调度模块(该模块在 kernel/sched_rt.c 中实现)。
鉴于以下原因,需要对策略作出一些更改:
更好地支持服务器和台式机调度。 提供用户要求的新特性。改进启发式(heuristic)处理。vanilla 调度程序使用启发式处理可以更轻易地实现调度。同样,如果启发式处理错误估测了场景,将导致意料之外的行为。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
说课包括哪些方面 说课内容包括()。 如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 如何补气补血? Linux上CFS调度算法与实时调度算法的区别 如何快速的补血,怎么补血最快呢? 怎样补血最快最有效 忘了摘隐形眼镜早上起来眼睛前面一层雾是什么原因 隐形眼镜一晚上忘记拿掉,怎么办? 隐形眼镜晚上睡觉忘记取了,会有很大危害吗 隐形眼镜晚上忘记摘起床后视力模糊 晚上忘摘隐形眼镜找不到了该怎么办? 带隐形眼镜晚上睡觉忘了取,怎么早上感觉看不清 隐形眼镜带了一夜睡觉忘摘了 起来眼睛雾蒙蒙的怎么办 不小心带了一晚上的*眼镜忘了摘,眼睛看东西是朦胧的绿色,怎么办,有什么问题吗? 隐形眼镜晚上睡觉忘记摘有什么影响 隐形眼镜晚上睡觉忘了摘下来怎么办? 隐形眼镜如果晚上忘记摘了,戴着睡觉,对眼睛危害大吗? 怎么用电脑转移微信聊天记录到另一台手机上 假如你永远不摘隐形眼镜,会怎样? 晚上忘记取隐形眼镜了会怎么样 晚上忘记摘隐形眼镜,早上眼睛很痛 晚上休息前,如果忘记摘美瞳会怎么样? 贫血的人吃什么补血快,怎么补血最快 怎么样补血最快最有效 linux cfs 哪个版本引入的 贫血人士应该怎么补血?都有哪些食物是补血的呢? 怎样补血最有效 外贸中CFS是什么? 怎么样补血 如何快速补血? 求一个linux内核调度模拟器,实现了cfs调度算法的 贫血怎样快速补血 linux下的进程和Windows下的进程联系区别 要有联系也要有区别…… 操作系统内核具体实现中比较巧妙的思想有哪些 如何补血? Linux内核设计与实现的内容简介 男人贫血怎么补血? linux 现在最新的内核 版本 是多少 怎么快速补血? 关于Linux系统~谁能帮帮我呀~详细点~万分感谢~ 不知道的,别来灌水!!! 如何补血 什么食物补血