嵌入式系统RAM损坏模式下的多分区引导方法技术方案

技术编号:15690583 阅读:87 留言:0更新日期:2017-06-24 03:05
本发明专利技术提供一种嵌入式系统RAM损坏模式下的多分区引导方法,具体过程为:将主备份计算机系统的程序存储器分为正常启动程序分区和轻量级启动程序分区;若RAM存在故障,根据地面设置进行切机或者启动轻量级启动程序分区;轻量级启动程序分区启动后执行RAM故障检测,通过对外接口输出RAM故障检测结果;根据RAM故障检测结果,制作正常启动程序能在RAM无故障区域运行的二进制可执行文件镜像;由轻量级启动程序跳转到二进制可执行文件镜像起始地址,运行所述二进制可执行文件镜像,恢复设备正常功能。本发明专利技术在RAM损坏模式下,增加了一种运行轻量级启动程序分区的手段,避免仅采取单一的切机处理措施导致本机彻底不能使用的问题。

Multi zone booting method in RAM damage mode of embedded system

The present invention provides an embedded system RAM damage mode under the guidance of the multi partition method, the specific process is: the main program memory backup computer system is divided into normal startup program startup program partition partition and lightweight; if RAM has a fault, according to the ground setting cutting machine or start to start the program of lightweight partition; lightweight partition boot boot program after the implementation of RAM fault detection, through the external interface of output RAM fault detection results; according to the RAM fault detection results, making the normal start program can run in the RAM region of fault free binary executable file mirroring; to binary executable file mirroring the starting address by lightweight boot program jump, run the executable binary image restoration the normal function of equipment. In the RAM damage mode, the invention adds a means of running a lightweight boot program partition, avoiding the problem that the machine can not be used completely only by adopting single cutting processing measures.

【技术实现步骤摘要】
嵌入式系统RAM损坏模式下的多分区引导方法
本专利技术涉及一种多分区引导方法,特别是一种嵌入式系统RAM损坏模式下的多分区引导方法。技术背景嵌入式计算机系统主要由CPU、程序存储器(如PROM或FLASH)和内存(RAM)组成,在RAM中存在永久性故障区域的情况下,计算机系统往往无法正常启动运行。嵌入式计算机系统一般采用单片RAM无备份的设计,同时也不具备专门的维护程序,发现RAM故障后,一般采取切换至备份机工作的处理措施,当前主计算机将无法继续使用。在现有技术中,CN104461657A号专利公开了一种嵌入式系统切换启动装置,装置包括处理器、切换信号生成模块、主备份固化存储器、电子开关模块、固化存储器电源供电模块等,该固化存储器和备用存储器均用于存储引导程序和操作系统;该切换信号生成模块用于生成切换信号;该电子开关模块用于在接收到该切换信号时生成关闭信号;该固化存储器电源供电模块用于未接收到关闭信号时给固化存储器供电,并在接收到该关闭信号时停止供电给固化存储器;该处理器用于在固化存储器得电时,从固化存储器读取引导程序,在固化存储器失电时,从备用存储器读取引导程序。CN102880496A号专利公开了一种嵌入式多系统自启动方法,其特征在于包含一个自启动控制电路,自启动控制电路首先输出第一片选信号至第一程序存储器并开启定时器,CPU从第一程序存储器中读取系统启动数据,系统进行初始化,若启动成功则关闭定时器,若在定时器最大启动时间内未收到正确的状态信号,自启动控制电路输出第二片选信号至第二程序存储器,系统重启并从第二程序存储器中读取启动数据。上述方法主要存在以下问题:(1)主备份程序分别固化在主备两片独立的存储器中,并需设计相应的启动切换控制逻辑电路,带来成本高和设计复杂的问题。出于功耗、成本、体积等考虑,一些嵌入式领域的计算机系统并不适合采用双片程序存储器的设计。(2)主备份程序存储器固化的是相同的内容,程序启动后运行在相同的RAM区域,如果RAM故障,则主备份程序将均启动失败,因此主备份程序采取差异化设计是一种解决问题的技术途径。
技术实现思路
有签于此,本专利技术提出了一种嵌入式系统RAM损坏模式下的多分区引导方法,该方法在程序存储器中增加一个轻量级启动程序分区,在RAM部分损坏情况下,能够引导嵌入式系统进入维护模式,最终使计算机能够重新运行正常启动程序。实现本专利技术的技术方案如下:一种嵌入式系统RAM损坏模式下的多分区引导方法,该方法所针对的嵌入式系统包括主份和备份两套计算机系统,主备份计算机系统切换过程中,当前系统启动后执行关闭另一系统操作;其中步骤一、将主备份计算机系统的程序存储器分为正常启动程序分区和轻量级启动程序分区,两个分区中分别固化主机正常启动程序和轻量级启动程序;步骤二、正常启动程序分区启动过程中检测RAM是否存在故障,若RAM无故障,则运行主机正常启动程序,否则根据地面设置进行切机或者启动轻量级启动程序分区后进入步骤三;步骤三、轻量级启动程序分区启动后执行RAM故障检测,通过对外接口输出RAM故障检测结果;步骤四、根据RAM故障检测结果,制作正常启动程序能在RAM无故障区域运行的二进制可执行文件镜像,并通过输入接口发送给轻量级启动程序,由其写入到RAM无故障区域;步骤五、由轻量级启动程序跳转到二进制可执行文件镜像起始地址,运行所述二进制可执行文件镜像,恢复设备正常功能。进一步地,本专利技术计算机系统上电后,若正常启动程序自检过程中,检测到RAM中不存在故障区域,则将其文本段和数据段从程序存储器全部搬移到RAM中,并从RAM的0地址处开始运行;若正常启动程序启动自检过程中,检测到RAM中存在不可恢复故障区域,则根据地面设置进行切机或者启动轻量级启动程序分区。进一步地,本专利技术所述轻量级启动程序不经过压缩固化到程序存储器中,在RAM出现故障启动轻量级启动程序分区时,其文本段不搬移至RAM,直接运行在程序存储器中,数据段搬移至RAM。进一步地,本专利技术若轻量级启动程序的检测结果为RAM无故障区域足够运行整个正常启动程序,则二进制可执行文件镜像包括整个正常启动程序,否则将正常启动程序进行裁剪后作为二进制可执行文件镜像。进一步地,本专利技术轻量级启动程序分区启动后,轻量级启动程序不执行自主复位,程序启动后执行RAM故障检测。有益效果:(1)RAM损坏模式下,增加了一种运行轻量级启动程序分区的手段,避免仅采取单一的切机处理措施导致本机彻底不能使用的问题。(2)RAM损坏模式下,运行轻量级启动程序分区时仅需要很小部分RAM空间,在RAM部分损坏情况下,也有一定可能性继续运行。(3)RAM损坏模式下,通过运行轻量级启动程序分区,轻量级启动程序具有RAM故障检测功能,能够定位故障区域,从而制定维护方案,最终恢复到正常启动程序。(4)RAM损坏模式下,轻量级启动程序分区运行在程序存储器中,运行过程中使用和正常程序分区不同的RAM地址空间,从而可能避开RAM故障区域,使嵌入式计算机系统能够继续运行。(5)本专利技术不需要主备两片存储器,不需要设计硬件切换电路,正常启动程序和轻量级启动程序固化在同一份只读存取器中。附图说明图1为RAM损坏模式下多分区引导方法示意图;图2为正常启动程序切到轻量级启动程序的流程图。具体实施方式下面结合附图和具体实例对本专利技术进行详细说明。本专利技术所针对的嵌入式系统包括主备份计算机系统,主备份系统采用冷备份设计,能够互相切换,计算机系统由CPU、单片RAM和单片程序存储器等组成。主备机切换过程中,当前机启动后执行关闭另一机操作。本专利技术提供了一种嵌入式系统RAM损坏模式下的多分区引导方法,该方法通过在程序存储器中增加一个轻量级启动程序分区,在RAM部分损坏情况下,能够引导嵌入式系统进入维护模式,根据RAM故障检测结果,制定挽救方案,最终使计算机系统能够重新运行正常启动程序。该方案在嵌入式计算机系统RAM部分故障情况下,提供了一种挽救的可能,提高了嵌入式系统在RAM芯片故障情况下的可靠性和安全性。RAM损坏模式下多分区引导方法示意图如图1所示。步骤一、将主备份计算机系统的程序存储区划分为正常启动程序分区和轻量级启动程序分区两个分区,分别固化正常启动程序和轻量级启动程序。其中,正常启动程序启动后将操作系统和应用软件全部搬移到RAM运行,因此程序存储区中的操作系统和应用软件程序可以是经过压缩后的,但是启动引导程序bootloader不能被压缩。轻量级启动程序运行过程中,文本段不执行搬移至RAM的操作,仅搬移数据段内容,因此轻量级启动程序固化内容不可被压缩。制作固化到程序存储器的二进制bin文件时,将正常启动程序和轻量级启动程序两份二进制bin文件合并为一份固化文件,并在程序存储器的空白区域填充汇编语言空操作指令对应的十六进制机器码。上步中,编译生成二进制bin文件前,分别对正常启动程序和轻量级启动程序在RAM中的运行空间进行指定,使之运行在不同的地址空间范围内。步骤二、设备上电后,默认从正常启动程序分区开始运行,正常启动程序在将操作系统和应用软件搬移至RAM运行前,先执行RAM故障检测。本实施例中较佳采用如下方式在上电后进行RAM自检:启动仅执行一次自检,先往RAM中写一遍标识1,然后从RAM中读出数本文档来自技高网
...
嵌入式系统RAM损坏模式下的多分区引导方法

【技术保护点】
一种嵌入式系统RAM损坏模式下的多分区引导方法,该方法所针对的嵌入式系统包括主份和备份两套计算机系统,其特征在于,步骤一、将主备份计算机系统的程序存储器分为正常启动程序分区和轻量级启动程序分区,两个分区中分别固化主机正常启动程序和轻量级启动程序;步骤二、正常启动程序分区启动过程中检测RAM是否存在故障,若RAM无故障,则运行主机正常启动程序,否则根据地面设置进行切机或者启动轻量级启动程序分区后进入步骤三;步骤三、轻量级启动程序分区启动后执行RAM故障检测,通过对外接口输出RAM故障检测结果;步骤四、根据RAM故障检测结果,制作正常启动程序能在RAM无故障区域运行的二进制可执行文件镜像,并通过输入接口发送给轻量级启动程序,由其写入到RAM无故障区域;步骤五、由轻量级启动程序跳转到二进制可执行文件镜像起始地址,运行所述二进制可执行文件镜像,恢复设备正常功能。

【技术特征摘要】
1.一种嵌入式系统RAM损坏模式下的多分区引导方法,该方法所针对的嵌入式系统包括主份和备份两套计算机系统,其特征在于,步骤一、将主备份计算机系统的程序存储器分为正常启动程序分区和轻量级启动程序分区,两个分区中分别固化主机正常启动程序和轻量级启动程序;步骤二、正常启动程序分区启动过程中检测RAM是否存在故障,若RAM无故障,则运行主机正常启动程序,否则根据地面设置进行切机或者启动轻量级启动程序分区后进入步骤三;步骤三、轻量级启动程序分区启动后执行RAM故障检测,通过对外接口输出RAM故障检测结果;步骤四、根据RAM故障检测结果,制作正常启动程序能在RAM无故障区域运行的二进制可执行文件镜像,并通过输入接口发送给轻量级启动程序,由其写入到RAM无故障区域;步骤五、由轻量级启动程序跳转到二进制可执行文件镜像起始地址,运行所述二进制可执行文件镜像,恢复设备正常功能。2.根据权利要求1所述一种嵌入式系统RAM损坏模式下的多分区引导方法,其特征在于,计算机系统上电后,若正常启动程序自检过程中...

【专利技术属性】
技术研发人员:董振辉韦涌泉潘莉穆强王向晖张红军王建军杨双景张庆君李延齐亚琳
申请(专利权)人:北京空间飞行器总体设计部
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1