[发明专利]业务同步处理方法和多核设备有效
申请号: | 201310082439.9 | 申请日: | 2013-03-15 |
公开(公告)号: | CN103226496A | 公开(公告)日: | 2013-07-31 |
发明(设计)人: | 杨逸 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 杨春香;宋志强 |
地址: | 310053 浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 业务 同步 处理 方法 多核 设备 | ||
1.一种业务同步处理方法,该方法应用于多核处理器中的数据转发核,其特征在于,将所述数据转发核虚拟化为N个不同的VCPU,该N个VCPU对应不同的栈空间、且同一时刻只有一个VCPU占用所述数据转发核的资源处于工作状态,而其它VCPU处于非工作状态;该方法包括:
A,任一VCPU在处于工作状态时,如果识别出当前待处理的报文所涉及的业务为本VCPU不能独自执行的复杂业务,则对所述报文进行复杂业务之前的简单业务处理,将处理后的报文传递给用于执行所述复杂业务的业务处理模块,保存本VCPU当前在所述数据转发核的运行轨迹至本VCPU对应的栈空间,释放本VCPU当前占用的数据转发核资源,从处于非工作状态的VCPU中选择一个VCPU占用该被释放的数据转发核资源进入工作状态,同时将本VCPU的状态切换为非工作状态。
2.根据权利要求1所述的方法,其特征在于,步骤A进一步包括:设置本VCPU的复杂业务处理标识为表示业务未完成的第一值;
步骤A中,所述从处于非工作状态的VCPU中选择一个VCPU占用该被释放的数据转发核资源并进入工作状态包括:
检测每一处于非工作状态的VCPU的复杂业务处理标识;
当检测到至少一个处于非工作状态的VCPU的复杂业务处理标识为第二值时,选择复杂业务处理标识为第二值的其中一个VCPU占用该被释放的数据转发核资源并进入工作状态,其中,任一VCPU对应的复杂业务处理标识为第二值,是指该VCPU传递至所述业务处理模块的报文已被所述业务处理模块进行复杂业务处理且返回至该VCPU;
当检测到处于非工作状态的VCPU中不存在复杂业务处理标识为第二值的VCPU、且有至少一个VCPU不存在复杂业务处理标识时,按照设定的VCPU执行顺序选择下一个不存在复杂业务处理标识的VCPU占用该被释放的数据转发核资源并进入工作状态;
当检测到每一处于非工作状态的VCPU存在复杂业务处理标识、且该复杂业务处理标识为第一值时,执行同步等待,直至检测到至少一个处于非工作状态的VCPU的复杂业务处理标识为第二值,选择复杂业务处理标识为第二值的其中一个VCPU占用该被释放的数据转发核资源进入工作状态。
3.根据权利要求1所述的方法,其特征在于,步骤A中,如果VCPU识别出当前待处理的报文所涉及的业务为本VCPU独自执行的业务,则进一步包括:
对所述报文进行对应的业务处理;
在完成所述报文的处理后,检测每一处于非工作状态的VCPU对应的复杂业务处理标识;
当检测到至少一个处于非工作状态的VCPU的复杂业务处理标识为第二值时,保存本VCPU当前在所述数据转发核的运行轨迹至本VCPU对应的栈空间,释放本VCPU当前占用的数据转发核资源,将本VCPU的状态从当前的工作状态切换为非工作状态,并选择复杂业务处理标识为第二值的其中一个VCPU占用该被释放的数据转发核资源进入工作状态;
当检测到处于非工作状态的VCPU中不存在复杂业务处理标识为第二值的VCPU时,继续执行下一个报文的处理。
4.根据权利要求2或3所述的方法,其特征在于,复杂业务处理标识为第二值的VCPU在被选择进入工作状态时,进一步包括:
获取所述业务处理模块返回的经过复杂业务处理的报文;
依据本VCPU对应的栈空间记录的运行轨迹处理所述业务处理模块返回的报文;
在完成报文的处理后删除本VCPU对应的栈空间记录的所述运行轨迹、以及删除VCPU的复杂业务处理标识,并检测每一处于非工作状态的VCPU对应的复杂业务处理标识,
当检测到至少一个处于非工作状态的VCPU对应的复杂业务处理标识为第二值时,保存本VCPU当前在所述数据转发核的运行轨迹至本VCPU对应的栈空间,释放本VCPU当前占用的数据转发核资源,将本VCPU的状态从当前的工作状态切换为非工作状态,并选择复杂业务处理标识为第二值的其中一个VCPU占用该被释放的数据转发核资源并进入工作状态;
当检测到处于非工作状态的VCPU中不存在复杂业务处理标识为第二值的VCPU时,继续执行下一个报文的处理。
5.根据权利要求2所述的方法,其特征在于,不存在复杂业务处理标识的VCPU在被选择进入工作状态时,进一步包括:
从所述数据转发核的缓存中获取当前待处理的报文,依据本VCPU对应的栈空间记录的运行轨迹处理获取的报文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310082439.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:LED封装结构
- 下一篇:电容式触控面板及制作方法