Institutional Repository
| Kaffe虚拟机在龙芯2E上的移植研究 | |
| 辛博坤 | |
| 导师 | 王永吉 |
| 2009-05-27 | |
| 学位授予单位 | 中科院软件所 |
| 学位 | 硕士 |
| 学位授予地点 | 中科院软件所 |
| 摘要 | Java虚拟机作为Java运行环境的核心,已成为现代计算机平台不可缺少的组成部分。Java虚拟机和平台间的兼容性直接决定了上层Java程序的运行的稳定性。龙芯2E是由中科院计算机研究所自主研发的高性能微处理器。由于采用MIPS指令集,现有Java虚拟机对龙芯的支持并不理想,这极大地限制了龙芯平台的上层应用。 针对这一问题,本文对现有虚拟机进行了分析,选择了移植性较强的Kaffe虚拟机作为移植对象,力求在龙芯2E上建立一个稳定的Java运行环境。以此为目的,本文整理了龙芯2E相关的内容,包括龙芯2E的指令集特点,龙芯下参数传递的方式,龙芯下函数栈的组织等等;研究了Java虚拟机规范中,一般Java虚拟机的体系结构;分析了Kaffe虚拟机的代码结构,确定了移植需要修改的三个主要模块:本地代码调用接口,Trampoline技术和JIT3引擎;给出了移植方案。其中,JIT3引擎作为整个虚拟机的核心,是整个移植工作的重点。本文对其编译过程,寄存器分配策略,Java栈的组织方式,以及标签,常量池等平台相关机制进行了深入的分析。在此基础上,修改了Java栈向本地栈的映射方式,实现了标签机制中平台相关部分的代码,重新描述了寄存器信息并重新实现了本地汇编指令。 针对Java虚拟机调试困难的问题,本文总结了龙芯平台下Kaffe虚拟机的调试方法。在调试过程中发现了Kaffe原有代码中的编码错误,并给出了修改方案。 最后采用第三方的评测工具对移植后的虚拟机进行测试,验证了移植的有效性。 |
| 语种 | 中文 |
| 内容类型 | 学位论文 |
| URI标识 | http://ir.iscas.ac.cn/handle/311060/212 |
| 专题 | 互联网软件技术实验室 |
| 推荐引用方式 GB/T 7714 | 辛博坤. Kaffe虚拟机在龙芯2E上的移植研究[D]. 中科院软件所. 中科院软件所,2009. |
| 条目包含的文件 | ||||||
| 文件名称/大小 | 文献类型 | 版本类型 | 开放类型 | 使用许可 | ||
| 10001_20062801502903(392KB) | 开放获取 | 使用许可 | 请求全文 | |||
| 个性服务 |
| 推荐该条目 |
| 保存到收藏夹 |
| 查看访问统计 |
| 导出为Endnote文件 |
| 谷歌学术 |
| 谷歌学术中相似的文章 |
| [辛博坤]的文章 |
| 百度学术 |
| 百度学术中相似的文章 |
| [辛博坤]的文章 |
| 必应学术 |
| 必应学术中相似的文章 |
| [辛博坤]的文章 |
| 相关权益政策 |
| 暂无数据 |
| 收藏/分享 |
除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。
修改评论