[发明专利]在嵌入式系统剪裁可重定位的ELF文件的方法有效
申请号: | 200810061580.X | 申请日: | 2008-05-07 |
公开(公告)号: | CN101271399A | 公开(公告)日: | 2008-09-24 |
发明(设计)人: | 陈纯;卜佳俊;董玮;腾国栋 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 林怀禹 |
地址: | 310027浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 剪裁 定位 elf 文件 方法 | ||
1.一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于该方法的步骤如下:
1)根据原ELF文件所依赖的体系结构重新定义ELF文件中需要的数据类型;
2)由步骤1)定义的数据类型重新定义ELF文件中的结构体;
3)解析原ELF文件,读取原ELF文件信息,根据此信息填充步骤2)中的结构体;
4)由步骤3)所得的重新定义ELF文件信息获取文件的重定位段,根据其中的重定位信息,提取重定位相关联的符号,组织这些符号成为新的符号表;
5)根据步骤4)所组成的新的符号表提取其在原ELF文件字符串表中的名称,组建新的字符串表;
6)根据步骤3)中获得的结构体,步骤4)中的新的符号表和步骤5)中的新的符号表和原ELF文件的信息,来组织成一个新的文件,用新的数据结构定义代替原来的数据结构,用新的符号表和字符串表代替原来的符号表和字符串表,将其余没有改变的节内容拷贝到新的文件中。
2.根据权利要求1所述的一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于:所述的重新定义ELF文件中需要的数据类型,是ELF文件的基本数据类型,是基于32位环境的,包括Elf32_Addr,Elf32_Half,Elf32_Off,Elf32_Sword,Elf32_Word和unsigned_char。
3.根据权利要求1所述的一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于:所述的重新定义ELF文件中的结构体,包括Elf32_ehdr,Elf32_shdr,Elf32_rel,Elf32_rela和Elf32_sym结构体。
4.根据权利要求1所述的一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于:所述的原和重新定义的ELF文件中的重定位是连接符号引用和符号定义的过程,符号表保存了原和重新定义的ELF文件中涉及到的符号的信息,只有和重定位关联的符号才会在重定位过程中引用到,根据其中的重定位信息,提取重定位相关联的符号,用这些需要用到的符号来组织称新的符号表。
5.根据权利要求1所述的一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于:所述的原和重新定义的ELF文件中的字符串表保存着以NULL终止的一系列字符,原和重新定义的ELF用这些字符串来描绘符号名,因此要重新提取新的符号表中符号名组织新的字符串。
6.根据权利要求1所述的一种在嵌入式系统剪裁可重定位的ELF文件的方法,其特征在于:所述的组织成一个新的文件的时候,采用的是新的结构体,新的符号表,新的字符串表和原ELF文件中信息,不会改变原ELF文件的.text,.data,.bss段的信息,不会影响原ELF文件的运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810061580.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种马氏体耐热不锈钢气体保护焊焊丝
- 下一篇:一种轧辊