虚拟机架构下的执行重放技术研究

来源 :中国科学院研究生院 中国科学院大学 | 被引量 : 0次 | 上传用户:zhangqing1226
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
执行重放技术在诞生之初是用于重现并行程序的并发性错误。随着其研究的不断深入特别是与虚拟化技术进行融合后,虚拟机执行重放技术可用于虚拟机迁移、虚拟机调试、虚拟机容错以及虚拟机入侵检测等诸多领域。但是传统的虚拟机执行重放技术尚未有合适的表达方式,即不能针对各种应用场景给出详细的重放能力描述,使得开发适用于特定执行重放应用的系统时缺少理论性指导。在实现技术上,应用最广泛的虚拟机执行重放系统Xen-Revirt还是设计运行在单核处理器平台上,属于早期执行重放系统,尚不能适应现代多核硬件平台。另外,多线程执行重放也遇到系统性能开销巨大以及容易受无关进程干扰等问题,而虚拟机执行重放技术的参与有可能为其提供良好的解决方案。   针对以上问题,本文对虚拟机执行重放技术应用于单VCPU虚拟机的系统调试场景进行建模,并验证Xen-Revirt虚拟机执行重放系统满足该场景要求。接着,对Xen-Revirt虚拟机执行重放系统进行硬件适配性改造,使其支持主流的多核硬件平台,扩展其应用范围。最后,讨论多线程执行重放系统性能开销巨大以及容易受无关进程干扰问题,使用弱确定性重放和定制虚拟机的方法,给出问题的解决方案并实现执行重放系统。   本文主要取得了以下几个方面的成果:   1.根据虚拟机的系统调试对执行重放技术的需求,扩充了指令集虚拟化模型,提出了虚拟机系统执行重放的形式化定义。讨论不确定性事件与达成执行重放的关系,并证明了完成系统重放的充分条件。即证明所有达成该充分条件的前提下,通过重放指令序列中的不确定性指令,可以使得虚拟机重放系统能够准确模拟记录阶段的执行状态,进而使得重放系统具有完成系统调试的能力。最后验证Xen-Revirt虚拟机执行重放系统满足该场景要求。   2.我们依据IntelCore2多核处理器的性能计数器接口,重新设计实现了重放系统的不确定事件的时间点控制策略。讨论了VCPU与物理CPU之间的动态绑定关系以及物理CPU上下文切换时对重放系统的影响,并在实践中改进了若干重放策略,确保了CASMotion能够正确运行在IntelCore2以后的多核硬件平台之上。为适应Xen虚拟资源引擎的发展,本工作也重新讨论了虚拟化平台上的不确定事件种类并重设计实现了设备重放策略。   3.借鉴确定性执行研究成果,提出弱确定性重放概念,使得同步加锁代码在重放阶段以确定性的方式执行,重放同步代码中的并发错误。本方法涵盖POSIX标准所定义的所有线程锁函数,并将其分为读锁和写锁。提出具体的依赖规则生成策略,在重放策略中保证写锁以严格的确定性执行,而读锁则可以以有限的并发性被执行。本方法中引入类似于Netzer的嵌套优化方法,在记录和重放阶段之间插入优化日志过程,削减冗余的依赖规则。   4.本文的WDRVirt执行重放系统实现了上文所提到的弱确定性重放系统,支持对POSIX标准所定义的线程锁函数的获取顺序进行重放。为避免操作系统内其他无关线程的干扰,WDRVirt为目标多线程程序定制虚拟机,为目标程序提供纯净的执行重放环境。通过重放该虚拟机及其内部的不确定事件,完成对目标程序的执行重放。WDRVirt同时部署在虚拟资源引擎和定制虚拟机内部。处于虚拟资源引擎中的平台重放器可支持所有Xen平台上的泛虚拟化虚拟机。而定制虚拟机内部的重放策略通过替换函数库完成,所以WDRVirt相比其他的重放工具具有易于部署的特点。
其他文献
近年来,随着无线通信技术的迅速发展,车载自组织网络(Vehicular Ad-hoc Network,简称VANET)逐渐成为一个重要的研究领域,受到学术界和工业界的瞩目,基于车载网可以开发多种应用如
化学反应启发式优化算法(Chemical Reaction Optimization,CRO)是近年来提出的一种新型演化算法。其已在诸多领域展示了解决NP完全问题的强大能力。本文以化学反应优化算法这
大屏幕交互在会议、演讲、火车站、博物馆等场合扮演着很重要的角色,在这些不同于以往桌面交互的新交互场景中,用户多需要站在一定距离之外与大屏幕交互,整个交互过程没有支撑平
机器学习在多个领域得到广泛应用。随着计算能力的提高,使得贝叶斯网络这种学习方法成为研究的热点。生成式概率图模型是贝叶斯网络的特例。所谓的生成式模型是指其网络结构提
随着互连网从传统PC蔓延到移动领域,海量信息数据存储技术也得到了快速发展,其中,Hadoop云计算平台技术是许多企业处理大数据的首选。Hadoop平台的优势在于大数据的分析处理以及
随着计算技术的进步、硬件水平的不断提高,以及互联网的广泛应用,软件已经摆脱传统的固定的输入输出模式,交互式系统日益多样和复杂。传统的界面由于缺乏主动满足多种用户需求(如
目标跟踪在运动目标的视觉分析中占有重要的地位,属于视觉的中层部分。目标跟踪是通过对摄像机所拍摄的视频图像序列进行处理,找出连续图像帧间的对应关系,实现对图像和图像
互联网信息的指数级增长,使得搜索引擎成为互联网上最广泛的应用。随着用户对检索结果要求的提高,搜索技术面临着越来越严峻的挑战。语义Web的发展,为提高搜索技术指明了新方向
学位
随着计算机网络与信息技术的发展,传统的单机版数据挖掘软件由于其庞大臃肿的应用程序、对用户机器硬件要求较高、软件更新周期长且不易维护等,已经无法很好地满足用户的需求