[发明专利]一种嵌入式设备软件重启的方法及设备无效
申请号: | 200910000719.4 | 申请日: | 2009-01-08 |
公开(公告)号: | CN101441576A | 公开(公告)日: | 2009-05-27 |
发明(设计)人: | 柏林 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京鑫媛睿博知识产权代理有限公司 | 代理人: | 龚家骅 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 设备 软件 方法 | ||
技术领域
本发明涉及通信技术领域,尤其涉及一种嵌入式设备软件重启的方法及设备。
背景技术
嵌入式设备,一般运行vxwork等嵌入式操作系统,操作系统信息和应用程序编译成一个可执行程序,根据可执行程序中的操作系统信息进行操作系统初始化,然后运行可执行程序中的应用程序。由于嵌入式设备存放可执行程序的存储介质容量有限,因此,通常需要将可执行程序经过压缩后存放在存储介质(例如Flash)上。
嵌入式设备启动过程一般是上电后运行BOOTROM(Boot read onlymemory,启动只读存储器)上的指令代码,BOOTROM存储的是嵌入式设备的Bootloder(启动引导程序)的指令代码。当Bootloder初始化后,从存储介质中选择经过压缩的可执行程序,执行解压缩动作获得可执行程序;然后跳转到可执行程序中操作系统信息对应的内存地址,执行操作系统的初始化后,运行可执行程序中的应用程序。嵌入式设备启动过程如图1所示,包括以下步骤:
步骤101,嵌入式设备上电;
步骤102,嵌入式设备从BOOTROM中加载Bootloder(启动引导程序);
步骤103,嵌入式设备运行Bootloder,完成基本硬件的初始化,例如,实现内存、网口或串口等的初始化;
步骤104,嵌入式设备从存储介质中选择经过压缩的可执行程序,进行解压缩;将可执行程序中的操作系统信息和可执行程序中应用程序存放到嵌入式设备的内存中。其中,嵌入式设备的内存布局如图2所示,包括.code(代码段)、.data(初始化数据段)、.bss(初始化数据段)和动态内存。其中,.code通常用来存放应用程序的执行代码,这部分区域的大小在程序运行前已经确定,并且内存区域通常属于只读,某些架构也允许代码段为可写,即允许修改程序,在代码段中,也有可能包含一些只读的常数变量,例如字符串常量等。.data用来存放应用程序中已初始化的全局变量,属于静态内存分配,运行时变化。.bss通常用来存放应用程序中未初始化的全局变量,属于静态内存分配,运行时变化,启动时可以全为0。
步骤105,嵌入式设备跳转到解压缩后的内存地址入口,根据内存中的操作系统信息执行操作系统的初始化;
步骤106,嵌入式设备初始化应用程序;
步骤107,嵌入式设备正常运行;
步骤108,嵌入式设备发生异常、软件升级或者特定配置修改后需要重新启动,或者堆叠环境因配置不同重启时,转步骤102,重新加载Bootloder。
现有技术中,嵌入式软件重新启动过程中,步骤102到步骤104中的Bootloder初始化、从存储介质选择可执行程序解压缩的过程占启动时间的很大部分,比较耗费启动时间。
发明内容
本发明提供了一种嵌入式设备软件重启的方法及设备,使嵌入式设备可以快速重新启动。
本发明提供了一种嵌入式设备软件重启的方法,包括以下步骤:
保存嵌入式设备应用程序运行前的硬件状态信息、系统运行时发生改变的且需要重新恢复的可执行程序中的操作系统信息和应用程序中的软件程序信息;
根据所述可执行程序中的操作系统信息初始化操作系统后,运行可执行程序中的应用程序;
当所述嵌入式设备重新启动时,恢复所述保存的硬件状态信息、系统运行时发生改变的且需要重新恢复的操作系统信息和应用程序中的软件程序信息,然后直接运行可执行程序中的操作系统信息初始化操作系统后,运行可执行程序中的应用程序。
优选地,所述保存嵌入式设备应用程序运行前的硬件状态信息、系统运行时发生改变的且需要重新恢复的可执行程序中操作系统信息和应用程序中的软件程序信息,具体为:
从存储介质选择经过压缩的可执行程序,并进行解压缩;
将所述可执行程序中嵌入式设备应用程序运行前的硬件状态信息、系统运行时发生改变的且需要重新恢复的操作系统信息和应用程序中的软件程序信息保存到内存中的保留存储区。
优选地,所述保留存储区中的硬件状态信息为CPU寄存器信息,用于使所述嵌入式设备在重新启动时,恢复运行前的硬件状态。
优选地,所述保存嵌入式设备应用程序运行前的硬件状态信息、系统运行时发生改变的且需要重新恢复的可执行程序中操作系统信息和应用程序中的软件程序信息,具体为:
在存储介质中保存可执行程序中嵌入式设备应用程序运行前的硬件状态信息、系统运行时发生改变的且需要重新恢复的操作系统信息和应用程序中的软件程序信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910000719.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:铡草机用塑料薄膜分拣装置
- 下一篇:轻便型玉米脱粒机