[发明专利]一种基于多核网络处理器的实时任务调度方法及系统在审
申请号: | 201310022689.3 | 申请日: | 2013-01-21 |
公开(公告)号: | CN103942101A | 公开(公告)日: | 2014-07-23 |
发明(设计)人: | 张武;尚秋里;郭秀岩;查奇文 | 申请(专利权)人: | 中国科学院声学研究所;北京中科华影传媒技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F15/167 |
代理公司: | 北京法思腾知识产权代理有限公司 11318 | 代理人: | 杨小蓉;杨青 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多核 网络 处理器 实时 任务 调度 方法 系统 | ||
技术领域
本发明涉及基于多核网络处理器平台的任务调度方法,具体涉及一种基于多核网络处理器的实时任务调度方法及系统。
背景技术
随着芯片制造工艺的不断进步,传统的单核处理器体系结构技术已面临瓶颈,晶体管的集成度已超过上亿个,很难单纯地通过提高主频来提升性能,而且主频的提高同时也带来功耗的提高。所以,多核处理器应运而生,通过增加计算机中物理处理器的数量,能够有效地利用线程的并行性,实现真正意义上的并行执行。
片上多核处理器(CMP)是将多个计算内核集成在一个片处理器芯片中,从而提高计算能力。每个微处理器核心实质上都是一个相对简单的单线程微处理器或者比较简单的多线程微处理器,这样多个微处理器核心就可以并行地执行程序代码,因而具有了较高的线程级并行性。由于CMP采用了相对简单的微处理器作为处理器核心,使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点。
按照CPU核的对等与否,CMP可分为同构多核和异构多核。计算内核相同,地位对等的称为同构多核。同构CMP大多数由通用的处理器组成,多个处理器执行相同或者类似的任务。计算内核不同,地位不对等的称为异构多核,异构多核通常采用主处理核+协处理核的设计。
多核网络处理器,如Cavium公司、RMI公司提供多核网络处理器。这些处理器基于MIPS64架构的多核通用型CPU。OCTEON系列芯片内部集成了L3-L7硬件加速处理单元。
网络多核处理器软件系统实现的一个挑战在于软件设计与网络处理器的硬件结构关系非常紧密,必须面向网络处理器的硬件体系结构编程,通过合理分配和使用网络处理器为数据包处理的各种硬件资源,例如多处理引擎、专用硬件处理单元、各类寄存器、片上内存和其它硬件单元,才能得到一个高性能的系统。
所以,需要一种实时软件框架,来充分利用和整合多核处理器上的各种硬件资源,实现一种高效的任务调度机制,从而提高多核处理器上的任务处理软件的性能。
发明内容
本发明的目的在于,为克服上述问题,本发明提出了一种基于多核网络处理器的实时任务调度方法及系统。
为实现上述目的,本发明提供了一种基于多核网络处理器的实时任务调度系统,所述系统包含:消息接收模块、任务调度模块、任务处理模块以及消息发送模块;
所述消息接收模块,用于主动从多核网络处理器获取消息,并将获取的消息传输至任务调度模块;
所述任务调度模块,用于将接收到的消息存入多级工作队列并为每个消息维护一个任务状态机;
所述任务处理模块,用于按照轮询的方式处理多级工作队列中的消息;
所述消息发送模块,用于将处理后的消息发送出去。
上述任务调度模块进一步包含:
封装子模块,用于按照优先级将消息接收模块获取的消息封装成任务;
任务状态机维护更新子模块,用于为每个封装的任务维护一个任务状态机,并采用状态机转移的方式完成对每个任务的处理状态的实时跟踪;
输出子模块,用于将封装子模块封装成的任务输出至具有不同优先级的多级工作队列中供任务处理模块处理;
其中,所述任务状态机记录的任务状态包含:排队待处理状态、在处理状态,处理出错状态、排队待发送状态以及处理完成状态。
上述任务处理模块进一步包含:
获取任务的子模块,用于按照自身的优先级权限从所述多级工作队列中获取任务,并对任务进行解析;
第二处理子模块,用于按照任务中提供的任务类型对任务进行相应的处理;
其中,所述任务类型包括:系统控制任务、协议数据任务以及定时处理任务。
基于上述系统本发明还提供了一种基于多核网络处理器的实时任务调度方法,该方法基于权利要求1所述的系统,所述方法包含:
步骤101)消息接收模块主动从多核处理器获取消息,当获取到消息时进入下一步骤;
步骤102)任务调度模块按照优先级将获取消息封装成任务,并将该任务按照优先级存入多级工作队列,即优先级高的任务存入较高优先级的工作队列并将优先级低的任务存入较低优先级的工作队列,该任务的状态机进入排队待处理状态;
步骤103)任务处理模块按照优先级顺序轮询多级工作队列,并从多级工作队列中获取并解析任务,按照任务中提供的任务类型对各任务进行相应的处理,该任务进入处理状态;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院声学研究所;北京中科华影传媒技术有限公司,未经中国科学院声学研究所;北京中科华影传媒技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310022689.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:控制式压布器的升降架
- 下一篇:一种片料产品自动码料装置