[发明专利]一个在schedsim中模拟linux调度器的方法无效
申请号: | 200810060458.0 | 申请日: | 2008-04-11 |
公开(公告)号: | CN101266551A | 公开(公告)日: | 2008-09-17 |
发明(设计)人: | 陈文智;高博;高扬;高从 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 张法高 |
地址: | 310027*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一个 schedsim 模拟 linux 调度 方法 | ||
技术领域
本发明涉及操作系统内核模拟领域,尤其涉及一个在schedsim中模拟linux调度器的方法。
背景技术
调度器即在多任务系统中,在合适的时间通过一定机制选择任务执行的一种方法,它是多任务操作系统的基础。在linux操作系统中调度器对系统性能具有重大的影响。
在操作系统中,CPU是一种资源,调度器可以临时分配一个任务在上面执行(单位是时间片)。调度器使得我们同时执行多个程序成为可能,因此可以与具有各种需求的用户共享CPU。
调度器的一个重要目标是有效地分配CPU时间片,同时提供很好的用户体验。调度器还需要面对一些互相冲突的目标,例如既要为关键实时任务最小化响应时间,又要最大限度地提高CPU的总体利用率。
在操作系统的发展过程中,人们根据不同的应用需求提出了多种多样的调度算法,如先到先服务调度、最短作业优先调度、轮转法调度、多级队列调度。这些调度算法在不同的领域都有着广泛的应用。但没有一种调度算法适用于所有的情况,对于不同的软硬件需求,需要选择合适的调度机制。Linux作为一个通用操作系统,它的调度算法也经历了长久的演变过程。从最早期的循环检测到2.6.24的Complete Fair Schedule调度,其核心调度代码几经更改。在Linux2.6内核中,调度器将进程分为三类:
1)交互式进程)此类进程有大量的人机交互,因此进程不断地处于睡眠状态,等待用户输入。典型的应用比如编辑器vi。此类进程对系统响应时间要求比较高,否则用户会感觉系统反应迟缓。
2)批处理进程)此类进程不需要人机交互,在后台运行,需要占用大量的系统资源。但是能够忍受响应延迟。比如编译器。
3)实时进程)实时对调度延迟的要求最高,这些进程往往执行非常重要的操作,要求立即响应并执行。比如视频播放软件或飞机飞行控制系统,很明显这类程序不能容忍长时间的调度延迟,轻则影响电影放映效果,重则机毁人亡。
根据进程的不同分类Linux采用不同的调度策略。对于实时进程,采用FIFO或者Round Robin的调度策略。对于普通进程,则需要区分交互式和批处理式的不同。传统Linux调度器提高交互式应用的优先级,使得它们能更快地被调度。而CFS和RSDL等新的调度器的核心思想是“完全公平”。这个设计理念不仅大大简化了调度器的代码复杂度,还对各种调度需求提供了更完美的支持。
当新的调度算法提出后,为了检测算法在linux上的性能,需要修改linux内核调度器以及时钟中断等相关的内容,这需要对linux内核非常熟悉,而且还要有扎实的linux内核编程经验及调试经验,对于多数人来说是不现实的。因此需要一个对Linux内核调度机制的模拟平台,目前有很多虚拟机软件及模拟平台来运行整个操作系统,如VMvare,sosim,sesc,schedsim等。其中多数是对完整OS的模拟,不利于快速获得调度效果。Schedsim是一个专门针对linux调度算法的模拟器,提供了良好的接口及几种常见的调度算法,可以容易的实现新的调度算法并可立刻获得直观的结果。但它对多处理器的情况支持太单一,系统中只有一个就绪队列,而且不支持linux的新调度算法。
发明内容
本发明的目的是克服schedsim的不足,提供一个在schedsim中模拟linux调度器的方法。
包括如下步骤:
1)修改schedsim的调度接口,为其添加变量timeinterval,来记录模拟过程的时钟中断大小;
2)修改schedsim的调度接口,为其添加数组processCap和processLists,用来记录每个处理器的处理能力及就绪队列;
3)修改调度接口中的方法RunNextTimeUnit,当时钟周期为0时把任务分配到各处理器,当时钟中断来临时对每个处理器的就绪队列调度;
4)添加linux调度算法Complete Fair Scheduler,添加相应的算法类CFSScheduler、CFSProcessList和CompleteFairProcess;
5)修改SchedulerGenerator,加入complete fair scheduler调度算法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810060458.0/2.html,转载请声明来源钻瓜专利网。