[发明专利]映像文件生成方法及装置在审
申请号: | 201410178002.X | 申请日: | 2014-04-28 |
公开(公告)号: | CN103995726A | 公开(公告)日: | 2014-08-20 |
发明(设计)人: | 魏伟;肖春鹏;曾建江 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 罗振安 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 映像 文件 生成 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种映像文件生成方法及装置。
背景技术
现有的多核DSP(Digital Signal Processor,数字信号处理)系统中的内存分布通常比较复杂,可能存在多级内存空间。比如最常见的划分如下:各个核私有的L1级内存或L2级内存,各个映像文件间共享的L2级内存或L3级内存,以及所有核共享的DDR(Double Data Rate,双倍速率)内存。在实际应用中,多核系统会根据不同业务需要,利用多级内存生成不同的映像文件(Image)。
现有技术在生成映像文件时,一次生成多个映像文件。参见图1,详细过程如下:先将多个核划分为至少一个核组;其中,核(core)0、核1、核2为一个核组,核3为一个核组,核4、核5为一个核组。在生成映像文件时,存储在核0、核1及核2对应的多级内存中的至少一个源文件在经过编译及汇编处理后,在链接阶段根据对应的链接脚本生成映像文件ImageA;存储在核3对应的多级内存中的至少一个源文件在经过编译及汇编处理后,在链接阶段根据对应的链接脚本生成映像文件ImageB;存储在核4、核5对应的多级内存中的至少一个源文件在经过编译及汇编处理后,在链接阶段根据对应的链接脚本生成映像文件ImageC。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
由于一次生成多个映像文件,所以后续过程中加载器在加载映像文件时,不但需要分多次分别加载每个映像文件,而且由于多级内存中存在各个核共享的L3内存及DDR内存,所以在加载映像文件时,存在共享内存多次重复加载的问题,加载速度慢、加载效率低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种映像文件生成方法及装置。所述技术方案如下:
第一方面,提供了一种映像文件生成方法,所述方法包括:
在编译及汇编阶段,对多级内存存储的多个源文件依次进行编译处理及汇编处理,得到多个可重定位文件;
在链接阶段,根据所述多个可重定位文件和至少一个链接脚本,生成单一映像文件。
在第一方面的第一种可能的实现方式中,所述在编译及汇编阶段,对多个源文件进行编译处理及汇编处理,得到多个可重定位文件,包括:
在编译阶段,分别为所述多个源文件添加预设段属性,得到多个中间源文件;对所述多个中间源文件进行编译,得到多个汇编文件;
在汇编阶段,对所述多个汇编文件进行汇编处理,得到多个可重定位文件。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述多个重定位文件和至少一个链接脚本,生成单一映像文件,包括:
为链接脚本添加预设字段,得到新的链接脚本;
根据所述多个可重定位文件和所述新的链接脚本,生成所述单一映像文件。
结合第一方面,在第一方面的第三种可能的实现方式中,所述在链接阶段,根据所述多个可重定位文件和至少一个链接脚本,生成单一映像文件,包括:
在一次链接阶段,根据所述多个源文件和多个链接脚本,生成多个初始映像文件;
在二次链接阶段,根据所述多个初始映像文件和一个链接脚本,生成所述单一映像文件。
结合第一方面、第一方面的第一种至第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述单一映像文件中包括映射段;其中,所述映射段至少包括核数量信息、核组配置信息、加载段地址索引信息、私有内存段的加载核组信息、私有内存段的虚拟加载地址映射信息。
结合第一方面的第一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述预设段属性为属性attribute属性。
结合第一方面的第二种可能的实现方式,在第一方面的第六种可能的实现方式中,所述预设字段为虚拟virtual字段。
结合第一方面的第四种可能的实现方式,在第一方面的第七种可能的实现方式中,所述根据所述多个可重定位文件和至少一个链接脚本,生成单一映像文件之后,所述方法还包括:
获取所述单一加载映像文件的映射段;
对所述单一映像文件的映射段进行解析,得到核数量信息、核组配置信息、加载段地址索引信息、私有内存段的加载核组信息、私有内存段的虚拟加载地址映射信息;
根据所述核数量信息,确定多核系统的核数量;
根据所述核组配置信息,确定所述多核系统中多个核的分组情况;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410178002.X/2.html,转载请声明来源钻瓜专利网。