实时Java平台的研究 ——一种面向实时Java平台的类装载器的设计

实时Java平台的研究 ——一种面向实时Java平台的类装载器的设计

论文摘要

嵌入式系统可以以最高效的方式执行一些专门的任务,因此它在人类生活的各个方面都得到了应用。绝大多数嵌入式系统对时间控制的要求很高,因此嵌入式系统也被认为是实时系统,这种系统要求在限定的时间里对某一事件做出反应并完成处理。Java是一门面向对象的语言,在很多软件开发领域里它都得到了广泛的应用。Java的一些优点,比如跨平台、自动内存管理以及指针算法的取消对于嵌入式实时系统的开发者来说很具有吸引力。然而,由于Java的类动态装载和垃圾收集技术导致了任务执行时间的不可预测性,以及嵌入式系统对各方面资源的苛刻限制,Java很少被用于嵌入式实时系统应用领域。针对传统Java技术在嵌入式实时系统开发方面的不足,一些新的Java语言规范被推出。其中,Sun公司联合IBM、Microware等公司制定的实时Java规范(RTSJ)为实时Java平台的实现提供了参考。实时Java规范对Java进行实时性扩展的几个地方包括调度、内存管理、线程、同步、计时、时钟和异步事件处理。随着实时Java规范的推出,如何实现适用于嵌入式系统的高效实时Java平台就成为了研究热点。论文的主要研究内容是如何改进传统的类装载器,使其消除动态类装载对实时性能的不利影响。本文设计的类装载器采用了提前装载、早解析的方式,它可以在应用程序被执行前就装载完所有涉及到的类,所有非实时的操作,如类的装载、解析和连接、字节码的优化、空间分配都在程序运行前得到处理,最后由类装载器生成的内存映像文件可以被Java处理器执行。Java处理器在执行应用程序过程中不再进行装载。为了降低Java处理器硬件实现的复杂度,提高Java处理器的执行效率,论文还对Java字节码中的一些复杂指令进行了简化。简化后的指令在操作码字段上与原来的相同,只是对操作数进行替换。由于进行了早解析,原先操作数中保存的间接引用都可以被替换成直接引用。Java处理器在执行简化后的指令时,可以直接得到所需要的信息,从而避免了运行时常量池解析。实验结果表明本文设计的类装载器可以提前装载应用程序涉及到的所有类,Java处理器在执行程序时所需要的所有信息都被保存到了生成的内存映像文件中,从而提高了系统的实时性。

论文目录

  • 摘要
  • Abstract
  • 第一章 绪论
  • 1.1 研究背景与意义
  • 1.2 Java 平台研究现状
  • 1.3 研究内容
  • 第二章 Java 虚拟机与嵌入式实时Java
  • 2.1 Java 体系结构
  • 2.2 Java 虚拟机的体系结构
  • 2.2.1 数据类型
  • 2.2.2 Java 虚拟机指令集
  • 2.2.3 Java 方法的调用
  • 2.3 嵌入式Java
  • 2.4 实时Java
  • 2.4.1 实时系统
  • 2.4.2 实时需求
  • 2.4.3 实时Java 面临的挑战
  • 2.4.4 实时Java 规范
  • 2.4.5 RTSJ 的缺陷及现有的改进方案
  • 2.4.6 基于RTSJ 的实时Java 平台
  • 第三章 类装载器的设计
  • 3.1 实时Java 平台工作模式
  • 3.2 类装载器实现的基本思路
  • 3.3 类装载器所在位置的选择
  • 3.4 类装载器的具体实现
  • 3.4.1 数据结构设计
  • 3.4.2 类装载器功能设计
  • 3.5 字节码指令的优化
  • 3.5.1 字节码指令优化的基本思路
  • 3.5.2 字节码指令优化的具体实现
  • 3.5.3 几条复杂指令的思考
  • 第四章 实验结果
  • 第五章 结论与展望
  • 5.1 结论
  • 5.2 未来的工作
  • 致谢
  • 参考文献
  • 附录:作者在攻读硕士学位期间发表的论文
  • 相关论文文献

    标签:;  ;  ;  ;  ;  ;  

    实时Java平台的研究 ——一种面向实时Java平台的类装载器的设计
    下载Doc文档

    猜你喜欢