学位论文 > 优秀研究生学位论文题录展示

Java虚拟机内存管理及其实时性的研究

作 者: 徐志强
导 师: 须文波
学 校: 江南大学
专 业: 计算机应用技术
关键词: Java虚拟机 实时Java规范 内存区域 实时Java 领域内存
分类号: TP312.2
类 型: 硕士论文
年 份: 2009年
下 载: 160次
引 用: 0次
阅 读: 论文下载
 

内容摘要


Java语言的面向对象,平台无关,安全,开发效率高等特点,使其在许多领域中得到了越来越广泛的应用。但是由于Java程序由于自身的局限性,使其无法应用于实时领域。由于垃圾收集器运行时将中断Java程序的运行,其运行时刻和垃圾搜集时间具有不确定性。在应用程序高频率分配和释放内存时,垃圾收集要占用的时间可能比程序自身运行的时间还要多。这些都使得Java程序无法满足在实时领域应用的要求。Java实时规范(RTSJ)的内存管理机制既保证了Java本身的内存安全的优势,同时又保证了在实时系统中对内存操作的的可预测性。不产生垃圾的代码不会导致请求式的垃圾收集;不引用堆中对象的代码可以抢占垃圾收集器的线程。为了能够保留垃圾收集的好处又能避免垃圾收集器对实时特性的影响,基于以上两个事实RTSJ扩展了Java内存管理机制,在传统的堆内存的基础上,又提出了内存区域(Memory Area)的概念。在新增加的这几个内存区域中分配对象不会导致垃圾收集器的执行,不会使系统受到其不可预测性的影响。本文根据RTSJ的要求,介绍了RTSJ内存管理机制实现的各个基本要点,包括使用Display树的内存引用检查,LTMemory和VTMemory的分配机制,ScopeStack的维护等。文章通过研究一个可运行在多种操作系统并兼容多种硬件平台的开源的Java虚拟机SableVM的基础上,结合国内外最新的理论,提出了一个对其实时性进行改进的方案,并对其进行实验。该方案有别于国内外现有的实时Java虚拟机的实现,在内存管理方面即符合RTSJ的要求,同时又保证了Java程序可移植性的要求。

全文目录


摘要  3-4
Abstract  4-7
第一章 绪论  7-11
  1.1 研究背景、目的及意义  7-8
  1.2 研究现状  8-9
  1.3 本文研究的内容  9-11
第二章 实时系统与实时 Java  11-14
  2.1 实时系统  11-12
    2.1.1 实时系统的概念  11
    2.1.2 实时系统的特性  11-12
    2.1.3 硬实时与软实时  12
  2.2 实时 Java  12-14
    2.2.1 Java 与实时Java  12-13
    2.2.2 实时Java 规范  13-14
第三章 实时 Java 虚拟机及其内存管理  14-24
  3.1 实时 Java 虚拟机与嵌入式实时系统  14-15
  3.2 普通 Java 虚拟机的内存管理  15-21
    3.2.1 方法区  16-17
    3.2.2 Java 堆  17-19
    3.2.3 Java 栈  19-20
    3.2.4 寄存器  20
    3.2.5 本地方法栈  20-21
  3.3 实时 Java 虚拟机的内存管理  21-24
    3.3.1 内存区域的管理  21-22
    3.3.2 垃圾收集  22
    3.3.3 内存分配时间  22
    3.3.4 对象引用规则  22-24
第四章 实时内存管理机制的设计  24-37
  4.1 内存区域模型  24-27
  4.2 线程的改进  27-30
    4.2.1 实时线程模拟  27-28
    4.2.2 Scope Stack 的实现  28-30
  4.3 内存区域的分配与回收  30-32
    4.3.1 内存区域的分配  30-31
    4.3.2 内存区域的回收  31
    4.3.3 一个示例  31-32
    4.3.4 内存分配时间  32
  4.4 内存引用检查  32-34
  4.5 垃圾收集器的改进  34-37
    4.5.1 传统的拷贝垃圾收集器的实现  34-35
    4.5.2 对垃圾收集器的改进  35-37
第五章 实验结果与分析  37-45
  5.1 实现方法  37
  5.2 实验结果与分析  37-45
    5.2.1 固定分配内存实验  38-40
    5.2.2 递增分配内存实验  40-43
    5.2.3 总结  43-45
第六章 总结与展望  45-46
致谢  46-47
参考文献  47-50
附录:作者在攻读硕士学位期间发表的论文  50

相似论文

  1. 数字家庭媒体系统设计与实现,TP311.52
  2. Java安全体系结构设计与实现,TP393.08
  3. 基于JDBC接口的嵌入式数据库在PDA上的应用研究,TP311.13
  4. 移动Java平台的研究与实现,TN929.5
  5. 实时Java平台的配套软件工具包设计及实现,TP311.52
  6. Java卡测试平台的设计与实现,TP311.52
  7. DT-JVM:分布式Java虚拟机的树型集成调度平台研究与设计,TP311.52
  8. 面向JAVA代码的加密及动态解密机制的研究与实现,TP309.7
  9. 虚拟化服务器管理系统的设计与实现,TP311.52
  10. 基于CK-CPU的Android系统之Dalvik移植及性能研究,TP368.1
  11. 基于JAVA语言的设计模式识别的研究与应用,TP311.52
  12. 基于JC3 Classic虚拟机的程序运行时间的估计,TN409
  13. 多任务虚拟机(MVM)系统架构的研究与应用,TP302
  14. 嵌入式Java虚拟机CLDC HotSpot实现分析、移植及优化,TP311.52
  15. 基于多核环境下的高效并发性垃圾收集器,TP311.52
  16. 基于“龙芯”平台的Java运行环境研究,TP312.2
  17. Java虚拟机关键机制研究与实践,TP312.1
  18. 一种基于JAVA技术的实时中间件的研究与开发,TP311.52
  19. 实时Java平台的研究,TP312.2
  20. 支持RTSJ的Java处理器的研究与设计,TP332

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序语言、算法语言
© 2012 www.xueweilunwen.com