嵌入式实时Java处理器及API系统的实现

嵌入式实时Java处理器及API系统的实现

论文摘要

近年来嵌入式系统发展极其迅速,正逐步渗透于人类生活的各个方面,这对嵌入式系统的性能及开发效率也提出了更高的要求。和桌面系统的软件开发相比,嵌入式软件开发普遍还使用比较传统的C/C++甚至汇编语言进行,难以适应嵌入式系统的迅猛发展,因此需要新的开发方法和开发手段来解决。Java语言的面向对象、跨平台、语言级并发支持、安全等特性不仅使它在互联网领域得到广泛应用,也引起了嵌入式领域研究人员的高度重视,他们希望能将Java语言改造成嵌入式及实时系统开发的主流语言来提高开发效率及增加系统安全性。由于嵌入式系统多数为实时系统,传统Java技术应用于嵌入式系统的主要不足之处表现为:由于Java虚拟机是在运行中对引用到的类进行动态装载、解析和连接,影响了系统的实时性;垃圾收集器(GC)的自动运行导致了任务执行时间的不可预测性。针对传统Java技术在实时方面的不足,Sun公司联合IBM、Microware等公司制定了实时Java规范(RTSJ),为实时Java平台的实现提供了参考。随着实时Java规范的推出,如何实现适用于嵌入式系统的高效实时Java平台就成为了研究热点。目前,常见的实时Java平台实现方式有解释方式(在实时操作系统RTOS之上用软件方式来解释执行Java字节码);提前编译(字节码被提前编译生成机器码或中间代码,如C);硬件加速(用硬件方式执行一部分常用字节码来提高整体性能);硬件翻译(用硬件单元把字节码实时翻译成机器码)以及Java处理器方式(字节码直接作为机器代码在处理器硬件上执行)。同其它实现方式相比,Java处理器免除了把Java字节码转换为机器代码的工作同时还可以针对Java虚拟机特点提供特殊的硬件支持。因此具有能够直接硬件执行Java字节码、执行效率高、内存占用少、功耗低等特点,所以更适合用于资源受限的嵌入式设备。目前国外已有一些针对嵌入式实时Java处理器的研究,如JOP、aJ-80、aJ-100及FemtoJava等。国内研究机构也有过一些针对Java处理器及Java芯片的研究,如JE-Java、JC104,但其重点是提高系统整体性能而不是实时性,一个原因也是因为当时实时Java规范尚未推出。根据对国家自然科学基金项目—高可靠实时系统的计算平台(SoPC)研究(基金号:60703106)[1]的研究,本文设计了一种能在低成本FPGA芯片中实现的实时嵌入式Java处理器PRTEJ(Pipelined Real-Time Embedded Java Processor),目标是实现具有实时特性的嵌入式Java处理器并对实时Java规范提供有效支持。该处理器实现基于FPGA的可六级流水的嵌入式硬件Java处理器,并定义了特殊的流水线流程、指令集、内存管理机制。并通过对实时Java规范的分析,在内存管理、CConvertor、API系统中,我们建立从硬件机制到软件机制对RTSJ的支持。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 研究背景与意义
  • 1.2 研究目标
  • 1.3 本文结构安排
  • 第2章 Java虚拟机和硬件Java处理器
  • 2.1 Java和Java处理器的历史背景
  • 2.2 Java虚拟机
  • 2.2.1 Java虚拟机运行时结构
  • 2.2.2 Java虚拟机指令集
  • 2.3 Java平台中虚拟机实现方式
  • 2.4 Java用于嵌入式系统
  • 2.4.1 J2ME(Java 2 Platform,Micro Edition)
  • 2.4.2 CLDC(Connected Limited Device Configuration)
  • 2.4.3 CDC(Connected Device Configuration)
  • 2.4.4 其它嵌入式Java规范
  • 2.5 实时Java规范RTSJ
  • 2.5.1 RTSJ中的线程机制
  • 2.5.2 RTSJ的内存管理
  • 2.5.3 RTSJ中的异步机制
  • 2.6 基于RTSJ的Java平台研究现状
  • 2.7 本章小结
  • 第3章 PRTEJ处理器总体设计
  • 3.1 PRTEJ处理器设计原则
  • 3.2 PRTEJ处理器的设计方案
  • 3.2.1 字节码到微指令转换方式选择
  • 3.2.2 流水线的设计
  • 3.2.3 自定义的寄存器组
  • 3.2.4 寻址方式
  • 3.2.5 自定义的指令集以及指令格式
  • 3.2.5.1 将常量压入栈:
  • 3.2.5.2 从栈中的局部变量中装载值:
  • 3.2.5.3 将栈中的值存入局部变量:
  • 3.2.5.4 通用栈操作:
  • 3.2.5.5 类型转换
  • 3.2.5.6 整数运算
  • 3.2.5.7 逻辑运算
  • 3.2.5.8 对象和数组
  • 3.2.5.9 控制流
  • 3.2.5.10 方法调用与返回
  • 3.3 PRTEJ处理器的内存结构
  • 3.3.1 PRTSJ的内存布局
  • 3.3.2 PRTSJ的运行时存储结构
  • 3.3.3 PRTSJ中栈的运行时结构
  • 3.4 本章小结
  • 第4章 类转换器设计与实现
  • 4.1 Java Class文件处理过程
  • 4.2 类解释器工作流程
  • 第5章 支持PRTEJ处理器的API系统
  • 5.1 介绍
  • 5.2 API实现接口
  • 5.2.1 包Java.lang实现
  • 5.2.2 包Java.util实现
  • 5.2.3 包Java.io实现
  • 5.3 本章小结
  • 第6章 PRTEJ实现结果
  • 6.1 实现环境
  • 6.2 实现结果比较分析
  • 第7章 结论与展望
  • 附录Ⅰ:本文用到的缩略语
  • 参考文献
  • 致谢
  • 相关论文文献

    • [1].垃圾处理器进入大渠道的困境[J]. 现代家电 2019(22)
    • [2].基于FPGA的32位多并行2DFFT处理器的设计[J]. 广西科技大学学报 2020(01)
    • [3].废弃食物处理器选购有讲究[J]. 质量与标准化 2020(Z1)
    • [4].报告:到2026年,嵌入式处理器市场将达到363.8亿美元[J]. 功能材料信息 2019(06)
    • [5].垃圾处理器营销渠道走向前台[J]. 现代家电 2019(17)
    • [6].创新推动垃圾处理器本土化进程[J]. 现代家电 2020(07)
    • [7].用标准推动行业健康发展 保障消费者良好体验[J]. 现代家电 2020(07)
    • [8].风头正劲的垃圾处理器市场[J]. 现代家电 2020(07)
    • [9].后疫情时代 垃圾处理器步入稳健发展[J]. 现代家电 2020(07)
    • [10].垃圾处理器的B端市场突破[J]. 现代家电 2020(07)
    • [11].利用平台优势 推动垃圾处理器快速增长[J]. 现代家电 2020(07)
    • [12].2020二季度手机处理器市场[J]. 中国科技信息 2020(20)
    • [13].安全处理器研究进展[J]. 信息安全学报 2018(01)
    • [14].骁龙821处理器等于骁龙820超频版[J]. 个人电脑 2017(01)
    • [15].走近国产处理器[J]. 个人电脑 2016(09)
    • [16].众核处理器核间通信的研究[J]. 价值工程 2015(17)
    • [17].面向高性能计算的众核处理器轻量级错误恢复技术研究[J]. 计算机研究与发展 2015(06)
    • [18].“愚公号”垃圾处理器[J]. 小星星(低年级版) 2020(Z2)
    • [19].《污气处理器》[J]. 课堂内外(小学低年级) 2019(05)
    • [20].龙芯总设计师:明年将推出全自主可控处理器“3B3000”[J]. 电脑迷 2015(08)
    • [21].高效低能耗 未来处理器发展方向[J]. 电脑迷 2008(10)
    • [22].电脑靠什么来节能(3) 处理器篇[J]. 电脑迷 2008(09)
    • [23].陌生的处理器 新本怎么选?[J]. 电脑爱好者 2009(03)
    • [24].无处不在 嵌入式处理器解析[J]. 电脑迷 2010(12)
    • [25].22nm来袭 Intel Ivy Bridge处理器前瞻[J]. 电脑迷 2011(16)
    • [26].揭秘骗术 盒装处理器选购谈[J]. 电脑爱好者 2013(16)
    • [27].有必要追求最新64位处理器吗[J]. 电脑爱好者 2014(21)
    • [28].尾数有变! 读懂手机处理器的后缀密码[J]. 电脑爱好者 2017(07)
    • [29].不再是处理器 浅析高通骁龙835移动平台[J]. 电脑爱好者 2017(09)
    • [30].重新定义中端 AMD Ryzen 5 1600处理器[J]. 电脑爱好者 2017(14)

    标签:;  ;  ;  ;  ;  

    嵌入式实时Java处理器及API系统的实现
    下载Doc文档

    猜你喜欢