虚拟硬盘启动计算机技术的分析与改进毕业论文.doc
《虚拟硬盘启动计算机技术的分析与改进毕业论文.doc》由会员分享,可在线阅读,更多相关《虚拟硬盘启动计算机技术的分析与改进毕业论文.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 学号_ 密级_ 武汉大学本科毕业论文虚拟硬盘启动计算机技术的分析与改进院(系)名 称:计算机学院专 业 名 称 :计算机科学与技术学 生 姓 名 : 指 导 教 师 : 二一一年六月BACHELORS DEGREE THESIS OF WUHAN UNIVERSITYAnalysing and Improving the Technology of Native Boot from VHDCollege :Comptuter SchoolSubject :Cmputer Science And TechnologyName : Wang ChengDirected by : Chen Jia
2、nghan Associate Professor June 2011 郑 重 声 明本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。本学位论文的知识产权归属于培养单位。本人签名: 日期: II摘 要当下微软公司推出的Windows 7和Windows Server 2008增加了一项新功能:原生支持从VHD启动(Native boot from VHD),也就是说在系统内核以及启动引
3、导中增加了对VHD的支持。强大、快速、方便原生支持VHD启动一个看似不起眼的功能却蕴藏着巨大的潜力,它将带来系统使用、备份和还原等各方面的巨大变革。但是从VHD启动还是存在很多的限制。例如,早期版本的Windows并不支持从VHD启动计算机,你也无法从VHD中启动早期版本的Windows。本论文通过分析当前VHD启动计算机的技术,发现Windows7原生态支持VHD启动计算机主要在于系统中添加了VHD支持的相关驱动,并且系统的引导文件上做出了本质上的改变,在NT5.x系统(如WinXP)中启动机器的过程由NT Loader完成,NTLDR文件负责引导并由Boot.ini存储启动设置数据, 从V
4、ista开始WinNT版本号升级到6.x,引导程序也由功能更加强大的Windows Boot Manager接管,Windows Boot Manager的引导文件为bootmgr,而启动设置数据文件也由boot.ini更改为BCD,由此,我们尝试更改WINDOWS XP上的引导文件和数据文件,使得WINDOWS XP系统的计算机能够支持VHD启动计算机。 关键词:VHD;启动;系统ABSTRACTThe Microsoft has launched a new function named native support boot from VHD in Windows and Windows
5、 Server 2008.That is to say,they added the VHD support in system and startup guide.The technoogy of native boot from VHD has a deep influence on computers development.There are still some limits on VHD,for example,the earlyversions of Windows dont support this technology and you cant boot from VHD w
6、ith a system fo early Windows versions.This article found the fact that Windows 7 can native boot fromVHD is due to the drive which added to Windows 7 system,on the other hand,the guide has essentially changed.In the system of NT5.x(such as windows XP),the process of booting is maked by NT Loader,NT
7、 Loader is inchage of the boot and the Boot.ini store the boot configutation data.But from Vista on,the WinNT increase to 6.x.NT Loarder is instead by Windows Boot Manager which is stronger.Windows Boot Managers boot file is bootmgr,and the boot configutation data file became BCD instead of boot.ini
8、.Therefore,we can make Windows XP support boot from VHD if we modify the boot loader and configutation data.Keywords:VHD;native boot;system目 录摘 要IABSTRACTII第1章 绪论11.1 研究背景11.2虚拟硬盘启动计算机的研究现状31.3 论文结构介绍41.4本章小结4第2章 虚拟硬盘启动计算机技术原理52.1 VHD的技术介绍52.2启动项管理BCDedit62.3 VHD的创建、附加及分离72.3.1 Disk Management方法72.3
9、.2 DiskPart方法102.4本章小结12第3章 虚拟硬盘启动计算机技术分析133.1.1 创建和附加一个VHD133.1.2 定位一个install.wim镜像文件然后应用到VHD133.1.3 定位一个install.wim镜像文件然后应用到VHD143.1.4 将VHD的系统启动信息写入BCD143.3本章小结15第4章虚拟硬盘启动计算机技术改进164.1在Windows XP系统上实现 VHD启动Windows 7164.2 将低版本的windows操作系统装入VHD并启动194.3本章小结21总结22参考文献23致谢25 第1章 绪论1.1 研究背景VHD(Virtual Ha
10、rd Disk)顾名思义是虚拟的硬盘,具有物理硬盘一样的特性,可以执行分区、格式化读写等标准的磁盘操作。绝大多数人最初接触VHD格式的文件,是在使用Virtual PC或者Virtual Server时,VHD是以文件形式存在的虚拟机的磁盘。微软在2005年公开了VHD格式文件的全部细节,可以从微软的TechNet网站下载Virtual Hard Disk Image Format Specification,详情见参考文献。这说明了微软不仅仅要把VHD应用在虚拟机领域,更希望VHD能够成为一种新的磁盘格式和载体在业界得到更多的支持。让我们抛开虚拟机,把目光集中在VHD文件本身。VHD是一块虚
11、拟的硬盘,不同于传统硬盘的盘片、磁头和磁道,VHD硬盘的载体是文件系统上的一个VHD文件。当我们查看VHD文件的技术标准,就会发现标准中定义了很多Cylinder、Heads和Sectors等硬盘特有的术语,来模拟针对硬盘的I/O操作。既然VHD是一块硬盘,那么就可以跟物理硬盘一样,进行分区、格式化、读写等操作。我们这可以这样认为,VHD也是硬盘的一种,就像2.5寸、3.5寸、SCSI、SATA、IDE等不同规格的硬盘一样,VHD是在一个文件中的硬盘。根据微软虚拟硬盘映像格式规范,VHD分为固定虚拟硬盘、动态扩展虚拟硬盘、差异虚拟硬盘三种类型。固定虚拟硬盘:此类VHD需要的物理存储空间与创建磁
12、盘时为其指定的大小相同,也就是VHD文件的大小与虚拟硬盘大小相同,而且保持不变。固定VHD的大小不会随着向虚拟硬盘写入数据而变化,其I/O性能比另外两种类型的VHD要高。动态扩展虚拟硬盘:此类VHD创建时只占较少的硬盘空间,随着虚拟硬盘的使用,VHD文件的不断增长,最高达到创建虚拟硬盘时指定的最大大小,删除VHD中的数据不会自动减少动态VHD大小。差异虚拟硬盘:此类VHD是与另一虚拟硬盘以父子关系相关联的虚拟硬盘,差异硬盘是子,关联的虚拟硬盘是父,父VHD可以为任何类型的虚拟硬盘;差异VHD存储对父VHD所做的所有更改,并提供了一种技术而不改变父硬盘的内容。要把VHD文件当做物理硬盘一样读写,
13、必须要有相应的驱动程序。在09年10月正式推出的Windows7中,其启动部分和内核驱动程序内置了对VHD文件读写的支持,我们在使用Windows7时,不仅可以通过加载VHD直接访问VHD文件中的内容,也可以通过Windows7的引导程序直接启动已安装于VHD磁盘上的另一个操作系统。就是你不需要在硬盘上安装任何的系统和虚拟机,通过Windows 7 的引导文件,就可以直接启动 VHD 里的系统。也就是说,你把一个装了 Windwos 7 的 VHD,放到一个新硬盘上(当然需要分区并有活动主分区),然后更新一下活动主分区的引导信息,启动计算机,就可以直接进入 VHD 里 Windows了。 正因
14、为 windows 7 的 VHD,既是一个文件,又支持原生启动,才具备了极大的优势。要充分发挥 VHD 的优势,还得用到差分磁盘(也称差分 VHD,或者子 VHD)。差分 VHD,是以某个 VHD 为基础建立的(这个 VHD 就是母盘),对差分 VHD 的修改,不会影响到母盘。当母盘系统达到一个理想状态时,我们可以创建一个差分 VHD ,以后就使用这个差分 VHD 。当差分 VHD 系统用久了出现不稳定时,我们只要删除这个差分 VHD,以原来的母盘重建一个新的差分 VHD,系统就有回到了理想的状态。因此,windows 7 的 VHD 具备了还原卡、时光机等的特点。我们可以根据需要,以不同的
15、 VHD 为母盘创建差分 VHD ,差分磁盘还可以多级创建,即以某个差分磁盘为母盘,再创建差分磁盘。我们可以在创建差分 VHD 时,就复制一个备份,可以实现随时用备份的差分磁盘来替换差分磁盘,实现快速还原,也称秒还原,因为这个还原过程在1-2秒内就可完成。这个特点是ghost之类的备份软件所无法比拟的。因为Windows 7的引导程序和Windows 7本身都包含了对VHD文件的读写驱动程序,因此我们可以在启动计算机的时候,访问VHD并且从其上启动;我们也可以在Windows 7中直接创建、加载和卸载VHD文件。这些都是VHD读写驱动的功劳,因此Windows 7不需要安装任何虚拟化软件。从V
16、HD启动之后,计算机的操作系统直接访问硬件,不是以虚拟化的方式运行。这里面唯一的区别,就是对文件系统读写访问的时候,需要经过额外的一层VHD读写驱动的解析,这里面有一些微量的I/O性能开销,但是跟虚拟化的情况相比,性能基本上接近了真机。我查了一些测试资料,有一组直接读取硬盘和读写VHD的比较,性能差别微乎其微。 总之,Windows 7 的 VHD,既是虚拟机,又不是一般的虚拟机,因为它利用的是真实的硬件环境,除了硬盘,从VHD启动计算机,能够让你体验到真实物理环境的高性能,同时你可以快速创建和删除多个系统,它实在是一项强大的技术。1.2虚拟硬盘启动计算机的研究现状 虽然目前从VHD上启动计算
17、机技术已经实现,而且VHD技术也十分地强大耀眼,然而我国对VHD技术还仅仅停留在体验和使用阶段,并没有相关VHD技术改进的论文发表,实在令人深表遗憾。而国外却是十分的重视这项技术的运用,微软公司也在不断地完善自己的这项技术,希望能够通过VHD技术和广大的用户群体来占领虚拟技术的市场,他们接连发布了VISTA 和 WINDOWS XP系统的VHD系统文件供用户免费下载。拥有众多用户的微软加上出色的VHD表现,我们可以预想到VHD启动计算机的光明前途。目前虚拟硬盘启动计算机的应用还主要停留在在一个WIN7宿主的计算机身上创建多个操作系统,当做另外一种先进的虚拟机使用。虽然VHD启动计算机十分地方便
18、,技术也已经趋于成熟,但是我们仍然可以看到从VHD启动计算机的多方面限制:1使用VHD本机启动以前版本的Windows。Windows Vista(R)和Window Server 2008(及以前版本的 Windows)不支持本机启动。本机启动VHD需要对操作系统进行重大更改,而这些更改是Windows 7中的新增功能。2休眠以节省电量。从VHD 映像启动的操作系统不支持休眠。3将压缩或加密的VHD用于本机启动。已在主机卷上使用NFTS压缩或使用加密文件系统加密的VHD不支持本机启动。4当主机卷受Bitlocker(TM)保护时配置本机VHD启动。可将VHD文件保存在受Bitlocker保护
19、的文件系统上,但无法将VHD用于本机启动或在VHD包含的卷上启动Bitlocker。5启动到远程共享或USB闪存驱动器上的VHD。无论Windows安装在物理卷上还是通过VHD安装,Windows都不支持启动到远程共享或USB闪存驱动器。1.3 论文结构介绍本次论文的主要研究内容即通过分析VHD技术的原理,在传统的从VHD启动计算机的技术基础之上进行探索跟尝试在低版本的Windows操作系统上实现VHD启动计算机,同时探讨将低版本的Windows操作系统装入VHD文件并从中启动的方法。在之前的文章中我们已经简单地介绍了VHD技术的一些应用,和当前VHD启动计算机技术的研究现状,在之后的第二章我
20、们将详细地分析VHD技术的原理,第三章我们会根据基本原理探讨前人的一些改进方法,最后在第四章我会根据之前的分析介绍一下自己的改进虚拟硬盘启动计算机的方法。1.4本章小结 在这一章中我们主要介绍了我们要研究讨论的对象虚拟硬盘(VHD),了解到微软公司在新推出的Windows 7和Windows Server 2008的内核驱动程序中直接添加了对VHD的支持。虽然VHD是当前的一项热门技术,但是他本身还是有很多的限制,我们也了解到目前对于虚拟硬盘启动计算机技术研究的现状。最后我们对论文的结构有了一个大概的了解。第2章 虚拟硬盘启动计算机技术原理2.1 VHD的技术介绍 VHD文件格式(.vhd)的
21、文件代表着一个虚拟硬盘。要在Windows Server2008以前版本的Windows系统上使用VHD文件,你必须要安装Hyper-V,Microsoft Virtual Ssrver或者Windows V-PC。但是在Windows 7和Windows Server 2008系统上,你可以直接创建,配置而且可以不用虚拟机或者虚拟程序就可以直接从VHD文件上启动物理计算机。这个功能简化了镜像的管理因为他能让你:1. 规范你系统内的镜像格式和工具集。2. 减少了目录和支持的镜像数量。3. 增加服务器的利用率来节省资源。在讨论具体的技术实现方式之前,我们首先需要理解操作系统对磁盘和文件的管理。操
22、作系统有磁盘系统和文件系统两部分,分别处理对硬盘的I/O读写指令(磁盘系统),和管理硬盘之上的分区、数据和文件格式(文件系统)。VHD是存在于文件之上的磁盘,可想而知它的技术实现必须横跨磁盘系统和文件系统这两部分。微软网站上的Windows存储技术系列Webcast中有详细介绍。简单的说,要把VHD文件当作硬盘一样读写,必须有相应的驱动程序。实现虚拟存储的可执行模块必然是驱动程序, 虚拟硬盘的实质就是虚拟硬盘驱动程。在Virtual PC和Virtual Server中,微软就是通过在虚拟机种加入VHD的驱动程序,使得虚拟机可以从VHD启动并进行后续的操作。在Windows 7中,微软把VHD
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 虚拟硬盘启动计算机技术的分析与改进 毕业论文 虚拟 硬盘 启动 计算机技术 分析 改进
限制150内