用于含虚拟机的宿主机系统的磁盘物理块分配方法和设备技术方案

技术编号:4260269 阅读:381 留言:0更新日期:2012-04-11 18:40
本发明专利技术提出了用于包含虚拟机的宿主机系统的磁盘物理块分配方法和设备。现有的宿主机系统在为虚拟块分配相应的物理块以进行写入操作时并不考虑待写入的各个虚拟块之间是否属于同一个文件的关系。因此,属于同一文件的多个虚拟块往往被分散到物理磁盘的不连续位置上。本发明专利技术提出的一个方案能够分析待写入的虚拟块,以识别它们是否属于同一文件,并为属于同一文件的虚拟块分配连续的物理块,在很大程度上避免了同一文件被分散存储在不连续的物理磁盘块。

【技术实现步骤摘要】

本专利技术涉及一种为文件分配磁盘块的方法和设备,更具体地,涉及用于包括有虚拟机系统的宿主机系统的磁盘物理块分配方法和设备。
技术介绍
目前,虚拟机技术已经在很多应用领域中得到了广泛的接受。图l示出了一个示 例性的虚拟机系统及其宿主机系统的例子。如图1所示,在宿主机系统100中建立了多个虚 拟机系统101-104。在宿主机系统中,还包括服务控制台、宿主机系统和虚拟机系统之间的 虚拟层。宿主机系统100例如是具有Intel架构,可以包括CPU、内存、硬盘以及网络接口卡 等。宿主机系统100根据不同的用途和自身可用的资源为这些虚拟机系统分别分配资源, 例如CPU、硬盘、内存等,由此使得每个虚拟机可以独立运行不同的应用程序。在宿主机系统 中,每个单独的虚拟机中的操作系统和应用都认为自己运行在一台真实的、类似于主机的 独立计算机上。如图1所示,在虚拟机上可以运行诸如Microsoft公司的Windows 2000操 作系统、Windows NT操作系统、Li皿x操作系统等。每个虚拟机系统在为该虚拟机分配的虚 拟磁盘上存储并读取文件并独立地执行各种运算任务。上述虚拟机的应用可以带来各种优 点,例如,由于在一台宿主机系统中可以分配多个虚拟机系统,因此只需要购置宿主机就可 以并行互不干扰的执行各种任务。当任务结束后,虚拟机所占用的资源可以被释放或者被 灵活地裁减以应用于其他的任务,由此节约了大量的硬件投资并大大增强了系统的伸縮性 和灵活性。此外,虚拟机系统还可以为关键的应用保证资源分配。由于上述优点,在实际应 用中,使用虚拟机系统可以将软件和硬件成本降低约40%,并且能够降低大约70%的维护 成本。 在建立虚拟机的过程中,需要从宿主机的物理磁盘中分配一定的空间给虚拟机, 作为虚拟机的磁盘,即虚拟磁盘。现有系统中,磁盘的最小存储单元通常称为磁盘块(disk block),每个磁盘块的大小设置成相同,例如为512字节。虚拟磁盘也被划分成许多磁盘 块,下文称为虚拟块(virtual block),而宿主机的物理磁盘的磁盘块通常被称作物理块 (physical block)。虚拟块和物理块之间相互映射。 以下结合图2说明现有技术的宿主机系统为文件分配磁盘块的过程。如图2所 示,待存储的文件是虚拟机中的文件a和文件b,假设文件a和文件b的大小均为8个文件 块,即al-a8以及bl-b8。首先,虚拟机系统分配相应的虚拟磁盘块。因为难以保证总是为 文件a、 b分配地址连续的虚拟磁盘块,为文件a和文件b分配的虚拟磁盘块是往往散布在 虚拟磁盘上。从图2可以看到,虚拟机系统为文件a和文件b的文件块al-a8和bl_b8分 别分配了 8个虚拟磁盘块Val-Va8和Vbl_Vb8。接下来,需要把虚拟机的虚拟块写入物理磁 盘上,即为虚拟块分配相应的物理块。现有的宿主机系统在执行这一步骤时,并不考虑待写 入的虚拟块之间的关系(例如,各虚拟块是否属于同一文件)。图2示意性地显示了现有技 术中一种较简单的映射方式,虚拟磁盘块Val-Va8被映射到物理磁盘块Val-Va8,虚拟磁盘 块Vb 1-Vb8分别对应于物理磁盘块Pb 1-Pb8,而不改变虚拟块Val-Va8、 Vb 1-Vb8之间相互位置关系。通过上述步骤,文件a和文件b的文件块al-a8、bl-b8被存储到物理块Pal-Pa8、 Pbl-Pb8。此外,文件i央al-a8,bl-b8与虚拟i央Val-Va8, Vbl-Vb8、物理i央Pal-Pa8, Pbl-Pb8 之间的映射关系也被保持在虚拟机系统和宿主机系统中,例如作为虚拟机系统和宿主机系 统中的FAT(文件分配表信息)和目录信息(Directory Information)等而保存。 应当注意,图2所示为文件分配磁盘块的过程中,因为并不考虑虚拟磁盘块之间 的关系,所以属于同一文件的多个虚拟块常常被分配给分散的、不连续的物理磁盘块。 以下进一步解释现有技术中为文件分配存储空间的过程。现有的许多操作系统 (尤其是Windows操作系统)中,采用如下的分配策略文件都被紧邻地存放在物理磁盘 上。然而,当一个文件变大时,由于紧接在该文件后面的物理磁盘块已经被其他文件占用, 该文件增加的内容只能存储在其他文件后面,从而该文件的内容分布在磁盘的不同位置。 以下参见图3a-3c来具体说明这一问题。 图3a-3c示意性地示出了文件被存储在磁盘空间的例子。图3a_3c的第一行和第 一列用于标识磁盘空间地址,其中分别使用字母a-z、 a-f作为横坐标和纵坐标。在存储空 间头部的TOC(Table Of Contents)保存了文件的目录信息,包括例如文件名称、文件的起 始地址、终止地址等。 参见图3a的T0C,存有文件名称为hello, txt的文件,该文件占据了磁盘上的 ae-le位置,文件内容为Hello, iorld。 参见图3b的TOC,存储有两个文件hello. txt和bye. txt,分别占据ae-le和 me-ze的位置。第二个文件的内容是Goodbye, _world,第二个文件bye. txt紧邻在第 一个he 1 lo. txt之后存储在磁盘上,两个文件之间没有间隙。 图3c显示了对第一个文件进行扩展的时候如何在磁盘上存储。举例而言,文件 hello, txt的内容从Hello,—world扩展为Hello,—world !!。由于第一个文件之后 没有多余的存储空间,因此新增加的文件内容!!就无法紧接着原文件的末尾继续写入。 根据现有技术的分配规则,在尚未被占用的磁盘空间的起始位置,为第一个文件的扩展内 容分配磁盘空间。另一种方法是把第一个文件hello. txt之后的文件内容全部向后移动 一定量,以容纳第一个文件的扩展内容! !,从而扩展内容! !被紧邻存储在原始文件 内容Hello,jorld之后。但是,这种方法需要对第一个文件之后的全部文件进行读、写操 作,太消耗时间,因此大多数操作系统不采用这种方式。如图3c所示,在第二个文件bye. txt之后紧邻着为第一个文件的扩展内容!!分配磁盘空间。这样,扩展后的文件内容 ! !位于磁盘上的af-bf位置,相应的T0C信息被修改。这样,第一个文件hello. txt被 存储在磁盘空间的不同位置, 一部分位于磁盘上的ae-le,另一部分位于磁盘上的af-bf 。 应当指出,上述图3a-3c仅是从概念上示出了文件的存储方式。实际上,不同的操 作系统采用不同的文件系统,也使用不同的数据结构。例如,Windows操作系统中,上述关 于文件的TOC信息可以被存储在文件分配表(FAT16、FAT32)、目录表(Directory Table)。 由上述分析可知,现有技术如图2、图3那样进行处理,会导致同一文件的多个文 件块被存放在不连续的物理磁盘块。图4示意性示出了同一文件分散存储在不连续的物理 磁盘块的情形,其中文件A和文件B被分割成多个碎片存放在磁盘上。这样,即使在访问同 一个文件(A或B)时,盘驱动器头也需要频繁地跳转到不同的物理位置来访问文件。这样 将导致文件读取时间延长。此外,盘驱动器的频繁跳转会导致使用寿命会縮短,使系统性能下降。
技术实现思路
为了克服上述问题提本文档来自技高网
...

【技术保护点】
一种用于宿主机系统的磁盘物理块分配方法,所述宿主机系统包括虚拟机系统,所述方法包括以下步骤:接收待写入的至少一个虚拟块,所述至少一个虚拟块属于至少一个文件;接收所述虚拟机系统的关于所述虚拟块的文件分配信息;分析所述虚拟块以及所述文件分配信息,以识别属于同一文件的至少一个虚拟块;为属于同一文件的至少一个虚拟块分配相应数量的连续的物理块。

【技术特征摘要】
一种用于宿主机系统的磁盘物理块分配方法,所述宿主机系统包括虚拟机系统,所述方法包括以下步骤接收待写入的至少一个虚拟块,所述至少一个虚拟块属于至少一个文件;接收所述虚拟机系统的关于所述虚拟块的文件分配信息;分析所述虚拟块以及所述文件分配信息,以识别属于同一文件的至少一个虚拟块;为属于同一文件的至少一个虚拟块分配相应数量的连续的物理块。2. 根据权利要求l的方法,其中所述为属于同一文件的至少一个虚拟块分配相应数 量的连续的物理块的步骤还包括,把不同文件分散存储在物理磁盘上使其彼此不相邻的步 骤。3. 根据权利要求2的方法,其中所述把不同文件分散存储在物理磁盘上使其彼此不相 邻的步骤还包括,随机地为每个文件分配起始物理块的位置以使不同文件彼此不相邻的步骤。4. 根据权利要求2的方法,其中所述把不同文件分散存储在物理磁盘上使其彼此不相 邻的步骤还包括,为所述同一文件分配连续的物理块使得所述连续的物理块的数目超过该 文件大小所需的物理块数目的步骤。5. 根据权利要求l的方法,其中所述文件分配信息包括与所述虚拟块相关的文件分配 表和目录表。6. 根据权利要求1的方法,还包括存储所述虚拟块与所述物理块之间的映射关系...

【专利技术属性】
技术研发人员:田启明金凌李立高志国
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利