可移植动态翻译技术研究和实现

来源 :浙江大学 | 被引量 : 0次 | 上传用户:hongniba3493
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
计算机虚拟技术一直是计算机发展的一个重要分支,部分应用技术甚至可以追溯到上个世纪60年代。在过去几十年中,各种处理器体系结构不断推陈出新以及同种体系结构的指令集不断演化,导致产生大量只能运行于这些特定处理器上的系统软件和应用软件。在二进制层次上这些运行于不同体系结构或者不同时期同种体系结构上的软件互不兼容。目前主要有三种方法解决这类兼容性问题:a)重写部分源代码并重新编译成你所需要的二进制指令。b)通过采用各种软件技术来兼容不同的指令集。c)在新的处理器体系结构中加入特定的处理器模式。用软件来解决兼容性问题具有很大优势,它不需要源代码、不需要专门的程序员去维护代码、不会增加硬件设计的复杂度以及硬件成本。但用软件方法解决二进制兼容性的最大困难在于速度和可移植性,这是自JIT(Just-in-time)技术出现以来一直亟待解决的问题。论文就这一难题提出了一系列方案,取得良好效果。 当软件仅模拟某一处理器的指令时,称之为全指令模拟器。全指令模拟器分为解释型(Bochs)和动态翻译(JVM,CRL)两大类。论文着重于动态翻译技术的研究和实现。动态翻译技术可以把某一平台上的二进制代码实时编译到另一平台运行,而无需任何修改。一般把实时编译前的二进制指令称为目标指令,模拟器称为目标机器(target),编译后则相应的称为宿主指令、宿主机器(Host or Native)。目标机器和宿主机器既可以是同构也可以是异构。随着近几年嵌入式系统不断发展,软件的品种和难度都成上升趋势。但由于嵌入式芯片性能的局限性,无法在RISC芯片上完成整个软件开发过程。在性能强大的CISC芯片上提供一个RISC芯片的模拟器,在模拟器协助下进行软件开发成为程序员的一个迫切愿望。 论文在分析和总结了现有动态翻译技术优缺点的基础上,提出具有较好移植性和较快速度的动态翻译方法。动态翻译技术不同于静态翻译,它会增加程序运行时间,控制动态翻译自身的开销是重中之重。本论文的方法充分利用程序的局部性原理,降低了管理cache和使用cache时所带来的效率损失。通过提供一个函数返回堆栈对函数调用和返回做优化,可以提高函数调用密集型的程序效率。把转换块的大小从传统上以基本块为单位变成以页(1KB—4KB)为单位进行单次转换。这个变化不仅仅减少了每条目标指令转换所需的时间,也使论文提出了一种全新的优化技术——虚拟机以零开销方式从一个基本块过渡到下一基本块执行。论文以中间宿主指令表示/译码转换方式来解决目标指令中操作数组合过多的难题(一种组合对应一段宿主实现),相比微操作方式具有简单、效率高等特性。最后以这一系列动态翻译技术为基础实现了在x86上模拟MIPS4kc整数指令集的模拟器。
其他文献
工程三视图是以正投影原理在三个正交平面上的正投影来表达三维零件结构和形状的一种有效手段。当前机械零件设计领域仍以二维图纸设计为主,而三维形体不仅有完整的几何拓扑信
随着互联网的发展和普及,全球化成为商业软件获得成功的关键因素。随着软件业的发展,软件全球化的支持也在不断得到加强。出现了各种辅助应用软件进行全球化开发的标准和类库
垃圾邮件已经成为互联网的一大公害,这些邮件在占据邮件服务器大量存储空间的同时,传播各种有害信息,给社会和个人造成了巨大的危害。因此,研究邮件智能过滤具有重要意义。以
自动测试仪(ATE,AutomaticTestEquipment)从用途来分,大致可分为两类:一种是通用型,作为一种通用检测设备,可以在某一领域有广泛的使用空间,如,万用表、示波器等。另一种是专用型,一
本文首先从软件体系结构角度出发,比较系统地阐述了SOA的理论知识,分析了SOA的概念、模型和SOA中各个角色的职责功能,并归纳、讨论了SOA的特点、实现技术的发展现状和未来的发展
20世纪以来,信息化数据以指数规模增长,这使得人们从纷乱复杂的异构数据中迅速而有效地得到自己关注的信息变得困难重重,而索引是信息获取过程中最重要的一步。目前,结构化数
随着嵌入式系统,视频/音频压缩技术,网络实时传输技术的发展,视频监控系统从原始的模拟监控系统发展到基于嵌入式技术的网络视频监控系统。基于嵌入式技术的网络视频监控系统具
聊天一直是Internet的主要活动之一,网上聊天的主要工具已经从初期的聊天室、论坛变为以MSN、QQ为代表的即时通讯软件(IM)。即时通讯(Instant Messaging,简称IM)自1998年由以色
软件定义网络凭借其可编程性为网络负载均衡提供了一种出色的解决方案。然而软件定义网络中现有的网络编程语言(Frenetic、Procera、Flog等)均基于事件流模型,侧重于描述事件发
本论文以移动机器人NKMOBOT-I项目为课题背景,设计了机器人的行驶机构和运动控制系统,并进行了实验与仿真验证。 根据机器人对机动性能的要求,设计了具有圆形底盘的差速驱动