嵌入式环境下的动态加载机制的设计与实现

来源 :重庆大学 | 被引量 : 0次 | 上传用户:shikongqidian
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
嵌入式系统的广泛应用需要良好的软件系统支撑。随着嵌入式系统的深入发展,系统的可扩展能力已经成为一个基本的需求,迫切需要一种机制能在运行状态下配置系统,也就是系统在运行状态下可以动态地添加模块,这种机制就是本论文要研究的动态加载机制。本论文中动态加载机制是应用从零开始的加载机制。这样系统只需要一个动态加载机制,就可以动态地加载模块配置适合不同应用需要的嵌入式系统。本论文分析了目前存在的几种加载方式:基于Java的动态加载方式、嵌入式Linux的动态加载方式及Windows的动态链接库原理,在此基础上提出了一般意义下的动态加载机制的原理和动态加载机制的一般过程。动态加载机制的原理要求具有动态的加载和动态的解析的能力。动态加载机制运用动态链接原理,模块只有在调用执行时才被链接入系统。动态加载分为下载、加载和卸载三个操作,下载完成从远程下载目标模块到本地,在加载操作里要完成读入模块到内存,然后对模块的未解决的外部引用进行解析(也就是符号解析和重定位)。当模块不再使用时就从内存中卸载。动态加载机制中还有很多的问题需要考虑。有些关键问题在设计动态加载机制时就必须要解决,有些问题可以在运行过程中再解决。这些关键问题有模块格式的选择、模块的组织方式、模块间通信机制、栈空间管理、名字空间管理以及符号解析和重定位。对于这些关键问题我们给出了具体的解决方案。除了这些关键问题,还有一些问题例如模块依赖、类型安全、加载中断等问题可以在运行过程中考虑或者暂时不考虑。最后针对小内存环境下的动态加载机制,我们用一个一般意义下的模拟实验来说明动态加载机制的部分要素。在该模拟实验中,我们选用了Turbo C2.0环境下产生的OBJ目标文件作了限制后作为可加载的目标模块,介绍了动态加载的体系结构,着重说明动态加载的两个要素:符号解析和重定位的实现。本论文的工作给出了一般意义下的动态加载机制的原理和过程,以及必须要解决的关键问题及解决方案,对以后动态加载机制的研究和设计都有比较重要的参考价值。
其他文献
建筑表现要以一定的中介系统或表现媒介来向人们展示建筑及其设计的内容、特征及涵义,传达设计意向,更是与建筑设计过程交互作用不可分割的的一个手段。从建筑表现媒介工具的技
通信协议软件一般要求实时高效、稳定可靠,即能持续地提供可靠的通信服务。对这类软件产品而言,可靠性是一个非常重要的指标,而如何提高其可靠性是当前一个非常重要且急需解决的
从20 世纪90 年代开始,在国际网络界就进行了许多关于高性能的网络体系结构的研究。但由于这些研究都是基于传统的层次结构网络,所以虽然它能对网络的性能进行改善,但难以解
随着互联网的快速发展,网络上每天产生的新网页多到数不胜数,其中新闻、博客类网页占据了大部分,也随着自媒体的火热,新闻、博客类网页的比例也在逐年增高。为了全自动获得网页中
WCDMA是第三代移动通信的重要标准之一.本报告根据阿尔卡特/上海贝尔阿尔卡特股份有限公司在3G方面的产品战略,基于软件无线电技术,力求为WCDMA系统平滑演进到高速下行分组接
随着计算机、微电子在技术和工艺方面的飞速发展,嵌入式系统也得到了巨大的发展,从它在工业、民用、军事、科研等各个方面的应用,可以看出它正逐渐影响着人们的生活.针对如此
视觉信息是人们由客观世界获得信息的主要来源,占人们依靠感官从外界获得的信息总量的3/4以上;而带给我们视觉世界中的所有信息的正是图像。我们知道,图像所提供的直观作用,
近年来,闪存作为一种较为成熟的固态存储介质,具有速度高、体积小、重量轻、功耗低等优点,正逐步应用到企业级服务器和高性能计算领域,为高性能计算中存储系统性能的提高带来
数据库是现实世界中某些现象或活动的状态和演化【1】。由于许多数据要一起被访问和修改以便正确反映现实世界,因此必须保证相关数据的一致性。任何对相关数据修改的中断,或
大数据时代,天津港发展迅速,如何改变数据分散和二维显示模式相对落后的现状,解决服务质量低、实时性欠佳、资源浪费严重、运维成本高、统一规范缺乏、信息孤岛和系统扩展困