[发明专利]一种调度式嵌入式应用软件架构及其实现方法有效
申请号: | 201610107904.3 | 申请日: | 2016-02-26 |
公开(公告)号: | CN105786502B | 公开(公告)日: | 2019-09-03 |
发明(设计)人: | 盛旺;李红朋;李建刚;张龙;朱长明 | 申请(专利权)人: | 成都雅骏新能源汽车科技股份有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/65;G06F9/445 |
代理公司: | 成都顶峰专利事务所(普通合伙) 51224 | 代理人: | 赵正寅 |
地址: | 610000 四川省成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 调度 嵌入式 应用软件 架构 及其 实现 方法 | ||
1.一种调度式嵌入式应用软件架构的实现方法,其特征在于,包括如下步骤:
S1、应用程序烧录入控制器芯片前,设定控制器芯片允许并行运行的功能模块存储区域、最大功能区数、主应用程序存储区域、默认运行功能区;
主应用程序运行
主应用程序在控制器RAM区域运行,应用层功能区管理模块作为功能区调度器运行,组成一个总调度队列,循环执行以下操作;
S21、查找总调度队列中满足运行条件的功能区;
S22、执行查找到的功能区,应用层功能区管理模块首先将步骤S21中查找到的功能区编译源码在RAM区域注册,即拷贝该功能区编译源码至RAM区域,然后将主应用程序跳转至该功能区编译源码注册区域执行;
应用程序更新
更新功能区时,根据控制器芯片设定的功能模块存储区域进行单个或多个功能区更新,设定更新功能区的功能运行指示和功能区跳转指示;
更新主应用程序,根据控制器芯片设定的功能模块存储区域进行整个应用程序更新;
更新整个应用程序,更新工具依次执行主应用程序和功能区更新。
2.根据权利要求1所述的一种调度式嵌入式应用软件架构的实现方法,其特征在于,所述应用层功能区管理模块组成总调度队列的过程为:在主应用程序运行开始时刻,首先遍历控制器芯片设定的功能模块存储区域,获得当前控制器芯片的功能区总数,依据各个功能区的功能运行指示和对应的地址信息组成一个总调度队列。
3.根据权利要求2所述的一种调度式嵌入式应用软件架构的实现方法,其特征在于,所述步骤S21中,查找满足运行条件的功能区的原则为:如果存在多个符合运行条件的功能区,则依据优先级、编号选择优先执行的功能区,相同优先级下以编号小的功能区优先执行;如果不存在符合运行条件的功能区,则运行设定的默认运行功能区;如果既不存在符合运行条件的功能区,也没有设定默认运行功能区,则不断轮序总调度队列。
4.根据权利要求3所述的一种调度式嵌入式应用软件架构的实现方法,其特征在于,在主应用程序运行中,应用层功能区管理模块还定期被强制执行,当此时某一功能区正在执行,应用层功能区管理模块综合当前满足运行条件的功能区优先级、编号和当前运行功能区跳转指示的下一功能区优先级、编号,执行以下操作:
如果当前功能区已经执行完成,即将跳转至功能区跳转指示的下一功能区,应用层功能区管理模块对比下一功能区与当前满足运行条件的功能区优先级、编号,选择优先执行的功能区;
如果正在运行当前功能区,应用层功能区管理模块对比当前功能区与当前满足运行条件的功能区优先级、编号,选择优先执行的功能区;
如果当前功能区已经完全不需要再执行,应用层功能区管理模块注销该功能区,应用层功能区管理模块直接从当前符合运行条件的功能区队列中选择优先执行的功能区;
如果当前功能区临时需要被关闭,且控制器芯片内运行的功能区数小于设定并行运行最大功能区数,应用层功能区管理模块保留该功能区。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都雅骏新能源汽车科技股份有限公司,未经成都雅骏新能源汽车科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610107904.3/1.html,转载请声明来源钻瓜专利网。