当前位置:  技术问答>linux和unix

关于2.6的内核时间片

    来源: 互联网  发布时间:2016-06-25

    本文导语:  当调度策略为SCHED_RR时,2.6的内核时间片是多少啊? | 这本书http://www.douban.com/subject/2247991/讲得不错的。 | 关于进程时间片的计算     进程的时间片time_slice是基于进程静态...

当调度策略为SCHED_RR时,2.6的内核时间片是多少啊?

|
这本书http://www.douban.com/subject/2247991/讲得不错的。

|
关于进程时间片的计算
    进程的时间片time_slice是基于进程静态优先级的。
    静态优先级越高(值越小),时间片就越大。
    计算时间片是通过函数task_timeslice()(kernel/sched.c)来完成的。
    通过优先级来计算时间片的等式为:
        timeslice=MIN_TIMESLICE+((MAX_TIMESLICE-MIN_TIMESLICE)*(MAX_PRIO-1-(p)->static_prio)/(MAX_USER_PRIO-1))
    这样的话就可以将100~139 的优先级映射到200ms~10ms 的时间片上去,优先级数值越大,则分配的时间片越小。

在Kernel2.6中时间片的计算是分散的,具体的计算既可以用task_timeslice(),也可以用其他方法。
    进程创建时,将父进程的时间片分一半给子进程,同时父进程的时间片减半。
    进程用完时间片以后,需要重新计算时间片,并将进程插入到相应的运行队列。
    进程退出时,根据first_timeslice的值来决定是否将子进程的时间片返还给父进程。

平均等待时间sleep_avg
    平均等待时间sleep_avg既决定了进程优先级,又影响了进程交互程度。
    进程的平均等待时间(以nanosecond 为单位),在0 到NS_MAX_SLEEP_AVG 之间取值,初值为0。
    这个值是动态优先级计算的关键因子,sleep_avg 越大,计算出来的进程优先级也越高(数值越小)。

    
 
 

您可能感兴趣的文章:

  • 关于内核时间与用户时间;我在线等你回复,所以你要告诉我!
  • linux 内核空间如何获取当前时间(常用格式)
  • redhat9 内核时间频率
  • 关于linux内核中信号处理的问题?(信号处理的时间)
  • linux内核层面,有什么好的获取时间的函数
  • 请问linux内核中怎么让进程延时一段时间执行
  • 如何知道内核编译所耗的时间
  • linux内核源代码中,在哪个文件的哪个地方可以看到定义线程切换时间片大小?
  • 请教:Linux2.6.30内核中 NAT做UDP mapping 时映射保持多长时间?
  • 急求:在linux内核态下如何获得当前系统时间
  • 关于linux内核中msleep的时间精确度
  • 测试内核启动时间,便于优化
  • 2.6内核下编译2.4内核
  • 请问在2.6的内核环境下编译2.4的内核有没有什么特殊的要求
  • 请问:redhat有没有2.6内核呀,一定要升级才行吗?
  • 是否需要将2.4版本内核升级到2.6呢?
  • 请问:2.6的内核是抢占式还是非抢占式的?如何更改?
  • LINUX 内核2.4和2.6的问题
  • 在radhat9.0中建立2.6内核树?
  • 裁减过的2.6内核支持USB设备问题?
  • ***内核2.6是否支持umsdos文件系统呀***
  • PC上安装的Linux,内核2.6版本,有哪些?谢谢
  • 2.4内核编译好的.o虚拟设备怎么在2.6下加载啊
  • linux-2.6内核的编译
  • 2.4 和 2.6 内核
  • 2.6内核编译问题
  • 2.6内核种进程优先级的疑惑。。。
  • 2.4升级到2.6内核的问题
  • Linux 2.6 内核什么时候发布啊?
  • linux内核2.6 功能
  • 《Linux 2.6内核标准教程》的配套源码哪里有得下
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux内核中影响tcp三次握手的一些协议配置
  • Fedora Core 2自带的内核升级程序下载下来内核后,要不要再编译一遍内核?
  • TCP协议四次断连过程介绍及Linux内核协议栈中相关设置项
  • 进程内核栈和操作系统内核栈的关系
  • CentOS 6内核升级:下载编译启用新内核版本详细过程
  • Linux中内核线程不访问内核态地址空间?
  • Linux进程的内核栈和用户栈概念,相互关系及切换过程
  • 谁能提供kgdb内核补丁内核模块的下载
  • linux内核中的likely宏和unlikely宏介绍及用法
  • 编译新内核后怎么进入原来内核
  • CentOS 6.5 下载地址及如何升级内核(kernel)版本到 3.10.28
  • 请问linux中如何判断内核是否已经启动。(在内核中写程序)
  • Linux下c/c++开发之程序崩溃(Segment fault)时内核转储文件(core dump)生成设置方法
  • 内核模块跟内核版本不匹配????????
  • docker使用的技术之Container内核原理介绍
  • 请教:如何安装新内核(rpm包)而不同原来得内核冲突?? 在线等待!!
  • linux为什么要升级内核?升级内核有何作用?
  • 内核升级后,如何在新的内核中加载显卡驱动?
  • 内核源码和结果make过的内核源码有什么区别
  • 不重新编译内核能修改内核函数吗?
  • 如何学好内核?学了内核能应用于哪方面?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3