一种boot下验证升级文件的方法技术

技术编号:25223226 阅读:23 留言:0更新日期:2020-08-11 23:12
本发明专利技术涉及应用升级领域,特别涉及一种boot下验证升级文件的方法。其包括以下步骤:S1.启动参数判断:对boot模块软件升级的启动参数进行判断,判断待启动的地址上是否存在boot文件可用,若有则计算出新地址并将boot文件偏移至新地址,并执行步骤S2;若否则直接执行步骤S2;S2.boot启动;S3.flash偏移判断;S4.flash擦除;S5.文件烧写;S6.启动参数设置。该方法针对现有升级boot软件过程的不足,在boot启动阶段新增配置,使系统从特定区域启动,从而在保留原始系统启动文件完整的前提下,验证新软件的功能,达到避免系统挂死和不拆卸flash的目的,从而节约开发时间、提高开发效率。

【技术实现步骤摘要】
一种boot下验证升级文件的方法
本专利技术涉及应用升级领域,特别涉及一种boot下验证升级文件的方法。
技术介绍
基于Linux的嵌入式设备在BSP开发过程中,经常需要升级boot模块软件,通用的升级方法都是擦除flash中特定区域的数据,将新文件写入该特定区域。该方法针对现有升级boot软件过程的不足,达到避免系统挂死和不拆卸flash的目的,从而节约开发时间、提高开发效率。通用的软件升级,方法都是擦除flash中特定区域的数据,将新文件写入该特定区域,当软件出现错误时,经常导致boot不能启动或挂死的情况,从而只能通过拆卸flash或修改硬件引脚,使用U盘烧录的方法进行补救。该方法极大的影响项目开发效率。
技术实现思路
本专利技术提供一种boot下验证升级文件的方法,旨在设备在调试boot驱动中,解决软件出错导致系统不能启动,需要拆解flash的问题。本专利技术提供一种boot下验证升级文件的方法,包括以下步骤:S1.启动参数判断:对boot模块软件升级的启动参数进行判断,判断待启动的地址上是否存在boot文件可用,若有则计算出新地址并将boot文件偏移至新地址,并执行步骤S2;若否则直接执行步骤S2;S2.boot启动:将新boot文件在待启动的地址上启动;S3.flash偏移判断:解析启动参数,并判断待解析的地址是否存在flash数据,若是则将flash数据偏移,并执行步骤S4;若否则直接执行步骤S4;S4.flash擦除:擦除待解析地址上的flash数据,预留出待解析空间;S5.文件烧写:将新的boot文件写入待解析空间内;S6.启动参数设置:使用命令设置启动参数。作为本专利技术的进一步改进,所述步骤S1中,所述启动参数为U-Boot参数,所述U-Boot参数包括设置IP地址、设置串口波特率、传给kernel启动执行的参数。启动参数是新增的,用来判断是否需要boot地址偏移,相比现有的boot升级,通过对启动地址上的参数进行判断,将原有的boot数据转移至其他地方保存,作为备用,以备新的boot升级不成功仍可调用原有的boot进行启动。作为本专利技术的进一步改进,所述步骤S2包括:U-Boot在启动时读取默认参数值,在U-Boot启动后,系统设置U-Image默认参数的入口地址,并将入口地址设置在U-Image地址范围之外。此入口地址的设置避免了U-Image存在同个地址,避免原有数据的覆盖和擦除。作为本专利技术的进一步改进,所述步骤S2中,入口地址通过计算内核、文件系统在flash中位置及大小得出。通过计算可以选取符合设置要求的入口地址,防止设置出错。作为本专利技术的进一步改进,所述步骤S3中,flash数据偏移的位置为在flash的地址范围内,且不与内核、文件系统的地址冲突。此位置范围的设置、首先flash地址不能是坏块地址,其次,该地址最好为空白的整数地址,便于设置和寻址。作为本专利技术的进一步改进,所述步骤S3中,flash数据偏移到RAM中。RAM中可以作为存储flash数据的一种方式,RAM作为系统启动优先读取的存储位置,将flash设置在这里便于系统快速调取。作为本专利技术的进一步改进,所述步骤S3中,解析的启动参数为kernel文件。kernel文件控制着系统的内存管理、数据的输入输出操作和度中断处理,在boot启动时,kernel文件驻留在内存中特定的写保护区域,使别的程序无法占权用这个内存区域。作为本专利技术的进一步改进,所述步骤S6具体包括:系统进入U-Boot后,使用命令setenv和参数选项来设置启动参数。进入U-Boot后再设置符合系统要求的启动参数,使U-Boot升级后能与系统兼容,保持升级后系统启动的稳定。作为本专利技术的进一步改进,所述步骤S6中,设置的启动参数包括串口波特率、硬件设备型号、U-Boot环境变量、内核镜像名称及大小、文件系统类型及所在flash分区、CPU指令集等。启动参数的正确设置是为了能引导内核正确启动。本专利技术的有益效果是:该方法针对现有升级boot软件过程的不足,在boot启动阶段新增配置,使系统从特定区域启动,从而在保留原始系统启动文件完整的前提下,验证新软件的功能,达到避免系统挂死和不拆卸flash的目的,从而节约开发时间、提高开发效率。附图说明图1是本专利技术一种boot下验证升级文件方法中系统启动及升级的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。实施例一:如图1所示,本专利技术方法可以在不拆卸flash,不更改硬件电路图的情况下,通过修改boot启动方式,在保证flash中原文件不被损坏的条件下,验证软件是否正常,节约了定位、分析、解决问题的时间,提高了解决问题的效率。本专利技术的一种boot下验证升级文件的方法,包括以下步骤:S1.启动参数判断:对boot模块软件升级的启动参数进行判断,判断待启动的地址上是否存在boot文件可用,若有则计算出新地址并将boot文件偏移至新地址,并执行步骤S2;若否则直接执行步骤S2;启动参数为U-Boot参数,U-Boot在启动时会读取默认值为U-Boot启动做准备,例如设置IP地址、设置串口波特率、传给kernel启动执行的参数等。S2.boot启动:将新boot文件在待启动的地址上启动;U-Boot在启动时读取默认参数值,U-Boot启动后,系统会设置U-Image默认参数的入口地址,此时需要设置入口地址为在U-Image地址范围之外入口地址通过计算内核、文件系统在flash中位置及大小得出。S3.flash偏移判断:解析启动参数,并判断待解析的地址是否存在flash数据,若是则将flash数据偏移,并执行步骤S4;若否则直接执行步骤S4;解析的启动参数为kernel文件,flash数据偏移的位置为在flash的地址范围内,且不与内核、文件系统的地址冲突,优选将flash数据偏移到RAM中。S4.flash擦除:擦除待解析地址上的flash数据,预留出待解析空间;S5.文件烧写:将新的boot文件写入待解析空间内;S6.启动参数设置:使用命令设置启动参数。系统进入U-Boot后,使用命令setenv和参数选项来设置启动参数。本方法中,boot偏移的作用是让系统启动时,有两个boot可选,目的是在不损坏原文件的条件下验证boot是否可用,具体实现是通过flash偏移完成及启动参数完成的。实施例二:该方法借鉴内存管理机制,实现动态使用flash的目标。例如boot的启动地址为0x0,系统启动过程中,会从flash地址为0x10000的地址将boot数据搬移至RAM中,常规串口升级则将0x10000地址起始的1M空间擦除,再写入新文件。在本次设计中,增加启动参数,使flash可以从0x1000000的地本文档来自技高网...

【技术保护点】
1.一种boot下验证升级文件的方法,其特征在于,包括以下步骤:/nS1.启动参数判断:对boot模块软件升级的启动参数进行判断,判断待启动的地址上是否存在boot文件可用,若有则计算出新地址并将boot文件偏移至新地址,并执行步骤S2;若否则直接执行步骤S2;/nS2.boot启动:将新boot文件在待启动的地址上启动;/nS3.flash偏移判断:解析启动参数,并判断待解析的地址是否存在flash数据,若是则将flash数据偏移,并执行步骤S4;若否则直接执行步骤S4;/nS4.flash擦除:擦除待解析地址上的flash数据,预留出待解析空间;/nS5.文件烧写:将新的boot文件写入待解析空间内;/nS6.启动参数设置:使用命令设置启动参数。/n

【技术特征摘要】
1.一种boot下验证升级文件的方法,其特征在于,包括以下步骤:
S1.启动参数判断:对boot模块软件升级的启动参数进行判断,判断待启动的地址上是否存在boot文件可用,若有则计算出新地址并将boot文件偏移至新地址,并执行步骤S2;若否则直接执行步骤S2;
S2.boot启动:将新boot文件在待启动的地址上启动;
S3.flash偏移判断:解析启动参数,并判断待解析的地址是否存在flash数据,若是则将flash数据偏移,并执行步骤S4;若否则直接执行步骤S4;
S4.flash擦除:擦除待解析地址上的flash数据,预留出待解析空间;
S5.文件烧写:将新的boot文件写入待解析空间内;
S6.启动参数设置:使用命令设置启动参数。


2.根据权利要求1所述boot下验证升级文件的方法,其特征在于,所述步骤S1中,所述启动参数为U-Boot参数,所述U-Boot参数包括设置IP地址、设置串口波特率、传给kernel启动执行的参数。


3.根据权利要求2所述boot下验证升级文件的方法,其特征在于,所述步骤S2包括:
U-Boot在启动时读取默认参数值,在U-Boot启动后,系统设置U-Image默认参数...

【专利技术属性】
技术研发人员:王杰
申请(专利权)人:深圳市吉祥腾达科技有限公司
类型:发明
国别省市:广东;44

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

1