cfs

news/2024/12/14 19:00:19/文章来源:https://www.cnblogs.com/xingxingx/p/18577255

比如系统的调度周期是6ms, A 的权重是 1024,进程 B 的权重是 512,A,B的vtime是多少

在 CFS(Completely Fair Scheduler)中,vtruntime 是动态更新的,且其变化速率与进程的权重成反比。权重较大的进程将以较慢的速度增加 vtruntime,而权重较小的进程则增加得较快。我们来逐步分析一下,如果系统的调度周期是 6 毫秒(ms),A 和 B 两个进程的权重分别是 1024 和 512,它们的 vtruntime 应该是如何变化的。

CFS 调度算法中 vtruntime 的变化方式:

  1. 调度周期:系统的调度周期是 6 毫秒,即每 6 毫秒 CFS 调度器会选择一个进程运行,并更新相应的 vtruntime

  2. 权重:进程 A 的权重是 1024,进程 B 的权重是 512。这里的权重是用来调整各个进程的 vtruntime 增加速率的。权重越大,进程的 vtruntime 增加速度越慢。

  3. vtruntime 的更新机制:进程的 vtruntime 更新与其权重成反比,具体来说,进程消耗 1 单位时间时,vtruntime 会增加的量与其权重成反比。计算公式大致是:

    [
    \text{vtruntime增量} = \frac{\text{调度周期}}{\text{进程的权重}}
    ]

计算过程:

假设进程 A 和进程 B 在同一个调度周期内分别被调度运行。

  • 调度周期:6 毫秒 = 6000 微秒
  • A 的权重:1024
  • B 的权重:512

进程 A 的 vtruntime 增量:

由于进程 A 的权重是 1024,它的 vtruntime 增量可以按下列公式计算:

[
\text{A的vtruntime增量} = \frac{6000 , \mu s}{1024} \approx 5.86 , \mu s
]

所以,进程 A 的 vtruntime 会增加大约 5.86 微秒

进程 B 的 vtruntime 增量:

进程 B 的权重是 512,它的 vtruntime 增量按下列公式计算:

[
\text{B的vtruntime增量} = \frac{6000 , \mu s}{512} \approx 11.72 , \mu s
]

所以,进程 B 的 vtruntime 会增加大约 11.72 微秒

总结:

  • 在同一个 6 毫秒的调度周期内,进程 A 的 vtruntime 增加约 5.86 微秒
  • 进程 B 的 vtruntime 增加约 11.72 微秒

由于 进程 A 的权重较大,它的 vtruntime 增加得较慢,而 进程 B 的权重较小,vtruntime 增加得较快。这符合 CFS 调度算法的公平调度原则,即使得权重较小的进程可以更快地完成调度。

注意:

这些值是在一个调度周期内的增量。如果两个进程分别多次被调度,vtruntime 的变化会随着运行时间的累积而逐渐扩展,最终 vtruntime 较小的进程会被优先调度,以保证它们能够公平地使用 CPU。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/852619.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

消防通道堵塞识别摄像机

消防通道堵塞识别摄像机是一种安装在建筑物消防通道中的监控设备,主要用于监测消防通道是否被车辆、杂物或其他障碍物所堵塞,以确保在火灾等紧急情况下消防通道畅通无阻。这种摄像机通常安装在消防通道的入口或周围,具备高清摄像功能,能够全天候监测通道状况。一旦摄像机检…

发布你的第一个python包

发布你的第一个python包到pypi网站这里介绍如何将你写的python工具包,打包成whl,并发布到pypi.org网站,使用pip进行安装使用。大致步骤如下:注册测试testpypi.org网站,生成上传的token 注册正式pypi.org网站,生成上传的token 编写代码 规划项目代码目录布局 编写打包文件…

火灾监测识别摄像机

火灾监测识别摄像机是一种基于视觉识别技术的智能设备,旨在实时监测并识别火灾,及时报警并提供相关数据支持,以提高火灾应急响应和减少火灾灾害损失。火灾监测识别摄像机是一种基于视觉识别技术的智能设备,旨在实时监测并识别火灾,及时报警并提供相关数据支持,以提高火灾…

佩戴口罩监测识别摄像机

佩戴口罩监测识别摄像机是一种基于计算机视觉技术的智能监测设备,它能够快速准确地识别出人们是否佩戴口罩,并对佩戴口罩的人员进行识别和记录。这种摄像机在当前抗击病毒的背景下具有重要意义,在公共场所、医疗机构、交通枢纽等地方都有着广泛的应用价值。佩戴口罩监测识别…

随机中文字符生成-python包工具

随机生成中文文字,你指定数量这里介绍一个python工具包,随机生成中文文字,方便中文模型训练及随机中文字符串填充场景。操作如下: pip install chineserand代码示例: from chineserand import raw chinese_words = raw(10) print(chinese_words)项目开源地址: https://gi…

P6786 「SWTR-6」GCDs LCMs

有意思的推式子题一开始看到这个式子是不知所措的,推理出来的结论倒是挺有意思的,还是第一次遇到这样推理的。 一开始是打算直接枚举的,时间复杂度太高了,这个式子有什么意义呢? x+y+gcd(x,y) = lcm(x,y) x 等于 y时,显然不成立 当y>x时,这时候就需要猜了。x+y…

Muduo网络库解析---架构设计

前言 muduo库是陈硕个人开发基于reactor模式的tcp网络编程库。本人之前有学习过boost.asio网络库,故学习一下Muduo网络库,并分析它们之间的优缺点。 本系列将重点放在以下几件事情:梳理Muduo的核心架构设计以及各个模块的职责 理解Muduo的事件驱动机制 理解Muduo的多线程模型…

2024-2025-1学号20241309《计算机基础与程序设计》第十二周学习总结

作业信息这个作业属于哪个课程 2024-2025-1-计算机基础与程序设计这个作业要求在哪里 2024-2025-1计算机基础与程序设计第十二周作业这个作业的目标作业正文 2024-2025-1学号20241309《计算机基础与程序设计》第十二周学习总结教材学习内容总结 《C语言程序设计》第十一章: 一…

四阶魔方教程

四阶魔方玩法还原教程 四阶魔方的还原其实很简单,大家不要看我画了这么多图,写了这么多字就以为好像很难,其实我是为了让大家尽可能的不费脑力就能学会才讲得尽量具体一点。 我们用的是降阶法,基本的还原过程如下:1.中心块复原2.棱的合并3.按三阶魔方还原4.特殊情况校正四…

P6599 「EZEC-2」异或

写数学时发现的好题 给出n和l,构造一个数组,数组长度为l,满足数组中的数字在 1-n 之间贪心的想,直接放n会发生什么。不难发现,最终的答案其实是两两异或之和 放一个n,答案就是1(l-1)n; 放一个n,答案就是2(l-2)n; 其实就是x(l-x)n; 还可以更大吗? n写成二进制就…

使用AOP防止请求重复提交

使用AOP防止请求重复提交首先定义注解NoPepeatSubmit@Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface NoRepeatSubmit {long value() default 1000*10; }定义AOP相关方法public class RepeatSubmitAspect {@Autowiredprivate StringRedisS…

三门峡知识付费系统服务热线

关于三门峡地区的知识付费系统及教育服务,虽然直接与三门峡地区的本地资源相关的信息比较有限,我们可以提供一些更宽广的信息和资源链接以帮助相关从业人员更好地了解知识付费系统和服务相关的背景信息与技术细节。例如,如果您在寻求构建或选择一个适合自身需求的知识付费系…