[发明专利]一种变量地址更新方法、装置及汽车在审
| 申请号: | 201910473291.9 | 申请日: | 2019-05-31 |
| 公开(公告)号: | CN112015444A | 公开(公告)日: | 2020-12-01 |
| 发明(设计)人: | 王亮;余军;吕玉军;纪伟;代康伟;梁海强 | 申请(专利权)人: | 北京新能源汽车股份有限公司 |
| 主分类号: | G06F8/65 | 分类号: | G06F8/65 |
| 代理公司: | 北京银龙知识产权代理有限公司 11243 | 代理人: | 许静;安利霞 |
| 地址: | 102606 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 变量 地址 更新 方法 装置 汽车 | ||
1.一种变量地址更新方法,应用于汽车软件系统,其特征在于,包括:
软件系统更新前,获取配置XML文件,所述配置XML文件中记录有当前版本软件系统中的所有第一标定变量地址;
获取C文件,所述C文件中描述有新版本软件系统中的所有待更新地址的第二标定变量;
根据所述第一标定变量地址,对所述C文件中的第二标定变量进行地址更新。
2.根据权利要求1所述的变量地址更新方法,其特征在于,获取C文件的步骤,包括:
解析配置XML文件,获取所述第二标定变量所在C文件文件名合集;
根据所述C文件文件名合集,找到并逐个读取C文件,解析C文件中描述的新版本软件系统中的所有待更新地址的第二标定变量。
3.根据权利要求2所述的变量地址更新方法,其特征在于,根据所述第一标定变量地址,对所述C文件中的第二标定变量进行地址更新的步骤,包括:
遍历C文件中的所有第二标定变量,并在配置XML文件中进行查找;
若找到,则判断所述第二标定变量为当前版本软件系统中已存在的第一标定变量,并将所述配置XML文件中记录的此第一标定变量的地址附加到C文件中所述第二标定变量所在的表达式中;
若未找到,则判断此第二标定变量为新版本系统中新增加的变量,为此新增的第二标定变量分配第一地址空间,并将所述第一地址空间附加到C文件中此第二标定变量所在的表达式中。
4.根据权利要求3所述的变量地址更新方法,其特征在于,为此新增的第二标定变量分配第一地址空间的步骤,包括:
解析配置XML文件,获取用于进行地址分配的第一配置信息,所述第一配置信息包括:C文件中可能出现的变量类型及编译器对所述变量类型定义的对齐宽度,地址池的起始地址及大小配置中的至少一项;
根据第一配置信息,在地址池中找到满足对齐宽度且空闲的第一地址空间,将所述第一地址空间分配给所述新增的第二标定变量,并在配置XML文件中进行记录。
5.根据权利要求4所述的变量地址更新方法,其特征在于,根据第一配置信息,在地址池中找到满足对齐宽度且空闲的第一地址空间,将所述第一地址空间分配给所述新增的第二标定变量,并在配置XML文件中进行记录的步骤之后,还包括:
在地址池中删除所述第一地址空间。
6.根据权利要求1所述的变量地址更新方法,其特征在于,根据所述第一标定变量地址,对所述C文件中的第二标定变量进行地址更新的步骤之后,还包括:
在配置XML文件中删除新版软件系统中未记录的第一标定变量。
7.根据权利要求6所述的变量地址更新方法,其特征在于,在配置XML文件中删除新版本软件系统中未记录的第一标定变量的步骤,包括:
遍历所述配置XML文件中存储的第一标定变量,并在所述C文件的数据结构中进行匹配查找;
若未找到,则判断新版本系统中未记录所述第一标定变量,在配置XML文件中删除所述第一标定变量的记录并将删除的所述第一标定变量的第二地址空间返还给地址池。
8.根据权利要求1所述的变量地址更新方法,其特征在于,软件系统更新前,解析配置XML文件,所述配置XML文件中记录有当前版本软件系统中的所有第一标定变量地址的步骤之前,所述方法还包括:
判断地址池是否初始化;
若地址池未初始化,则利用配置XML文件初始化地址池。
9.根据权利要求1所述的变量地址更新方法,其特征在于,根据所述第一标定变量地址,对所述C文件中的第二标定变量进行地址更新的步骤之后,还包括:
获取附加有第二标定变量地址信息的C文件;
根据附加有第二标定变量地址信息的C文件进行软件系统更新。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京新能源汽车股份有限公司,未经北京新能源汽车股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910473291.9/1.html,转载请声明来源钻瓜专利网。





