Java虚拟机异常机制及其实时性的研究与实现

来源 :江南大学 | 被引量 : 0次 | 上传用户:ciscohd
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Java语言的面向对象、跨平台、语言级并发支持、安全等特性不仅使它在互联网领域得到广泛应用,也引起了嵌入式领域研究人员的高度重视,Sun公司希望能将Java语言改造成实时系统开发的主流语言来提高开发效率及增加系统安全性。传统Java技术应用于实时系统的主要不足之处表现为:由于Java虚拟机是在运行中对引用到的类进行动态装载、解析和连接,影响了系统的实时性。垃圾收集器(GC)的自动运行导致了任务执行时间的不可预测性。Java语言规范和Java虚拟机规范讨论线程调度的地方非常笼统,导致在不同虚拟机实现中线程调度特性表现不一致。在异常方面,由于Java虚拟机本身在异常表方面设计不合理,使得异常表的查询时间中包含了很多次的进栈出栈操作,造成了每次查询异常表的时间波动过大,不符合实时系统的要求。对于虚拟机的中断机制来说,现有的interrupted中断机制并不能完全解决已经出现的问题。这就使得我们对Java虚拟机提出了更高的要求。针对传统Java技术在实时方面的不足,Sun公司联合IBM、Microware等公司制定了实时Java规范(RTSJ),为实时Java平台的实现提供了参考。实时Java规范在内存管理、线程调度、异步事件处理、异步控制转移等多个影响实时性的方面进行了扩展,使得Java能够适用于实时系统。论文主要的研究内容是如何用软件的方式改进传统的Java虚拟机,使其克服异常抛出时间波动过大对实时的不利影响。首先,详细分析Java虚拟机的异常处理机制,找出其影响实时性的不足之处。针对此不足,提出一种新的线性数据结构代替虚拟机嵌套在Java栈中的异常表,使其查询异常表的时间基本随着异常表的长度呈线性改变。通过对五种不同异常的测试,说明此数据结构的运用可以提高虚拟机的运行效率和实时性。其次,由于RTSJ为了提高线程中的互相控制与限制,提出了ATC机制的概念,其间涉及到很多线程之间的信息的交互。为了在虚拟机中模拟出ATC机制的基本效果,提出了一个新的方法,在虚拟中的内存中开辟一段所有线程都可以访问的空间,用于存放各个线程有可能抛出的ATC异常(AIE)。在抛出的过程中也许会遇到一些特定的情况,本文模拟了其中的几种情况,确定证明讲这种结构运用于虚拟机中是可以实现ATC机制的。
其他文献
目前,随着电子化程度的加深,移动通信市场竞争的不断加剧,数据仓库和数据挖掘作为一门新兴的科学技术,越来越受到国内外学者的研究应用,其范围和价值也越来越大。 本文对数据仓
随着医院信息化系统的普及,在临床诊断过程中产生了大量的医学资源,如患者的个人信息、检查信息、诊断报告和影像信息等。它们可以为医院提供诊断资料、教学资源,研究题材,甚
随着网络通信的飞速发展,路由优化显得越来越重要。最常用的IGP路由信息协议OSPF己经逐渐取代了RIP,得到了世界上绝大多数厂商的支持。因此,研究OSPF网络具有重要的现实意义。
随着表面组装技术(Surface Mounting Technology, SMT)向更高密度、更小尺寸、更复杂的印刷电路板(Print Circuit Board, PCB)混合技术的纵深发展,在电路板的装配过程中,作为
机动车技术状况良好是车辆行驶安全的基本保证,其安全性能检测是保证车辆技术状况的重要手段。目前,应用现代化的传感技术、计算机及网络通信技术开发集成化的智能系统成为汽
农业信息化是建设社会主义新农村的必由之路。我国在农业信息化建设取得长足进步的同时也出现了一些问题。主要是因为目前我国农村基础设施尚不完善,而且农民普遍还不富裕,购
为了解决软件复用,缩短软件开发时间,降低维护成本和实现程序动态升级,软件设计领域产生了组件化程序设计结构,并且日益成为发展趋势。微软的COM组件对象模型是当今比较成熟
网络管理和分布式技术的发展,以及J2EE技术的广泛应用推动了JMX技术的形成。JMX的全称是Java Management Extensions,由Java CommunityProcess(JCP)制定,为基于Java平台的软件和
由于数据库中存在着大量数据,因此从数据库中发现有用的信息显得十分重要。数据挖掘技术就是为解决这个问题而产生的。对数据挖掘技术的研究,国内外己经取得了许多令人瞩目的
图像插值可以改变图像分辨率,实现图像的缩放显示,是高清数字电视平板显示中的关键技术,具有非常重要的理论和应用价值。ENO(Essentially Non-Oscillatory,基本无振荡)插值方法采