IT技术分享
IT技术分享 您当前的位置:主页 > IT技术分享 >
为什么使用SCSI硬盘的时候不能启动Hyper-V
发布时间:2018-10-02 编辑:918Õ

  【IT专家网独家稿件】在Hyper-V之下,有两种凤凰娱乐平台硬盘控制器可添加到虚拟机上——一种是IDE硬盘,另一种是SCSI硬盘。这两种硬盘控制器的大致区别如下:

  IDE: 1.在操作系统上运行,不需要安装集成服务。

     2.可用来启动虚拟机。

  SCSI: 支持虚拟硬盘的热添加和热删除。

  虚拟机上的这类硬盘控制器与物理电脑上所使用的硬盘不同。SCSI VHD可以保存在IDE硬盘中,而且IDE VHD可以保存在SCSI硬盘中。

  为什么使用SCSI硬盘的时候不能启动Hyper-V?

  把SCSI控制器称为SCSI有点不恰当。我们以前在虚拟机上工作时,知道服务器上有SCSI硬盘——因此虚拟服务器也需要虚拟的SCSI硬盘。出于这个目的,我们便仿制了一个用于虚拟服务器的Adaptec SCSI控制器。遗憾地是,该SCSI控制器是一个非常高级的硬件设施——因此其速度比简单些的IDE控制器还要慢。

  最后,我们必须扩展这一仿制的Adaptec控制器,并用我们所支持的操作系统写自定义驱动,目的是为了让虚拟机上的SCSI具备良好性能。

  我们放弃了Hyper-V和Adaptec控制器的仿效物。相反,执行了仿效的传统IDE控制器以及一个全新的虚拟控制器,后者以VMBUS为基础,是一个存储控制器——它的身上不再有仿效品的痕迹。

  这就是当我们选择为虚拟机添加一个SCSI控制器的时候,要添加到虚拟机的虚拟存储控制器。

  可问题在于,虚拟机所使用的BIOS并不了解VMBUS,而且无法启动仿效设备。这也就是为什么我们可以启动IDE控制器和遗留网络适配器,却不能启动SCSI控制器或网络适配器的原因。

  不要在意因使用SCSI硬盘而无法启动Hyper-V

  跟用户谈及在虚拟机上启动SCSI硬盘的事宜时,他们给出了两点理由。

  一是SCSI与IDE相比可以支持更大的虚拟硬盘。为解决这一问题,我们在Hyper-V里用48位 LBA制作了一个IDE控制器。这样,用户就可以将容量为2TB的虚拟硬盘附加到IDE控制器上。

  第二个理由与性能有关,可这同样不成问题。我们截取了一个架构图(用户可以辨认出它是一个旧图,因为它使用了代码名称Viridian,意思是在出现Hyper-V这一名词前,就有了这个图。)现在,母分区图不是百分之百能与Windows Server 2008 R2对应——不过子分区图可与Windows Server 2008和Windows Server 2008 R2对应,而这也是我们要关注的地方。

为什么使用SCSI硬盘的时候不能启动Hyper-V

图一

  首先,在子分区部分要注意的就是Virtual Storage Miniport。将SCSI控制器附加到虚拟机上的时候,该端口就是驱动加载的地方。它连接到VMBUS,可以让我们执行Disk I/O,而不需要有任何有助于高性能的仿效物。

  下一个要注意的是“Fast Path Filter”。这是一个安装在虚拟机所有硬盘对象上的过滤驱动。可以让我们以任何原因(除了低级别的硬盘操作),直接通过VMBUS路径。

  不论我们是使用IDE硬盘还是SCSI硬盘,一旦集成服务安装完毕,就会有相同的代码路径用于Disk I/O。下面是两个针对IDE硬盘的限制:

  1.客户操作系统对相同控制器上IDE硬盘的硬盘命令进行序列化操作。(注意,一个控制器上只能存在两个IDE硬盘。)

  2.IDE硬盘的I/O被限制在512kb或更小的量,而SCSI控制器的字区大小可以达到8mb。

  目前,还没有看到有着这种局限性的测试会导致与IDE和SCSI截然不同的后果。

本文源自: AG环亚集团官网

Copyright © 2005-2016 http://www.letskungfu.com AG环亚集团官网_AG亚游平台_AG8环亚集团_新浪新闻版权所有 AG环亚集团官网_AG亚游平台_AG8环亚集团_新浪新闻