基于函数式编程模型的虚拟机的设计与实现
本文关键词:基于函数式编程模型的虚拟机的设计与实现
【摘要】:自20世纪60年代以来,研究人员就开始了对于虚拟机和硬件虚拟化的研究。随着芯片制造工艺的飞速发展,各式各样的嵌入式设备大量地涌现了出来。但是由于物理设备自身的封闭性,无论是调试或者捕获设备内部状态,都显得就极为困难。而虚拟机技术则为我们的软件开发提供了极大的便利。通过虚拟机技术,我们可以将各种各样的异构硬件设备运行于Intel x86体系的通用PC机上。为基于特定硬件设备的软件开发降低调试和验证的复杂性,同时避免实际部署时的开销,又省去了对开发专用硬件设备的依赖。 由于虚拟机本身也可以称为一种软件产品,所以它的设计与开发严格按照软件工程的规范,从需求分析,功能设计,功能实现到最后的功能和性能的测试。结合物理设备高耦合、硬件逻辑确定、输入输出设备行为状态不可知等特点,将虚拟机分为输入输出设备,存储设备和核心算逻部件三大部分。在设计中以函数式编程的方式,结合Monad结构,设计了便于开发和调试的虚拟机模型。并以NES8位机为例,以自定义的NES Monad结构为基础,用函数式编程语言Haskell分别实现了CPU,内存和IO接口,图像处理单元(PPU)等不同功能和结构的硬件设备,将基于8位CPU的NES虚拟机运行于基于Intel x86CPU的操作系统之上。并通过大量的测试用例,,验证了基于函数式的虚拟机在的虚拟机在运行时的可靠性和正确性。 在实际的工作中,硬件的开发设计者,只需要根据硬件的实际逻辑特性,修改对应的虚拟机模块,即可以在更短的时间内,实现一套完整而健壮的针对特定硬件虚拟机环境。为特种设备的开发和基于嵌入式设备的软件开发提供更大的便捷。
【关键词】:虚拟机 模拟器 函数式编程 Haskell
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP302
【目录】:
- 摘要4-5
- Abstract5-8
- 1 绪论8-12
- 1.1 课题研究背景8
- 1.2 课题的研究目的及其意义8-10
- 1.3 国内外研究现状10
- 1.4 主要工作和组织结构10-12
- 2 基于函数式编程模型的虚拟机的需求分析12-20
- 2.1 虚拟机的兼容性需求分析12-15
- 2.2 虚拟机的功能需求分析15-18
- 2.3 虚拟机的非功能需求分析18
- 2.4 本章小结18-20
- 3 基于函数式编程模型的虚拟机的设计20-39
- 3.1 虚拟机的功能模块结构设计20
- 3.2 功能模块详细设计20-38
- 3.3 本章小结38-39
- 4 基于函数式编程模型的虚拟机的实现39-60
- 4.1 基于函数式的虚拟机控制系统的实现39-42
- 4.2 虚拟机调试模块的实现42-44
- 4.3 虚拟机 CPU 的实现44-55
- 4.4 虚拟机内存的实现55-57
- 4.5 虚拟机 I/O 设备的实现57-59
- 4.6 本章小结59-60
- 5 基于函数式编程模型的虚拟机的测试60-64
- 5.1 测试的基本方法60
- 5.2 虚拟机的白盒测试60-61
- 5.3 虚拟机的黑盒测试61-62
- 5.4 虚拟机的性能测试62-63
- 5.5 本章小结63-64
- 6 总结与展望64-66
- 6.1 全文总结64
- 6.2 展望64-66
- 致谢66-67
- 参考文献67-70
【相似文献】
中国期刊全文数据库 前10条
1 王兴波;;有关虚拟机及虚拟化技术的几点诠注[J];信息化纵横;2009年07期
2 包敬海;;浅谈基于虚拟机保护个人服务器[J];福建电脑;2009年08期
3 张岐;;虚拟机在线迁移技术综述[J];农业网络信息;2012年02期
4 ;实而不“虚” 三大王牌虚拟机评测[J];电脑爱好者;2013年08期
5 付王敏捷;;浅谈虚拟机的原理及应用[J];电子制作;2014年02期
6 ;金蝉脱壳 创建安全的虚拟机系统[J];新电脑;2002年04期
7 虚拟人;;神奇的虚拟机软件[J];软件;2002年12期
8 吴放;虚拟机软件专题测试 运筹帷幄之间[J];新电脑;2003年03期
9 杨兴平;;玩转虚拟机就这么简单[J];网络与信息;2005年12期
10 王国安;康雯瑛;葛稚燕;;使用虚拟机软件解决自动站和人工站月报表数据的审核[J];河南气象;2006年01期
中国重要会议论文全文数据库 前5条
1 韦万贵;;虚拟机软件在实际工作中的应用[A];甘肃成人教育协会2008年年会论文集[C];2008年
2 李永;吴庆波;苏航;;基于虚拟机的动态迁移技术分析和研究[A];计算机技术与应用进展·2007——全国第18届计算机技术与应用(CACIS)学术会议论文集[C];2007年
3 王轶;陈俊辉;;使用VPC2007搭建企业应用和测试平台[A];2007第二届全国广播电视技术论文集2(下)[C];2007年
4 董焱;;基于虚拟化技术的实验教学中心环境构建[A];北京高校实验室工作研究会2010年年会优秀论文[C];2011年
5 董焱;;基于虚拟化技术的实验教学中心环境构建[A];北京高教学会实验室工作研究会2010年学术研讨会论文集(下册)[C];2010年
中国重要报纸全文数据库 前10条
1 特约作者:聂阳德 钟达文;体验虚拟机的神奇魅力[N];电脑报;2002年
2 黄树;实战虚拟机软件[N];中国电脑教育报;2004年
3 卿晨;虚拟机为网络教学收紧成本口袋[N];中国电脑教育报;2007年
4 ;虚拟机管理工具仍有改进空间[N];网络世界;2007年
5 四川工程职业技术学院 江平;虚拟机助力计算机教学[N];中国电脑教育报;2006年
6 区阳;微软推出首款虚拟机软件[N];中国计算机报;2003年
7 丁士明;联想虚拟化解决方案[N];中国计算机报;2007年
8 特约作者 滔滔江水;计算机也能虚拟[N];电脑报;2002年
9 ;虚拟化市场增长近五成[N];网络世界;2006年
10 本报特约撰稿 陈杰;虚拟化:制度下的安全[N];计算机世界;2009年
中国博士学位论文全文数据库 前8条
1 林杰;面向服务监控的可控云关键技术研究[D];北京邮电大学;2015年
2 王篁;基于龙芯平台的虚拟机研究[D];中国科学技术大学;2016年
3 林铭炜;面向云平台的虚拟机异常行为检测方法研究[D];重庆大学;2014年
4 陈微;基于动态二进制翻译的协同设计虚拟机关键技术研究[D];国防科学技术大学;2010年
5 马飞;云数据中心中虚拟机放置和实时迁移研究[D];北京交通大学;2013年
6 王晓静;I/O虚拟化的性能隔离和优化[D];华中科技大学;2012年
7 张逢U
本文编号:550729
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/550729.html