[发明专利]一种嵌入式软件频繁复位的控制方法和装置无效
申请号: | 200810240477.1 | 申请日: | 2008-12-22 |
公开(公告)号: | CN101751330A | 公开(公告)日: | 2010-06-23 |
发明(设计)人: | 张常军;赵辰;谢良 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 樊一槿 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 软件 频繁 复位 控制 方法 装置 | ||
技术领域
本发明涉及嵌入式软件,尤其涉及一种嵌入式软件频繁复位的控制方法和装置。
背景技术
随着嵌入式软件业的迅猛发展,软件的维护和更新显得尤为重要,这就必然要求嵌入式软件提供软件升级的功能。为实现可靠的软件升级,业界在许多领域都已经提出了各自实现方案。
在一般的嵌入式软件设计中,都会将其分为IAP(In Application Program,在应用中编程)软件和上层应用软件两个部分,IAP软件设计简单,提供软件最基本的功能,包括上层应用软件的引导和升级等等;而上层应用软件设计相对复杂,用于实现特定的功能。在嵌入式软件的维护过程中,往往因为要满足新的需求或者修改某个BUG(漏洞)需要进行软件更新,软件升级功能就必不可少。一般的做法是,在IAP软件或者在上层应用软件运行状态下,下载新的软件,然后复位运行IAP软件,IAP软件启动后延时一段时间,判断上层应用软件的可执行文件是否有效,若无效则停留在IAP软件下;若有效则跳转到上层应用软件。如图1、图2所示。
图1、图2所示的方式是常见的软件升级方式,但当下载的新软件存在缺陷导致频繁复位时,用户就陷入了即使知道出现了问题也无法解决的窘境,一方面,因为应用软件频繁复位,用户不能在上层应用软件运行状态下找到足够的时间窗口下载新的软件;另一方面,很多应用中对设备的启动时间有严格要求,这就要求延时时间T_delay越短越好,这样用户也很难在IAP软件运行状态下找到足够的时间窗口下载新的软件。
为了解决这一问题,在现有技术中,可以通过采用外部RTC电路获取距离上次IAP软件运行时间间隔的方法,判断是否存在连续Q次复位中,每一次上层应用软件运行时间都小于运行时间阈值T_run,若存在,则说明软件发生了频繁复位,此时给用户提供一个下载新软件的永久时间窗口,等待软件升级。
发明人在实现本发明的过程中,发现一方面,现有技术需要依赖于嵌入式系统中的RTC电路对时间进行统计,不仅增加了成本,而且增加了布板面积,尤其对给小型化嵌入式系统设计带来困难;另一方面,嵌入式软件发生频繁复位后停留在IAP软件,除了重新上电和升级软件以外都无法再次进入上层应用软件,将导致在误操作引起多次频繁复位后,系统停留在IAP软件状态,除非人工干预,否则无法正常工作。
发明内容
本发明实施例的主要目的在于提供一种嵌入式软件频繁复位的控制方法和装置,以解决嵌入式软件发生频繁复位时无法提供下载新软件的时间窗口导致的嵌入式软件无法正常升级和运行的技术问题。
本发明实施例的上述目的是通过如下技术方案实现的:
一种嵌入式软件频繁复位的控制方法,所述方法包括:根据内部定时器确定上层应用软件的运行时间是否大于预先设定的运行时间阈值,如果是,则将异常复位标志置为特定值后存储;当上层应用软件发生非上电复位时,判断异常复位标志是否为所述特定值及复位次数是否大于复位次数阈值,如果异常复位标志不是所述特定值,且复位次数大于复位次数阈值,则启动IAP软件分配的软件升级时间窗口等待软件升级。
一种嵌入式软件频繁复位的控制装置,所述装置包括上层应用软件控制单元和IAP软件控制单元,其中:上层应用软件控制单元用于根据内部定时器确定上层应用软件的运行时间是否大于运行时间阈值,如果是,则将异常复位标志置为特定值后存储,该上层应用软件控制单元包括:定时器,用于统计上层应用软件的运行时间;以及运行时间阈值判断模块,用于判断所述运行时间是否大于运行时间阈值,如果是,则通过所述设置单元将异常复位标志置为特定值后存储到所述存储单元,然后运行现有的上层应用软件;IAP软件控制单元用于在上层应用软件运行过程中发生非上电复位时,判断异常复位标志是否为所述特定值及复位次数是否大于复位次数阈值,如果异常复位标志为所述特定值,且复位次数大于复位次数阈值,则启动IAP软件分配的软件升级时间窗口。
通过本发明实施例的嵌入式软件频繁复位的控制方法和装置,可以不依赖RTC电路也能获取软件复位频繁程度,以决定是否增加额外的软件升级时间窗口,解决了因上层应用软件频繁复位导致的无法正常升级的问题。另外,通过本发明实施例的频繁复位软件升级方法和装置,在嵌入式软件发生频繁复位后,在IAP软件中提供可控的停留时间,使得人为因素导致多次密集复位后,系统过一段时间仍然可以运行到上层应用软件。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为现有技术中的一种软件升级方式;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810240477.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种提高电池内阻一致性的制作方法
- 下一篇:一种天线制造的三维光刻方法