【技术实现步骤摘要】
一种固件修改方法、装置、计算机可读存储介质和设备
本申请涉及电子设备
,尤其涉及一种固件修改方法、装置、计算机可读存储介质和设备。
技术介绍
市面上在交换机和服务器领域存在大量基于龙芯(一种国产芯片)的客户定制化硬件板卡,很多硬件驱动相关的功能只需要更改PMON固件(PMON固件是一个兼有BIOS和bootloader部分功能的开源代码软件,多用于嵌入式系统)里面的设备树源码(DeviceTreeSource,DTS)即可。所谓的设备树源码,是一种描述硬件的数据结构。然而,固件厂商(例如硬件板卡厂商)并不对外公开PMON固件的源码,用户便无法利用源码进行固件修改完成自身的功能需求。为此,如何在固件源码未公开的情况下实现对固件的修改,成为本领域技术人员亟需解决的问题。
技术实现思路
本申请提供了一种固件修改方法、装置、计算机可读存储介质和设备,目的在于在固件源码未公开的情况下实现对固件的修改,以满足用户的功能需求。为了实现上述目的,本申请提供了以下技术方案:一种固件修改方法,包 ...
【技术保护点】
1.一种固件修改方法,其特征在于,包括:/n对固件的可执行文件进行解析,得到源码的内存地址;/n基于所述源码的内存地址中所写入的数据,生成源码文件;/n根据用户输入的功能需求信息,对所述源码文件进行更改;/n对更改后的所述源码文件进行编译,得到编码文件;/n基于所述源码的内存地址,查找所述固件的原始编码文件,并利用所述编码文件替换所述固件的原始编码文件。/n
【技术特征摘要】
1.一种固件修改方法,其特征在于,包括:
对固件的可执行文件进行解析,得到源码的内存地址;
基于所述源码的内存地址中所写入的数据,生成源码文件;
根据用户输入的功能需求信息,对所述源码文件进行更改;
对更改后的所述源码文件进行编译,得到编码文件;
基于所述源码的内存地址,查找所述固件的原始编码文件,并利用所述编码文件替换所述固件的原始编码文件。
2.根据权利要求1所述的方法,其特征在于,所述对固件的可执行文件进行解析,得到源码的内存地址,包括:
获取固件的可执行文件中所包含的数据;
对所述可执行文件中所包含的数据进行字符串格式分析,并将字符串格式与预设格式相同的数据,标记为源码;
提取所述源码的内存地址。
3.根据权利要求1所述的方法,其特征在于,所述基于所述源码的内存地址中所写入的数据,生成源码文件,包括:
启动所述固件,并运行第一指令进入所述固件的运行界面;
在所述运行界面中,运行第二指令读取所述源码的内存地址中所写入的数据;
将读取得到的所述数据,拷贝到新建的源码文件中。
4.根据权利要求1所述的方法,其特征在于,所述根据用户输入的功能需求信息,对所述源码文件进行更改之后,还包括:
为更改后的所述源码文件添加预设标识,其中,所述预设标识用于指示所述源码的版本。
5.根据权利要求1所述的方法,其特征在于,所述利用所述编码文件替换所述固件的原始编码文件,包括:
获取所述编码文件的字节总数量,并判断所述字节总数量是否小于预设阈值;
在所述字节总数量不小于所述预设阈值的情况下,删除所述固件的原始编码文件,并将所述编码文件复制到所述固件中。
6.根据权利要求5所述的方法,其特征...
【专利技术属性】
技术研发人员:顾会光,
申请(专利权)人:恒为科技上海股份有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。