面向嵌入式应用的动态加载机制研究

来源 :重庆大学 | 被引量 : 0次 | 上传用户:trjycp
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
嵌入式系统的广泛应用需要良好的软件系统支撑。随着嵌入式系统的深入发展,系统的可扩展能力已成为一个基本的需求,迫切需要一种机制能在运行状态下配置系统,也就是系统在运行状态下可以动态地添加模块,这种机制就是本论文要研究的动态加载机制。本论文讨论的动态加载机制是应用从零开始的加载机制。这样,系统只需要一个动态加载机制,就可以动态地加载模块以配置适合不同应用需要的嵌入式系统。本论文分析了目前存在的几种加载方式:基于Java的动态加载方式、嵌入式Linux的动态加载方式以及Windows的动态链接库原理,在此基础上提出了面向嵌入式应用的动态加载机制的原理和过程。加载,是指将特定格式的模块从外存或ROM甚至宿主开发环境装入内存并使之可以运行的过程。所谓动态加载,指的是,程序在运行期间需要调用某一模块的功能时,由加载器将该模块即时载入内存,进行相应的重定位处理后将控制权交还调用程序。动态加载机制运用动态链接的原理使得系统具有动态的加载和动态解析的能力,模块只有在被调用执行时才被链接入系统。动态加载分为下载、加载和卸载三个操作,其中下载完成从远程下载目标模块到本地,加载操作完成读入模块到内存,然后对模块未解决的外部引用进行解析(也就是符号解析和重定位)使之可以运行的过程。当模块不再使用时就从内存中卸载。本文首先以目标模块的生命周期为主线,在主线上侧重表现了目标模块的加载、处理、执行和卸载的过程,对动态加载技术涉及到的背景知识进行系统的分析和讨论,指出动态加载技术的关键和发展重点在于符号管理、符号解析和重定位技术,并对它们进行了较为全面的研究和分析。然后,针对这些关键问题给出了具体的实现方法。最后,在以上分析讨论的基础上提出了一种嵌入式系统的动态加载解决方案,描述了相关数据结构和算法,实现了函数原型,测试并验证了这一方案的可行性。
其他文献
随着Internet的飞速发展,网络迅速成为一种重要的信息传播和交换的手段,在Web上出现了丰富的数据资源。为了更有效的利用这些数据,需要在一个统一的平台上对这些数据进行集成和
自然现象的建模和渲染是近十几年来计算机虚拟现实与系统仿真的一个重要研究领域,而基于物理模型的流体模拟近年来成为这个领域的一个研究热点。由于在现实世界中运动规律的复
数据挖掘技术被广泛地应用于社会各个领域,数据挖掘的成功与否和适用性能在很大程度上取决于数据质量。在获取数据的过程中,无法避免空缺值的产生。空缺值的存在对数据质量影
现代远程教育是构筑知识经济时代人们终身学习的一种新型教育模式。基于Web的远程教学平台能够充分发挥信息技术在教学中的优势,能够体现以学生为主体,教师为主导的教学理念,
知识表示和知识抽取是人工智能领域的重要内容。术语关系获取是知识抽取的一个重要研究方向。术语是指代实体的词语,术语间的关系表达实体间的关系。术语关系获取是指从结构
网络应用的迅速发展使得企业级客户对软件的功能、易用性、安全性等提出了更高的要求,企业级Web应用程序成为一个采用多种第三方组件的、复杂的分布式应用系统,在其使用和维
随着网络技术的快速发展、Internet在人们生活中的广泛应用,以及软件系统日益复杂化和应用领域的日趋广泛化,人们对软件系统的灵活性、拓展性的要求也在不断的提高,这使得软
无线通信作为人们获取、交流信息的技术手段,应用越来越广泛。但随着其应用领域的不断拓展,无线通信中所面临的语音问题也日益突出。例如在车用免持电话、电视电话会议等场合
设备侧代理系统在整个网络管理系统中处于基础地位,它是监控网络系统运行的源,其应用价值越来越明显的体现出来。本文从网管规范和具体应用要求出发,提出了一个网管系统设备
蓝牙技术是移动通信技术和计算机网络技术结合的产物,它的出现提供了一种开放的无线语音和数据通信标准。随着短距离无线通信在当今社会中越来越广泛的应用,无线个人区域网成