首页> 中文学位 >基于二进制代码注入框架的内存备份
【6h】

基于二进制代码注入框架的内存备份

代理获取

目录

封面

声明

中文摘要

英文摘要

目录

第一章 绪论

1.1研究背景及意义

1.2研究目标

1.3国内外研究现状

1.4本论文的研究内容

1.5本论文的组织结构

第二章 内存备份和二进制翻译相关技术的介绍

2.1实现内存备份的不同机制

2.2计算机指令集介绍

2.3操作系统内核态和用户态

2.4词法解析工具Lex和语法解析工具Yacc

2.5本章小结

第三章 二进制代码注入框架设计

3.1 Multimem系统全局架构

3.2内存同步机制

3.3标准库的处理

3.4本章小结

第四章 二进制代码注入框架实现

4.1处理指令的种类选择

4.2定制编译过程

4.3二进制代码分析和注入模块

4.4汇编指令代码的分类处理

4.5本章小结

第五章 实验与分析

5.1实验测试环境

5.2正确性分析

5.3 Multimem对操作系统和应用程序的影响

5.4本章小结

第六章 总结及展望

参 考 文 献

致谢

攻读硕士期间已发表或录用的论文

展开▼

摘要

随着云计算时代的到来,集群中计算机数量越来越多,处理着各种各样的数据。计算机中所有的数据都和内存相关,内存如果出现错误,不仅会产生无效的数据,甚至会造成计算机系统的直接崩溃。如果应用在军事、金融和医疗领域的计算机出现内存错误,将会带来灾难性的后果。
  目前内存的高可靠方案可以分为硬件方案和软件方案两种。硬件方案主要通过增加特殊的硬件实现内存备份,其成本开销较大且不够灵活通用。软件方案主要借助虚拟化技术实现多个虚拟机之间的内存备份,实时性较差且额外开销较大,不够实用。
  本论文提出了一个全新的软件解决方案Multimem,通过软件方法实现了硬件高可靠镜像内存的功能。源程序经过编译后生成同时包含原始指令和镜像指令的高可靠目标程序,其中原始指令更新原始内存,镜像指令更新镜像内存,程序在运行时动态保证两种内存数据的一致性,实现了内存的动态单机备份。不同于现有大部分的方案只能针对用户态实现内存高可靠,Multimem使用静态二进制翻译技术,在实现内存用户态高可靠的同时,也实现相对复杂的内核态高可靠,从而达到了全系统的高可靠。Multimem有着很好的灵活性,不仅可以通过简单的配置,实现从特定指令和函数等细粒度到用户态、内核态或者全系统等粗粒度的内存备份,而且备份内存的数量也可以根据需求灵活定制,节省了系统资源的同时,增加了方案的通用性。Multimem实现了一个二进制代码注入框架,不但可以注入镜像指令实现系统高可靠,其通用的接口还可以用作一般的程序代码分析统计,有着良好的扩展性。
  为了测试Multimem解决方案的功能和性能,本论文设计实现了一系列的测试。操作系统XV6的测试结果表明,Multimem对系统常用功能的影响只有5%。测试基准程序Sysbench显示连续写内存时,额外的开销仍然小于80%。实际应用程序SQLite的测试结果显示,五个基本操作的平均开销只有45%,比现有的软件内存高可靠方案提高了约56%。Multimem通过软件方法实现了硬件高可靠方案的基本功能,由于不需要额外的硬件,基本没有成本的开销,适应大多数普通的计算机,使得本方案更加的实用。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号