[发明专利]一种用于资源受限平台的应用重定位方法在审

专利信息
申请号: 202010834639.5 申请日: 2020-08-18
公开(公告)号: CN111984411A 公开(公告)日: 2020-11-24
发明(设计)人: 郭占鑫;张俊;陈庭伟 申请(专利权)人: 上海睿赛德电子科技有限公司
主分类号: G06F9/50 分类号: G06F9/50
代理公司: 成都顶峰专利事务所(普通合伙) 51224 代理人: 匡睿
地址: 200000 上海市浦东新区中国*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 用于 资源 受限 平台 应用 定位 方法
【说明书】:

发明提供一种用于资源受限平台的应用重定位方法,用于解决当前应用加载ELF文件,占用资源多,系统加载应用操作复杂的问题。主要包括:TEXT单元;REL表单元;GOT表单元;DATA单元;重定位单元;采用本发明提供的一种用于资源受限平台的应用重定位方法,可以使得系统加载应用变得简单,应用不需要存储供系统重定位使用的冗余数据,进而减少了应用的体积,达到减少系统资源占用的目的,使得同等资源条件的嵌入式系统可以同时运行更多的应用。

技术领域

本公开涉及嵌入式领域和实时操作系统领域,具体而言是指涉及一种用于资源受限平台的应用重定位方法。

背景技术

传统的应用重定位方法,都是基于解析ELF文件,并将其安装一定的格式,由系统加载到内存中运行的。要实现这种方式的重定位,需要保证ELF中一定要保留足够的信息,能够让系统从中找到需要的信息,如:程序入口、数据段起始地址等。这样也就意味着ELF文件势必会比可执行镜像文件BIN大很多,造成资源的浪费。

但是,如果我们可以通过某种方法,将应用地址的重定位移到应用内部,让应用在启动的时候,根据本身所处位置,动态的完成自身数据地址的重定位。通过这样的机制,应用将被允许编译成一个可执行的镜像文件BIN,因为,通过这种机制,系统在加载应用时就不需要解析应用了,只要分配好资源之后跳转到应用就可以了。这就降低了系统加载应用的难度,而且,通过这种方式应用文件也不需要保留本该包含在ELF文件中的字段,减少了应用的体积,达到减少系统资源占用的目的。

发明内容

本发明所要解决的技术问题在于提供一种用于资源受限平台的应用重定位方法,以解决现有嵌入式系统中使用ELF文件实现应用重定位占用系统资源高的问题。

本发明提供的一种用于资源受限平台的应用重定位方法,包括:

GOT表单元,其是用于存放全局数据地址偏移的数据表;

REL表单元,其用于存放需要重定位的数据所在的偏移;

DATA单元,其用于存放所有包含初值的数据。

TEXT单元,其用于存放所有可执行的代码。

重定位单元,其用于执行真正的数据地址重定位的工作。

进一步地,所述的GOT表单元属于RW段数据,在应用刚启动的时候,会被拷贝到RAM中。

进一步地,所述的RAM空间是系统加载应用前预分配好的,RAM空间的起始地址是加载应用时通过通用寄存器传递给应用的。

进一步地,所述的REL表单元属于RO段数据,其中存储了需要被重定位的数据对应的偏移。在应用刚启动的时候,REL表单元本身并不会被拷贝到RAM中,但其指向的需要重定位的数据会被搬运到RAM中。

进一步地,所述的DATA单元属于RW段数据,其中存储了所有包含初值的数据,包括REL表单元指向的需要重定位的数据。

进一步地,所述的TEXT单元属于RO段数据,存储应用所有的可执行代码,在程序安装的时候会被拷贝到Flash上,并且,本单元处于整个应用的空间排布的首部。

进一步地,所述的重定位单元是执行真正的重定位的代码,其包含在TEXT单元内,在应用执行完拷贝RW段数据的代码后,就会执行本重定位单元的代码。

进一步地,应用的实际运行地址是在完成应用加载进入应用运行空间之后,执行重定位单元之前通过伪指令ADR获得的。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海睿赛德电子科技有限公司,未经上海睿赛德电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010834639.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top