Linux内核架构读书笔记 - 2.5.1 调度器概述

  1schedule 函数

  kernle/sched.c

  有几个特点:

    在多处理器上要注意几个细节

    不仅实现了优先调度,还实现了Posix标准需要的其他两种软实时策略

    使用goto以便生成最优的汇编语言

 

  调度器原理....

  

  虚拟时钟 

  

  其实意思是:假设有N个进程.按照完全公平原则,每个进程分到的CPU是 1/N,  假设有5个进程,每个进程单独运行需要10分钟,按照完全公平原则.5个进程一起运行,每个需要50分钟. 

    有了虚拟时钟后,按实际速度 1/5 运行,在就绪队列等待实际的50s.相当于虚拟时间的10S, 5个进程分别执行10秒.即可使CPU实际占用50s 

    ..........................................................................

    

      调度器还受到如下的一些影响

      进程的优先级

      进程不能频繁切换

    可以通过/proc/sched_debug 查看一些调度器统计

    

    这段话没咋看懂,先mark一下,回头再深究........

posted @ 2014-04-25 19:46  songbingyu  阅读(186)  评论(0编辑  收藏  举报