设备代理模块是用来处理动态迁移期间的I/O操作和维护虚拟 设备状态;远程设备访问模块是为了让虚拟机能采用类似本地模式从远程访问 I/O设备,而不再依赖于网络文件系统进行访问;设备动态交换模块则是为了虚拟 机重新动态地定向至物理设备,以提高虚拟机设备的可用性。 在基于设备代理模型的虚拟机动态迁移期间,设备代理模型在处理待决I/O操 作时存在状态不一致性,本文采用SMT和QBM一致性维护算法解决这个问题。 SMT算法主要处理长度相同的待决I/O操作,而QBM主要处理长度不相同的待 决I/O操作。在设计SMT一致性维护算法时,为了提高其执行效率,引进特征值 和哈希搜索。经过SMT算法匹配处理,剩下待处理的待决I/O操作都与要匹配的 待决I/O操作长度不同。QBM算法采用整体移动方式执行精确匹配剩下的待决I/O 操作。 基于以上研究基础,本文设计出基于Xen设备代理模型体系结构。根据基于 Xen设备代理模型的体系结构分别实现了设备代理模块、远程设备访问模块和设 备动态交换模块。最后,本文对设备代理模型的相关性能进行了评测,评测结果 表明在动态迁移期间,设备代理模型保证了I/O服务的不间断和持续性。 本课题得到国家863计射‘基于虚拟机技术的商业高端刀片服务器系统’,和“支 持多计算域的虚拟个人计算机系统"课题,以及NFS重点项目“基于虚拟机架构 的可信计算环境与可信软件设计”的资助。 关键词:设备代理,动态迁移,虚拟机,设备高可用 知识水坝论文国防科学技术大学研究生院工程硕士学位