[发明专利]硬件辅助的辅核任务动态优先级调度的实现方法无效
申请号: | 200810162902.X | 申请日: | 2008-12-04 |
公开(公告)号: | CN101414270A | 公开(公告)日: | 2009-04-22 |
发明(设计)人: | 陈天洲;严力科;冯德贵;王罡;陈度 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 林怀禹 |
地址: | 310027浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 硬件 辅助 任务 动态 优先级 调度 实现 方法 | ||
技术领域
本发明涉及计算机体系结构设计领域,涉及操作系统设计领域,尤其涉及一种硬件辅助的辅核任务动态优先级调度的实现方法。
背景技术
随着半导体以及相应的集成电路制造工艺的迅猛发展,集成在芯片上的晶体管的密度不断的提高,使得越来越多的元件都可以集成到一块单一的芯片上。在单个芯片上把各种不同用途的功能模块整合在一起,不但可以提升模块间的通信速度,提升系统性能,而且还可以减少芯片的面积,从而也降低芯片的能耗。
为了满足各种各样的应用需求,各种针对特定应用而设计的异构多核系统变得越来越流行。在这种体系中,除了针对特定应用优化设计的处理核外,还有一个负责操作系统运行的通用处理核。在这种异构多核的体系架构中,通常把运行操作系统的通用的处理核称为主处理核或者主核。而把针对特定应用设计的处理核称为辅助处理核或者辅核,如DSP,还有针对JPEG,MPEG2,MPEG-4以及HDTV应用设计的处理核都属于这一类。这些辅助处理核往往只能运行针对特定应用设计的专用指令集,所以运行在辅助核上的辅助核任务需要主核的管理和控制。
在支持异构多核体系的软件系统中,操作系统运行在主核上,而辅助核则通过各种各样的方式抽象成软件接口。例如以驱动程序,系统调用,或者虚拟文件系统等方式抽象出软件接口供应用程序直接使用。在驱动程序支持辅助核的方式中,从操作系统的角度来看,辅助核是一个拥有强大计算能力的设备,应用程序发挥辅助核强大计算能力的方式就是使用辅助核驱动程序。采用系统调用方式支持辅助核的方式中,支持辅助核的软件接口被包装成操作系统内核中的一组系统调用。而虚拟文件系统则是把辅助核的使用包装成一个虚拟文件系统,通过对文件系统的操作来实现对辅助核的操作。
但是,无论采用驱动程序还是虚拟文件系统的方式支持异构多核体系,都是把辅助核硬件抽象成相应的软件接口,在应用程序中通过使用这些软件接口对辅助核硬件进行直接的操作。这种方式用于测试辅助核的功能完整性以及应用在单任务的系统中是很合适的,实现方式和使用方式都很简单,但是,当有多个应用程序使用辅助核硬件的时候,由于这种软件直接操作硬件的方式,使得应用程序很难发现某个辅助处理核是否已经被其他程序所使用,就会发生辅助核资源使用的冲突。
因此,在支持主核和辅核这种体系的操作系统中,如何灵活而有效的调度管理应用程序任务在辅助核运行成了一个很大的问题。而且随着辅核种类和数量的增加,如果仍然由主核上运行的调度器来对众多的辅核种类和辅核任务进行调度,调度器可能成为系统性能的瓶颈。
发明内容
为了向基于主核和辅核体系的操作系统提供更好的支持,为了提供更加灵活有效的辅核管理性能,为了提高辅核任务调度的吞吐量,提高辅核执行的效率,本发明的目的在于提供一种硬件辅助的辅核任务动态优先级调度的实现方法。
本发明解决技术问题所采用的技术方案是:
一种硬件辅助的辅核任务动态优先级调度的实现方法:
1)辅核任务的三个阶段:
辅核是为特定应用领域的计算设计的,支持不同于主核的指令集;从操作系统的角度来看,辅核不能进行资源管理,不能运行任何操作系统内核态的代码,不具备完全独立运行进程的能力;因此辅核任务对执行可以分为三个阶段:
①辅核任务预处理阶段:这一阶段由主核负责,创建辅核上运行的辅核任务上下文,包括辅核任务指令以及待处理数据;主核上派生辅核任务的进程也就是该辅核任务的控制进程;
②辅核任务运行阶段:在该阶段,辅核从主存载入在第一阶段初始化好的辅核任务上下文并启动辅核任务的执行;当任务执行完毕后,将执行结果数据写回内存空间;
③辅核任务结果处理阶段:这个阶段运行在主核上,主要处理第二阶段在辅核上运行的结果,将辅核任务结果整理写回到目标地址;
2)硬件调度模块辅助的辅核任务调度过程:
辅核任务的调度过程如下:
①主核上运行的操作系统调用硬件调度器接口,将主核上进程派生的辅核任务传送给硬件调度器;
②辅核硬件调度器的调度单元,将就绪任务根据优先级组织为三个先进先出硬件队列,然后依次从队列中选取任务,并分配到空闲状态的辅核上执行;
③当辅核任务执行完毕,硬件调度单元产生中断通知主核上的控制进程进行后期的数据处理;
所述的将就绪任务根据优先级组织为三个先进先出硬件队列,具体组织方式如下:
①硬件调度器根据优先级高低维护了3个就绪任务队列,分别为:高优先级任务队列、普通优先级任务队列和低优先级任务队列;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810162902.X/2.html,转载请声明来源钻瓜专利网。