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

Java虚拟机关键机制研究与实践

作 者: 邓洋春
导 师: 梁昔明
学 校: 中南大学
专 业: 计算机应用技术
关键词: Java虚拟机 类装载器 执行引擎 垃圾收集 分代
分类号: TP312.1
类 型: 硕士论文
年 份: 2009年
下 载: 185次
引 用: 5次
阅 读: 论文下载
 

内容摘要


Java体系结构包括四个相互关联的技术:Java语言、Java API、class文件和Java虚拟机,其中Java虚拟机是整个体系的核心部分,它使Java程序在不同的计算机系统之间具备高度的可移植性。本文研究虚拟机的类装载器执行引擎垃圾收集三方面的机制,所做的工作如下:对类装载器相关方面的阐述,包括class文件格式、常量池解析、双亲委派模型和类的动态装载技术,并对常量池的Utf8_info表进行了改进,传统的类名存储方式是把所有类的全限定名分别存储于Utf8_info表中,此方式产生了许多冗余的信息,改进的方法把类的全限定名分离为不同的结点,减少整个类的字符串在常量池中所占据的大小,这使得在内存有限的系统中装载class文件后能减少对存储空间的占用。对于Java虚拟机的执行引擎,讨论了以堆栈为工作区的机制,介绍了虚拟机的指令系统的功能,探讨了相关的执行技术,最后根据Java虚拟机规范,设计与实现了部分有代表性的虚拟机指令的功能。在虚拟机的存储管理方面,对比了传统存储管理与Java体系中存储管理的异同,讨论了现有的垃圾收集算法,提出了对火车算法失效情况下的处理方案,最后按照Java虚拟机中分代的思想在一种嵌入式虚拟机KVM上设计了一个分代回收方案,该方案简单地把Java内存堆分为新生代和旧生代,实验结果表明,分代后的垃圾收集相比于默认的垃圾收集效果有了部分的提升。

全文目录


摘要  3-4
ABSTRACT  4-7
第一章 绪论  7-13
  1.1 研究背景  7-8
  1.2 国内外研究现状  8-9
  1.3 Java虚拟机体系结构简介  9-12
    1.3.1 类装载器  10-11
    1.3.2 运行时数据区  11
    1.3.3 执行引擎  11-12
    1.3.4 本地方法接口  12
  1.4 论文主要工作和结构安排  12-13
第二章 类装载器内部实现原理分析  13-35
  2.1 Java class文件  13-16
  2.2 双亲委派模型  16-17
  2.3 动态加载机制  17-18
  2.4 对常量池的改进方案  18-33
    2.4.1 问题的提出  18-21
    2.4.2 改进的办法  21-27
    2.4.3 实验  27-33
  2.5 本章小结  33-35
第三章 执行引擎与指令集  35-46
  3.1 概述  35
  3.2 执行引擎的工作中心  35-36
  3.3 指令系统  36-38
    3.3.1 指令格式  36
    3.3.2 指令的分类和功能  36-37
    3.3.3 指令的执行过程  37-38
  3.4 执行技术  38-40
    3.4.1 解释执行  38
    3.4.2 即时编译  38-39
    3.4.3 自适应优化  39-40
  3.5 相关指令功能的设计与实现  40-45
  3.6 本章小结  45-46
第四章 垃圾收集算法研究  46-62
  4.1 Java虚拟机的内存管理模式  46
  4.2 垃圾收集机制  46-50
    4.2.1 引用计数法  46-47
    4.2.2 跟踪收集法  47
    4.2.3 压缩算法  47
    4.2.4 拷贝收集法  47
    4.2.5 分代收集法  47-49
    4.2.6 火车算法  49-50
  4.3 对火车算法不足之处的改进  50-53
  4.4 分代算法在KVM上的设计  53-61
    4.4.1 KVM中默认的回收机制  53-54
    4.4.2 分代方案  54-59
    4.4.3 对比试验  59-61
  4.5 本章小结  61-62
第五章 总结与展望  62-63
  5.1 工作总结  62
  5.2 未来工作  62-63
参考文献  63-68
致谢  68-69
攻读硕士学位期间主要的研究成果  69

相似论文

  1. 城郊农村生活垃圾收集现状分析及对策研究,X799.3
  2. 数字家庭媒体系统设计与实现,TP311.52
  3. 面向PLM系统的工作引擎设计与实现,TP311.52
  4. Java存储管理系统低功耗垃圾收集技术研究,TP311.10
  5. Java安全体系结构设计与实现,TP393.08
  6. 基于JDBC接口的嵌入式数据库在PDA上的应用研究,TP311.13
  7. 移动Java平台的研究与实现,TN929.5
  8. 成都市生活垃圾收运优化研究,TU993.3
  9. 基于事实的CGF行为模型组合方法研究,E91
  10. 实时Java平台的配套软件工具包设计及实现,TP311.52
  11. Java卡测试平台的设计与实现,TP311.52
  12. 移动智能终端Java虚拟机代码安全机制的研究与实践,TN929.53
  13. DT-JVM:分布式Java虚拟机的树型集成调度平台研究与设计,TP311.52
  14. 面向JAVA代码的加密及动态解密机制的研究与实现,TP309.7
  15. 虚拟化服务器管理系统的设计与实现,TP311.52
  16. 在无线传感网络环境下的移动RFID中间件研究与实现,TP391.44
  17. 基于CK-CPU的Android系统之Dalvik移植及性能研究,TP368.1
  18. 驻地SNS服务器服务执行引擎的研究与设计,TP393.05
  19. 即时编译器辅助的内存管理优化,TP314
  20. 面向融合业务的BPEL业务执行引擎的设计与实现,TN915.09
  21. 基于JAVA语言的设计模式识别的研究与应用,TP311.52

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