- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Linux网络计算机Java虚拟机性能优化
基于Linux网络计算机Java虚拟机性能优化
摘要:目前,Linux网络计算机中的Java虚拟机在运行Java应用程序时,存在着执行性能较低的问题。该文实现一种优化方案:在Kaffe虚拟机中应用并改良直接线索式解释器优化技术。旨在兼顾Linux NC现有的硬件配置和软件模式,有效地提升Java虚拟机运行效率,并保证较低的CPU和内存成本。从而改善虚拟机的性能表现。
关键词:Linux;NC;Kaffe;Java虚拟机;性能优化
NC(Network Computer)是网络计算体系结构演变的必然结果。NC系统软件包括两大部分:运行在NC上的NCOS和运行在应用服务器上的NCServer。Java虚拟机(Java Virtual Machine)是两大部分的重要组件,其设计、实现技术将影响Java应用程序执行的实际效果及NC中其它服务的性能表现。
1 网络计算机中JVM的性能表现
目前,随着多种性能优化技术在JVM中的应用,Java在桌面操作系统及服务器中的运行效率有了很大程度的提高。但嵌入式领域的JVM性能的研发工作却滞留在起步阶段。Linux NC应用的是桌面OS的JVM。虽然这种JVM的优化技术大大提高了Java的执行性能,但嵌入式设备NC的计算及存储能力却难以负担这种JVM的技术对CPU、内存的较高要求。
2 基于Linux NC的JVM性能优化方案
Linux成为继Windows CE之后,第2个应用于NC的主流操作系统。因此,本文的优化工作将基于Linux平台。
2.1优化对象
源代码开放的软件包Kaffe是一个优秀的Java语言环境。优化方案选择Kaffe作为优化对象,主要基于4个原因:Kaffe是基于类Unix系统上开发的,特别是Linux和Free BSD。因此,把Kaffe移植到支持POSIX原语的体系结构比其它体系结构容易;Kaffe是一个完整的遵从Personal Java 1.1规范的Java语言环境,可以应用于各种因特网设备、嵌入式系统;Kaffe的解释器采用switch-case模式,性能相对较低;Kaffe基于模块实现,具有伸缩性和高效性。
2.2 技术选择
鉴于上述优化技术的特点,作者分析得出编译执行技术与NC的不适用性,主要表现在:
在800MHz工作频率,32位的总线宽度的CPU下,编译执行的Java程序会呈现较明显的停滞现象;
NC的CPU Cache容量难以容纳全部的核心代码,使得CPU访问内存的机率增加,JVM的执行效率降低;
编译产生的机器代码量是原字节码的几倍到几十倍,NC的内存和CPU Cache难以承受。
因此,解释执行技术更适合Linux终端设备。由于:
解释执行的JVM占用较小的ROM;字节码占用较小内存空间,减轻了对数据Cache的压力;解释方式运行的JVM的核心代码量较小,增加了在指令Cache中的比例。
2.3方案设计
根据以上分析结论,及解释技术的优化技术在嵌入式移动通信领域的应用良好的现状,本文采用解释执行技术及其优化手段设计优化方案。
DTI工作机制:转化函数对应一个translated code数组,函数按顺序读入字节码指令,查找其解释程序入口地址,将地址保存在对应的数组中。即原来的操作码对应转化为解释程序的标号地址。
技术的改良。为了节省DTI中translated code数组的空间,方案对数组进行了合理的压缩。
合并操作数。在32位CPU中,标号地址长度占用4B的存储器。操作码后的操作数长度从0B到数10B不等。原来16位和32位的操作数分别占用2B,2个字节码单元和4B,4个字节码单元。合并后,它们均占用1个translated code数组单元。
处理跳转地址。操作数的合并引起了操作码对应偏移量的变化,因此,需要更新绝对和相对跳转指令的目标地址。方案引入tcbc_offset数组,令其保存translated code数组相对于原字节码数组的偏移量的差值(带符号)。当修改跳转目标地址时,利用该数组的值分别计算绝对和相对跳转指令的新目标地址。同时,方案通过3个优化途径进一步提升DTI的优化
幅度:
①《Java虚拟机规范》只定义了202条指令,其余的可由用户自定义,即伪指令。
第1类伪指令:用指定数据类型的伪指令替代不指定操作数类型的指令。省去遍历各种类型常量池的操作。如:ldc指令把常量池中的项压入Java栈。伪指令intldc,floatldc,stringldc指定具体的数据类型。在转化字节码的过程中,根据常量的数据类型,对应到伪指令,直接指向某个类型的常
您可能关注的文档
- 基于KMA框架中外合资企业知识管理过程研究.doc
- 基于Kmeans和CBR方法高校就业预测模型应用研究.doc
- 基于Kmeans和Label Propagation半监督网页分类.doc
- 基于Kmeans改进人工蜂群聚类算法.doc
- 基于Kmeans算法企业服务创新方向选择研究.doc
- 基于KMeans聚类微生物群落结构研究.doc
- 基于Kmeans聚类算法复杂网络社团发现新方法.doc
- 基于KMM匹配参数迁移学习算法.doc
- 基于Kmeans聚类算法银行贷款风险管理分析.doc
- 基于KMP算法教务系统安全性监控.doc
- 空间向量的数量积运算课件2025-2026学年高二上学期数学人教A版选择性必修第一册.pptx
- 平面向量的概念课件2024-2025学年高一下学期数学人教A版必修第二册.pptx
- 直线与平面垂直+课件2024-2025学年高一下学期数学人教A版必修第二册.pptx
- 两角差的余弦公式课件2025-2026学年高一上学期数学人教A版必修第一册.pptx
- 函数的零点与方程的解课件2025-2026学年高一上学期数学人教A版必修第一册.pptx
- 奇偶性的应用(对称性、周期性)课件2025-2026学年高一上学期数学人教A版必修第一册.pptx
- 函数的单调性课件2025-2026学年高二上学期数学人教A版选择性必修第二册.pptx
- 函数的零点与方程的解课件高一上学期数学人教A版必修第一册.pptx
- 函数y=Asin(ωx++φ)(课件)2025-2026学年高一上学期数学(人教A版必修第一册).pptx
- 正弦函数、余弦函数的性质课件2025-2026学年高一上学期数学人教A版必修第一册.pptx
最近下载
- 《学前教育政策法规与教师职业道德》学前教育专业全套教学课件.pptx
- 黑龙江工商学院《高等数学下》2025 - 2026学年第一学期期末试卷(A卷).docx VIP
- 2023-AI行业:华为+AI大模型开源生态及大模型平台实践.pptx VIP
- 地中海建筑风格(The-Mediterranean).ppt VIP
- 黑龙江工商学院《高等数学(D)》2025 - 2026学年第一学期期末试卷.docx VIP
- 水利部考试历年真题——水利基础知识试题集.docx VIP
- Unit 1 Home (Integration) 课件(共17张PPT)2025年七年级下册《英语》译林版(含音频+视频).pptx VIP
- 国家开放大学本科《人文英语4》一平台机考总题库[珍藏版].pdf
- 2025山东大学(威海)教务处非事业编制岗位招聘1人考试历年真题汇编附答案解析.docx VIP
- 2025高考物理专题复习-人船模型(共20张ppt).pptx VIP
原创力文档


文档评论(0)