JP5471677B2 - Virtual disk control system, method and program - Google Patents

Virtual disk control system, method and program Download PDF

Info

Publication number
JP5471677B2
JP5471677B2 JP2010066728A JP2010066728A JP5471677B2 JP 5471677 B2 JP5471677 B2 JP 5471677B2 JP 2010066728 A JP2010066728 A JP 2010066728A JP 2010066728 A JP2010066728 A JP 2010066728A JP 5471677 B2 JP5471677 B2 JP 5471677B2
Authority
JP
Japan
Prior art keywords
virtual
virtual disk
physical
storage
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010066728A
Other languages
Japanese (ja)
Other versions
JP2011198280A (en
Inventor
隆広 阪田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2010066728A priority Critical patent/JP5471677B2/en
Publication of JP2011198280A publication Critical patent/JP2011198280A/en
Application granted granted Critical
Publication of JP5471677B2 publication Critical patent/JP5471677B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、仮想マシンの仮想ディスクを制御する仮想ディスク制御システム、仮想ディスク制御方法及び仮想ディスク制御手段に関する。   The present invention relates to a virtual disk control system, a virtual disk control method, and a virtual disk control unit that control a virtual disk of a virtual machine.

サーバ装置が搭載するメモリの量が飛躍的に高まるに従い、サーバ装置上に仮想マシンを構築する仮想化環境での積極的なメモリの活用が求められている。   As the amount of memory installed in a server apparatus increases dramatically, active use of memory in a virtual environment in which a virtual machine is built on the server apparatus is required.

例えば、関連する技術として、特許文献1には、サーバ装置上に構築された各仮想マシンの負荷変動に応じてメモリの再配分を行うシステムが記載されている。   For example, as a related technique, Patent Literature 1 describes a system that redistributes memory according to load fluctuations of each virtual machine built on a server device.

特開平6−110715号公報JP-A-6-110715

仮想化環境において、構築された仮想マシン上で動作するゲストOSによっては、使用できるメモリ量に制限が設けられていることがある。この場合には、物理マシンが大容量の物理メモリを搭載していたとしても、その物理メモリを有効的に活用することができない。   In a virtual environment, depending on the guest OS operating on the constructed virtual machine, there may be a limit on the amount of memory that can be used. In this case, even if the physical machine has a large-capacity physical memory, the physical memory cannot be used effectively.

例えば、特許文献1に記載されたシステムでは、上記のように使用できるメモリ量に制限が設けられている場合を想定していないため、そのような場合には、物理メモリを有効的に活用することができない。   For example, in the system described in Patent Document 1, it is not assumed that the amount of memory that can be used is limited as described above. In such a case, physical memory is effectively used. I can't.

そこで、本発明は、ゲストOSに依らず、仮想化環境において物理メモリを有効的に活用することができる仮想ディスク制御システム、仮想ディスク制御方法及び仮想ディスク制御手段を提供することを目的とする。   Accordingly, an object of the present invention is to provide a virtual disk control system, a virtual disk control method, and a virtual disk control unit that can effectively use physical memory in a virtual environment regardless of the guest OS.

本発明による仮想ディスク制御システムは、物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、データの物理的な格納先を物理マシンが搭載する物理メモリに指定する格納先指定手段と、格納先指定手段の指定に基づいて、データを物理メモリに格納するとともに、仮想ディスクにおける仮想の格納領域を示す格納領域情報と物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける対応付け手段とを含むことを特徴とする。   The virtual disk control system according to the present invention is a storage destination that designates a physical storage destination of data in a physical memory mounted on the physical machine when a virtual machine operating on the physical machine stores predetermined data in the virtual disk. Based on the designation by the designation means and the storage destination designation means, the data is stored in the physical memory, the storage area information indicating the virtual storage area in the virtual disk, and the storage location information indicating the actual storage location in the physical memory. And associating means for associating with each other.

本発明による仮想ディスク制御方法は、物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、データの物理的な格納先を物理マシンが搭載する物理メモリに指定し、指定に基づいてデータを物理メモリに格納するとともに、仮想ディスクにおける仮想の格納領域を示す格納領域情報と物理メモリにおける実際の格納場所を示す格納場所情報とを対応付けることを特徴とする。   According to the virtual disk control method of the present invention, when a virtual machine operating on a physical machine stores predetermined data in the virtual disk, the physical storage destination of the data is specified in the physical memory mounted on the physical machine. The data is stored in the physical memory based on the above, and the storage area information indicating the virtual storage area in the virtual disk is associated with the storage location information indicating the actual storage location in the physical memory.

本発明による仮想ディスク制御手段は、コンピュータに、物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、データの物理的な格納先を物理マシンが搭載する物理メモリに指定する格納先指定処理と、指定に基づいてデータを物理メモリに格納するとともに、仮想ディスクにおける仮想の格納領域を示す格納領域情報と物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける対応付け処理とを実行させることを特徴とする。   The virtual disk control means according to the present invention specifies a physical storage destination of data in a physical memory mounted on the physical machine when the virtual machine operating on the physical machine stores predetermined data in the virtual disk. Corresponding storage location specifying process to store data in physical memory based on the specification and to associate storage area information indicating a virtual storage area in the virtual disk with storage location information indicating an actual storage location in the physical memory And processing.

本発明によれば、ゲストOSに依らず、仮想化環境において物理メモリを有効的に活用することができる。   According to the present invention, physical memory can be effectively used in a virtual environment regardless of the guest OS.

本発明による仮想化ディスク制御方法を適用した仮想化システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the virtualization system to which the virtualization disk control method by this invention is applied. 仮想ディスク制御システムの動作例を示すブロック図である。It is a block diagram which shows the operation example of a virtual disk control system. 仮想ディスク制御システムが実行するデータ格納時の処理例を示す流れ図である。It is a flowchart which shows the process example at the time of the data storage which a virtual disk control system performs. 仮想ディスク制御システムが実行するデータアクセス時の処理例を示す流れ図である。It is a flowchart which shows the process example at the time of the data access which a virtual disk control system performs. 仮想ディスク制御システムの最小の構成例を示すブロック図である。It is a block diagram which shows the minimum structural example of a virtual disk control system.

以下、本発明の実施形態について図面を参照して説明する。図1は、本発明による仮想化ディスク制御方法を適用した仮想化システムの構成例を示すブロック図である。図1に示すように、本実施形態では、仮想化システムは、物理マシン3を含み、物理マシン3上では、仮想化ソフトウェア2を用いて仮想マシン1が構築されている。なお、本実施形態では、仮想化システムは、1台の仮想マシンを構築しているが、複数の仮想マシンを構築してもよい。また、物理マシン3は、具体的には、図1に示す仮想化ソフトウェア2を記憶部に記憶している。   Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration example of a virtualization system to which a virtualization disk control method according to the present invention is applied. As shown in FIG. 1, in this embodiment, the virtualization system includes a physical machine 3, and the virtual machine 1 is constructed using the virtualization software 2 on the physical machine 3. In the present embodiment, the virtualization system constructs one virtual machine, but a plurality of virtual machines may be constructed. Further, specifically, the physical machine 3 stores the virtualization software 2 shown in FIG. 1 in the storage unit.

物理マシン3は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。物理マシン3は、物理メモリ31及び物理ディスク装置32を備えている。   Specifically, the physical machine 3 is realized by an information processing apparatus such as a personal computer that operates according to a program. The physical machine 3 includes a physical memory 31 and a physical disk device 32.

物理メモリ31は、仮想マシン1がゲストOSに従って生成したページングファイルに相当するデータ311を格納する。なお、本実施形態では、ゲストOSとは、仮想マシン1上で動作しているOSのことをいう。   The physical memory 31 stores data 311 corresponding to a paging file generated by the virtual machine 1 according to the guest OS. In the present embodiment, the guest OS refers to an OS operating on the virtual machine 1.

物理ディスク装置32は、具体的には、光ディスク装置や磁気ディスク装置等の記憶装置によって実現され、仮想ディスク11の実体である仮想ディスクファイル321を格納する。   Specifically, the physical disk device 32 is realized by a storage device such as an optical disk device or a magnetic disk device, and stores a virtual disk file 321 that is the substance of the virtual disk 11.

図1に示すように、一般的な仮想化システムでは、仮想マシン1が生成したページングファイル111の実体を、ページングファイル3211として、仮想ディスクファイル321の中に格納する。これに対して、本実施形態では、上述したように、仮想マシン1が生成したページングファイル111の実体であるページングファイルに相当するデータ311を物理メモリ31に格納する。   As shown in FIG. 1, in a general virtualization system, the substance of the paging file 111 generated by the virtual machine 1 is stored in the virtual disk file 321 as a paging file 3211. On the other hand, in the present embodiment, as described above, the data 311 corresponding to the paging file that is the substance of the paging file 111 generated by the virtual machine 1 is stored in the physical memory 31.

仮想マシン1は、具体的には、仮想ソフトウェア2に従って物理マシン3のCPUが処理を実行することによって実現される。図1に示すように、仮想マシン1は、仮想ディスク11と仮想ディスク制御手段12とを含む。   Specifically, the virtual machine 1 is realized by the CPU of the physical machine 3 executing processing according to the virtual software 2. As shown in FIG. 1, the virtual machine 1 includes a virtual disk 11 and virtual disk control means 12.

仮想ディスク11は、仮想マシン1で記憶するデータの他に、仮想マシン1が生成するページングファイル111を格納する。仮想ディスク11は、具体的には、物理マシン3の物理ディスク装置32及び物理メモリ31によって実現される。仮想ディスク11に格納されるデータは、原則的に、物理マシン3の物理ディスク装置32に仮想ディスクファイル321として格納される。   The virtual disk 11 stores a paging file 111 generated by the virtual machine 1 in addition to the data stored in the virtual machine 1. Specifically, the virtual disk 11 is realized by the physical disk device 32 and the physical memory 31 of the physical machine 3. In principle, data stored in the virtual disk 11 is stored as a virtual disk file 321 in the physical disk device 32 of the physical machine 3.

仮想ディスク制御手段12は、仮想マシン1のゲストOS内で動作し、具体的には、仮想ソフトウェア2及びゲストOSに従って物理マシン3のCPUが処理を実行することによって実現される。仮想ディスク制御手段12は、仮想ディスク11が格納するデータの実体の格納場所を制御する機能を備えている。   The virtual disk control unit 12 operates in the guest OS of the virtual machine 1, and is specifically realized by the CPU of the physical machine 3 executing processing according to the virtual software 2 and the guest OS. The virtual disk control means 12 has a function of controlling the storage location of the substance of data stored in the virtual disk 11.

また、図1に示すように、仮想化ディスク制御方法を適用した仮想化システムは、仮想ディスク処理手段21を含む。仮想ディスク処理手段21は、具体的には、仮想ソフトウェア2に従って物理マシン3のCPUが処理を実行することによって実現される。仮想ディスク処理手段21は、仮想ディスク11の領域とデータの格納場所とを対応付けて管理する機能を備えている。また、仮想ディスク処理手段21は、割り当てテーブル記憶手段(図示せず)が記憶する仮想ディスク11を制御するために用いる割り当てテーブル211を更新する機能を備えている。また、仮想ディスク処理手段21は、仮想ディスク11からデータへのアクセスを制御する機能を備えている。   As shown in FIG. 1, the virtualization system to which the virtualization disk control method is applied includes virtual disk processing means 21. Specifically, the virtual disk processing unit 21 is realized by the CPU of the physical machine 3 executing the process according to the virtual software 2. The virtual disk processing means 21 has a function of managing the area of the virtual disk 11 and the data storage location in association with each other. Further, the virtual disk processing unit 21 has a function of updating the allocation table 211 used for controlling the virtual disk 11 stored in the allocation table storage unit (not shown). The virtual disk processing means 21 has a function of controlling access to data from the virtual disk 11.

割り当てテーブル記憶手段は、具体的には、物理メモリ31によって実現される。割り当てテーブル記憶手段が記憶する割り当てテーブル211の詳細については後述する。   Specifically, the allocation table storage means is realized by the physical memory 31. Details of the allocation table 211 stored by the allocation table storage means will be described later.

なお、本実施形態では、仮想ディスクの実体を物理ディスクが格納するファイルとして説明するが、ファイル形式に限らず、直接物理ディスクに仮想ディスクの実体であるデータを格納するようにしてもよい。また、仮想ディスクのファイルを生成し、仮想ディスクにおけるデータの格納領域を決定した後にその領域を通知するという順序に限らず、仮想ディスクにおけるデータの格納領域を決定した後に、その領域を通知し、仮想ディスクのファイルを生成するようにしてもよい。また、仮想化システムが複数台の仮想マシンを構築する場合には、各仮想マシンがそれぞれ仮想ディスク制御手段12を備えるようにしてもよいし、単独の仮想ディスク制御手段12で制御するようにしてもよい。   In the present embodiment, the virtual disk entity is described as a file stored in the physical disk. However, the present invention is not limited to the file format, and data as the virtual disk entity may be directly stored in the physical disk. In addition, the virtual disk file is generated, the data storage area in the virtual disk is determined and then the area is notified, and the data storage area in the virtual disk is determined, and then the area is notified. A virtual disk file may be generated. When the virtualization system constructs a plurality of virtual machines, each virtual machine may be provided with a virtual disk control unit 12 or controlled by a single virtual disk control unit 12. Also good.

次に、仮想ディスク制御システムの動作について図1〜図3を参照して説明する。図2は、仮想ディスク制御システムの動作例を示すブロック図である。図3は、仮想ディスク制御システムが実行するデータ格納時の処理例を示す流れ図である。   Next, the operation of the virtual disk control system will be described with reference to FIGS. FIG. 2 is a block diagram illustrating an operation example of the virtual disk control system. FIG. 3 is a flowchart showing an example of processing at the time of data storage executed by the virtual disk control system.

最初に、仮想マシン1がデータを格納する際の動作について説明する。図1に示す仮想化システムにおいて構築されている仮想マシン1は、その内部にOS(ゲストOS)を有している。仮想マシン1は、OSに従ってページングファイル111を生成すると、生成したページングファイル111を仮想ディスク11に格納する。   First, an operation when the virtual machine 1 stores data will be described. A virtual machine 1 constructed in the virtualization system shown in FIG. 1 has an OS (guest OS) therein. When the virtual machine 1 generates the paging file 111 according to the OS, the virtual machine 1 stores the generated paging file 111 in the virtual disk 11.

ここで、本実施形態では、仮想マシン1がページングファイル111を生成すると(図3のステップS11)、仮想ディスク制御手段12は、生成したページングファイル111の仮想ディスク11における格納領域を特定する(図3のステップS12)。例えば、仮想ディスク制御手段12は、格納領域を特定するために、ゲストOSのディスク制御用プログラム(ドライバ)と連携して動作する。   Here, in the present embodiment, when the virtual machine 1 generates the paging file 111 (step S11 in FIG. 3), the virtual disk control unit 12 specifies a storage area in the virtual disk 11 of the generated paging file 111 (FIG. 3). 3 step S12). For example, the virtual disk control unit 12 operates in cooperation with a guest OS disk control program (driver) in order to specify a storage area.

次いで、仮想ディスク制御手段12は、特定した格納領域を示す情報(例えば、アドレス)とともに、ページングファイル111の実体の格納先を物理メモリ31とする指示を仮想ディスク処理手段21に出力する(図3のステップS13)。なお、仮想ディスク制御手段12は、格納先を必ず物理メモリ31に変更するのではなく、所定のルールに従って物理メモリ31に変更するか否かを判断してもよい。例えば、仮想ディスク制御手段12は、高速なアクセスを要求されるデータや使用頻度の高いデータのみ格納先を物理メモリ31に変更するようにしてもよい。   Next, the virtual disk control unit 12 outputs, to the virtual disk processing unit 21, an instruction to set the physical storage location of the substance of the paging file 111 together with information (for example, an address) indicating the specified storage area (FIG. 3). Step S13). Note that the virtual disk control unit 12 may determine whether to change the storage destination to the physical memory 31 according to a predetermined rule instead of changing the storage destination to the physical memory 31 without fail. For example, the virtual disk control unit 12 may change the storage destination to the physical memory 31 only for data that requires high-speed access or data that is frequently used.

次いで、仮想ディスク処理手段21は、出力された指示に基づいて、物理メモリ31に所定の領域を確保し、ページングファイル111の実体を格納する(図3のステップS14)。   Next, the virtual disk processing means 21 secures a predetermined area in the physical memory 31 based on the output instruction, and stores the substance of the paging file 111 (step S14 in FIG. 3).

次いで、仮想ディスク処理手段21は、特定した仮想ディスク11の領域を、確保した物理メモリ31の領域に割り当てる。具体的には、仮想ディスク処理手段21は、指示とともに出力された情報に基づいて、ページングファイル111の仮想ディスク11における格納領域を示す情報と、ページングファイル111の格納場所を示す情報(具体的には、物理メモリ31のアドレス)とを対応付けて記憶するように、割り当てテーブル211を更新する(図3のステップS15)。   Next, the virtual disk processing means 21 allocates the identified virtual disk 11 area to the reserved physical memory 31 area. Specifically, the virtual disk processing means 21 determines information indicating the storage area of the paging file 111 in the virtual disk 11 and information indicating the storage location of the paging file 111 (specifically, based on the information output together with the instruction). Updates the allocation table 211 so as to store them in association with each other (step S15 in FIG. 3).

以降、仮想ディスク処理手段21は、ステップS15において割り当てた領域を指定するアクセス要求が出力されると、物理メモリ31が格納するデータの参照・書き込みを行うように制御する。割り当てテーブル211は、仮想ディスク11の領域を示す情報とその領域の格納場所を示す情報とを対応付けて保持している。なお、初期状態の割り当てテーブル211では、仮想ディスク11の領域は、仮想ディスクファイル321と対応付けられている。すなわち、仮想ディスク11に格納されるデータは、原則的に、物理マシン3の物理ディスク装置32に仮想ディスクファイル321として格納される。   Thereafter, when an access request designating the area allocated in step S15 is output, the virtual disk processing means 21 performs control so that data stored in the physical memory 31 is referred to / written. The allocation table 211 holds information indicating the area of the virtual disk 11 and information indicating the storage location of the area in association with each other. In the allocation table 211 in the initial state, the area of the virtual disk 11 is associated with the virtual disk file 321. That is, data stored in the virtual disk 11 is stored as a virtual disk file 321 in the physical disk device 32 of the physical machine 3 in principle.

図1に示す一般的な仮想化システムでは、ページングファイル111の実体を、仮想ディスクファイル321に含まれるゲストOSのページングファイル321として、物理ディスク装置32に格納する。これに対して、本実施形態では、図2に示すように、ページングファイル111の実体を物理ディスク装置32に格納せず、ゲストOSのページングファイルに相当するデータ311を物理メモリ31に格納する。   In the general virtualization system shown in FIG. 1, the substance of the paging file 111 is stored in the physical disk device 32 as the paging file 321 of the guest OS included in the virtual disk file 321. On the other hand, in this embodiment, as shown in FIG. 2, the substance of the paging file 111 is not stored in the physical disk device 32, but the data 311 corresponding to the paging file of the guest OS is stored in the physical memory 31.

次に、格納したデータにアクセスする際の動作について、図2及び図4を用いて説明する。図4は、仮想ディスク制御システムが実行するデータアクセス時の処理例を示す流れ図である。   Next, an operation for accessing stored data will be described with reference to FIGS. FIG. 4 is a flowchart showing an example of processing at the time of data access executed by the virtual disk control system.

仮想マシン1は、仮想ディスク11に格納したデータにアクセスする場合、対象データの仮想ディスク11における格納領域を特定する(ステップS21)。本実施形態では、仮想マシン1がページングファイル111にアクセスするものとする。   When accessing the data stored in the virtual disk 11, the virtual machine 1 specifies the storage area of the target data in the virtual disk 11 (step S21). In the present embodiment, it is assumed that the virtual machine 1 accesses the paging file 111.

次いで、仮想マシン1は、特定した仮想ディスク11における格納領域を示す情報とともに、対象データへのアクセス要求を仮想ディスク処理手段21に出力する(ステップS22)。   Next, the virtual machine 1 outputs an access request to the target data to the virtual disk processing unit 21 together with information indicating the storage area in the identified virtual disk 11 (step S22).

次いで、仮想ディスク処理手段21は、出力された仮想ディスク11における格納領域を示す情報に基づいて、割り当てテーブル211を参照し、該当領域が物理メモリ31に割り当てられているか否かを判断する(ステップS23)。   Next, the virtual disk processing means 21 refers to the allocation table 211 based on the output information indicating the storage area in the virtual disk 11 and determines whether or not the corresponding area is allocated to the physical memory 31 (step). S23).

ステップS23において割り当てられていると判断した場合、仮想ディスク処理手段21は、仮想ディスク11における格納領域を示す情報と割り当てテーブル211とに基づいて、物理メモリ31が格納する対象データにアクセスする制御を行う(ステップS24)。本実施形態では、仮想ディスク処理手段21は、物理メモリ31が格納するゲストOSのページングファイルに相当するデータ311にアクセスする制御を行う。   If it is determined in step S23 that the disk is allocated, the virtual disk processing unit 21 performs control to access the target data stored in the physical memory 31 based on the information indicating the storage area in the virtual disk 11 and the allocation table 211. It performs (step S24). In this embodiment, the virtual disk processing unit 21 performs control to access data 311 corresponding to the paging file of the guest OS stored in the physical memory 31.

また、割り当てられていないと判断した場合には、仮想ディスク処理手段21は、仮想ディスク11における格納領域を示す情報と割り当てテーブル211とに基づいて、物理ディスク装置32の仮想ディスクファイル321にアクセスする制御を行う(ステップS25)。   If the virtual disk processing unit 21 determines that the virtual disk 11 is not allocated, the virtual disk processing unit 21 accesses the virtual disk file 321 of the physical disk device 32 based on the information indicating the storage area in the virtual disk 11 and the allocation table 211. Control is performed (step S25).

なお、本実施形態では、仮想マシン1が生成したページングファイルを物理メモリ3に格納する例について説明したが、例えば、ゲストOSやゲストOS上で動作するアプリケーションが生成するテンポラリファイルを物理メモリ3に格納するように制御してもよい。このようにすることで、ゲストOSのメモリを消費することなく、高速なアクセスが可能なテンポラリファイルを生成することができる。   In this embodiment, the example in which the paging file generated by the virtual machine 1 is stored in the physical memory 3 has been described. For example, a temporary file generated by the guest OS or an application running on the guest OS is stored in the physical memory 3. You may control to store. By doing so, it is possible to generate a temporary file that can be accessed at high speed without consuming the memory of the guest OS.

以上のことから、本実施形態では、次のような課題を解決するための手段を備えているといえる。   From the above, it can be said that the present embodiment includes means for solving the following problems.

一般的なOSには、仮想メモリ機構が備わっていて、仮想化されたメモリの実体は、ディスク上に存在するページングファイル内に格納される。一方、仮想化機構(以降、ホスト)で実現される仮想マシンで動作するゲストOSが、ページングファイルを作成したときには、その実体は、ホスト上に存在するストレージに配置される。   A general OS is provided with a virtual memory mechanism, and a virtualized memory entity is stored in a paging file existing on a disk. On the other hand, when a guest OS operating in a virtual machine realized by a virtualization mechanism (hereinafter referred to as a host) creates a paging file, the entity is placed in a storage existing on the host.

これに対して、本実施形態では、ゲストOSから、仮想ディスクの特定の領域を格納する場所として、メモリを指定できる機構を実現する。このようにすることにより、ゲストOSは、ページングファイルの領域を指定して、ホスト上のメモリ上に置き、高速なアクセスを可能とすることができる。   On the other hand, this embodiment implements a mechanism that allows the guest OS to specify a memory as a location for storing a specific area of the virtual disk. By doing so, the guest OS can designate a paging file area and place it on the memory on the host, thereby enabling high-speed access.

図1において、仮想マシン1は、仮想化ソフトウェア2により実現されている。その仮想マシン1は、仮想ディスク11を有していて、その中にゲストOSのページングファイル111を格納している。この仮想ディスク11の実体は、通常、仮想化ソフトウェア2が動いている物理マシン3にある物理ディスク装置32内に、仮想ディスクファイル321として存在する。そのため、仮想ディスク11内のページングファイル111の実体は、仮想ディスクファイル321内に、ページングファイル3211として存在する。   In FIG. 1, the virtual machine 1 is realized by virtualization software 2. The virtual machine 1 has a virtual disk 11 in which a guest OS paging file 111 is stored. The entity of the virtual disk 11 usually exists as a virtual disk file 321 in the physical disk device 32 in the physical machine 3 in which the virtualization software 2 is running. Therefore, the substance of the paging file 111 in the virtual disk 11 exists as a paging file 3211 in the virtual disk file 321.

本実施形態では、仮想マシン1内で動作する仮想ディスク制御手段12を用いて、仮想ディスク11内のページングファイル111のロケーションを仮想ディスク処理手段21に通知する。このことにより、一般的には仮想ディスクファイル321に作成されるページングファイルの実体を、物理マシン3の物理メモリ341上に作成することができる。   In this embodiment, the virtual disk control unit 12 operating in the virtual machine 1 is used to notify the virtual disk processing unit 21 of the location of the paging file 111 in the virtual disk 11. As a result, the substance of the paging file that is generally created in the virtual disk file 321 can be created in the physical memory 341 of the physical machine 3.

以上のことから、本実施形態では、次のような効果を奏することができる。   From the above, this embodiment can provide the following effects.

例えば、古いOSなどを仮想マシン上で動かす場合において、OSが使用できるメモリが制限されている場合を想定する。このような場合でも、本実施形態では、ページングファイル等をホストのメモリ上に配置することで高速なアクセス手段を提供し、ゲストOSの動作を効率的にすることができる。また、ゲストOSの種別に依らず、ホストのメモリを有効的に活用することができる。   For example, in the case where an old OS or the like is moved on a virtual machine, it is assumed that the memory that can be used by the OS is limited. Even in such a case, in this embodiment, a high-speed access means can be provided by arranging a paging file or the like on the host memory, and the operation of the guest OS can be made efficient. Further, the memory of the host can be effectively used regardless of the type of the guest OS.

また、アプリケーションの中には、メモリ上にパスワードなどの情報を保持するものがある。この場合、それらの情報がスワップアウトされると、ページングファイルにその情報が残ってしまうことになり、漏えいのリスクが発生する。しかし、本実施形態では、それらの情報を物理メモリで保持するため、シャットダウン時には消滅し、リスクを回避することができる。これは、シャットダウンの度にスワップファイルを削除する処理を実行させるより効率がよいといえる。   Some applications hold information such as passwords on a memory. In this case, when the information is swapped out, the information remains in the paging file, and there is a risk of leakage. However, in this embodiment, since the information is held in the physical memory, it disappears at the time of shutdown, and the risk can be avoided. This can be said to be more efficient than executing the process of deleting the swap file at each shutdown.

また、本実施形態では、永続的な保持が必要ないデータを仮想ディスクファイルに作成しないため、ストレージの使用量を削減することができる。   Further, in this embodiment, data that does not need to be permanently retained is not created in the virtual disk file, so that the storage usage can be reduced.

このように、本実施形態では、仮想マシンにおいて、ゲストOS内の制御プログラムにより、ゲストOSが使用する仮想ディスクの実体の格納場所を管理することができる。   As described above, in this embodiment, in the virtual machine, the storage location of the entity of the virtual disk used by the guest OS can be managed by the control program in the guest OS.

また、本実施形態における仮想ディスク制御システムは、既存の技術と以下の点で異なる。   In addition, the virtual disk control system in the present embodiment differs from existing technologies in the following points.

通常、キャッシュは物理ディスク装置に存在するデータのサブセットである。たとえ全データがキャッシュに含まれていたとしても、その両者の関係が常に成り立つ。しかし、本実施形態では、両者の関係を断つことが可能である。同様にMemoryMapped I/Oという仕組みが知られているが、それはストレージ上のファイルをメモリにマッピングする方法なので、上記の課題を解決するための手段として用いることができない。   Usually, the cache is a subset of data existing in the physical disk device. Even if all data is included in the cache, the relationship between the two always holds. However, in this embodiment, it is possible to cut the relationship between the two. Similarly, a mechanism called MemoryMapped I / O is known, but since it is a method of mapping a file on a storage to a memory, it cannot be used as a means for solving the above problem.

また、本実施形態では、物理メモリ上に存在する仮想ディスクデータは、メモリ上に存在するRAMディスクの上に構築されているものではなく、仮想化ソフトウェアが直接管理するメモリ空間に存在する。ホストのRAMディスク上に仮想ディスクを作成する場合には、必要ない領域までRAMディスクに格納することになってしまうため、本実施形態による仮想ディスク制御システムの方がメモリの利用効率がよいといえる。   In this embodiment, the virtual disk data existing on the physical memory is not constructed on the RAM disk existing on the memory, but exists in the memory space directly managed by the virtualization software. When a virtual disk is created on a host RAM disk, an unnecessary area is stored in the RAM disk. Therefore, it can be said that the virtual disk control system according to the present embodiment is more efficient in using the memory. .

また、ホストのRAMディスクにゲストのページングファイル専用ドライブを設ける点については、速度的な観点から言えば同等とも思える。しかし、本実施形態による仮想ディスク制御システムは、RAMディスク領域を設けることなく実施できるため、メモリの使用が効率的で適用範囲が広い。   From the viewpoint of speed, it can be said that the guest paging file dedicated drive is provided on the host RAM disk. However, since the virtual disk control system according to the present embodiment can be implemented without providing a RAM disk area, the use of the memory is efficient and the application range is wide.

ホスト上に仮想ディスクファイルをキャッシュする方法については、似たような効果を奏するとも思えるが、キャッシュでは領域を指定することができない。また、キャッシュでは仮想ディスクのデータと必ず1対1の関係になるが、本実施形態による仮想ディスク制御システムでは、その関係は常には成り立たない。また、一回しか呼び出されないデータなどが大量に存在する場合には、効果が違ってくる。また、本実施形態による仮想ディスク制御システムでは、ゲストOS(仮想マシン)自身がその制御をすることができる。   The method of caching virtual disk files on the host seems to have a similar effect, but the cache cannot specify an area. In the cache, there is always a one-to-one relationship with the data on the virtual disk. However, in the virtual disk control system according to the present embodiment, this relationship does not always hold. Also, if there is a large amount of data that can only be called once, the effect will be different. Further, in the virtual disk control system according to the present embodiment, the guest OS (virtual machine) itself can control it.

次に、本発明による仮想ディスク制御システムの最小構成について説明する。図5は、仮想ディスク制御システムの最小の構成例を示すブロック図である。図5に示すように、仮想ディスク制御システムは、格納先指定手段101と、対応付け手段201とを含む。   Next, the minimum configuration of the virtual disk control system according to the present invention will be described. FIG. 5 is a block diagram showing a minimum configuration example of the virtual disk control system. As shown in FIG. 5, the virtual disk control system includes a storage destination designation unit 101 and an association unit 201.

図5に示す最小構成の仮想ディスク制御システムでは、格納先指定手段101は、物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、データの物理的な格納先を物理マシンが搭載する物理メモリに指定する。そして、対応付け手段201は、格納先指定手段101の指定に基づいて、データを物理メモリに格納するとともに、仮想ディスクにおける仮想の格納領域を示す格納領域情報と物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける。   In the virtual disk control system with the minimum configuration shown in FIG. 5, the storage destination designating unit 101 sets the physical storage destination of data when the virtual machine operating on the physical machine stores predetermined data on the virtual disk. Specify the physical memory installed on the machine. The association unit 201 stores the data in the physical memory based on the designation of the storage destination designation unit 101, and also shows the storage area information indicating the virtual storage area in the virtual disk and the actual storage location in the physical memory. Corresponding storage location information.

従って、最小構成の仮想ディスク制御システムによれば、ゲストOSに依らず、仮想化環境において物理メモリを有効的に活用することができる。   Therefore, according to the minimum configuration virtual disk control system, it is possible to effectively use physical memory in a virtual environment regardless of the guest OS.

なお、本実施形態では、以下の(1)〜(5)に示すような仮想ディスク制御システムの特徴的構成が示されている。   In this embodiment, the characteristic configuration of the virtual disk control system as shown in the following (1) to (5) is shown.

(1)仮想ディスク制御システムは、物理マシン(例えば、物理マシン3によって実現される)上で動作する仮想マシン(例えば、仮想マシン1によって実現される)が所定のデータを仮想ディスク(例えば、仮想ディスク11によって実現される)に格納する際に、データの物理的な格納先を物理マシンが搭載する物理メモリ(例えば、物理メモリ31によって実現される)に指定する格納先指定手段(例えば、仮想ディスク制御手段12によって実現される)と、格納先指定手段の指定に基づいて、データを物理メモリに格納するとともに、仮想ディスクにおける仮想の格納領域を示す格納領域情報(例えば、アドレス情報)と物理メモリにおける実際の格納場所を示す格納場所情報(例えば、物理メモリのアドレス情報)とを対応付ける対応付け手段(例えば、仮想ディスク処理手段21によって実現される)とを含むことを特徴とする。   (1) In the virtual disk control system, a virtual machine (for example, realized by the virtual machine 1) operating on a physical machine (for example, realized by the physical machine 3) transfers predetermined data to a virtual disk (for example, a virtual machine). A storage destination designating unit (e.g., virtual storage) that designates a physical storage destination of data in a physical memory (e.g., realized by the physical memory 31) mounted on the physical machine. And the storage area information (for example, address information) indicating the virtual storage area in the virtual disk, and the physical Corresponds to storage location information (for example, physical memory address information) indicating the actual storage location in memory Correlating means (e.g., as implemented by the virtual disk processor 21), characterized in that it comprises a.

(2)仮想ディスク制御システムにおいて、対応付け手段は、格納領域情報と格納場所情報とを対応付けて含む割り当て情報(例えば、割り当てテーブル211によって実現される)を記憶し(例えば、割り当てテーブル記憶手段に記憶させる)、仮想ディスク制御システムは、仮想マシンが所定のデータにアクセスする場合に、データの格納領域情報と割り当て情報とに基づいてアクセスを制御するアクセス制御手段(例えば、仮想ディスク処理手段21によって実現される)をさらに含むように構成されていてもよい。   (2) In the virtual disk control system, the association unit stores allocation information (for example, realized by the allocation table 211) including the storage area information and the storage location information in association with each other (for example, the allocation table storage unit) The virtual disk control system stores access control means (for example, virtual disk processing means 21) for controlling access based on data storage area information and allocation information when a virtual machine accesses predetermined data. May be further included.

(3)仮想ディスク制御システムにおいて、アクセス制御手段は、仮想マシンが所定のデータにアクセスする場合に、データの格納領域情報が、割り当て情報において格納場所情報と対応付けられていない場合には、物理マシンが搭載する物理ディスク装置にアクセスする(例えば、物理ディスク装置32の仮想ディスクファイル321にアクセスする)ように制御するように構成されていてもよい。   (3) In the virtual disk control system, the access control means, when the virtual machine accesses predetermined data, if the storage area information of the data is not associated with the storage location information in the allocation information, The physical disk device mounted on the machine may be controlled so as to be accessed (for example, the virtual disk file 321 of the physical disk device 32 is accessed).

(4)仮想ディスク制御システムにおいて、格納先指定手段は、仮想マシンが所定のデータを仮想ディスクに格納する際に、仮想ディスクにおける仮想の格納領域を特定し、対応付け手段は、格納先指定手段が特定した格納領域を示す格納領域情報と格納場所情報とを対応付けて含む割り当て情報を記憶するように構成されていてもよい。   (4) In the virtual disk control system, the storage destination specifying unit specifies a virtual storage area in the virtual disk when the virtual machine stores predetermined data in the virtual disk, and the association unit is the storage destination specifying unit. May be configured to store allocation information including storage area information indicating the storage area specified by and storage location information in association with each other.

(5)仮想ディスク制御システムにおいて、格納先指定手段は、仮想マシンがページングファイル(例えば、ページングファイル111)を生成すると、生成したページングファイルの物理的な格納先を物理メモリに指定するように構成されていてもよい。   (5) In the virtual disk control system, when the virtual machine generates a paging file (for example, the paging file 111), the storage destination specifying unit is configured to specify the physical storage destination of the generated paging file in physical memory. May be.

本発明は、仮想化環境を制御する用途に適用可能である。   The present invention can be applied to a use for controlling a virtual environment.

1 仮想マシン
2 仮想化ソフトウェア
3 物理マシン
11 仮想ディスク
12 仮想ディスク制御手段
21 仮想ディスク処理手段
31 物理メモリ
32 物理ディスク装置
101 格納先指定手段
111 ページングファイル
201 対応付け手段
211 割り当てテーブル
311 ゲストOSのページングファイルに相当するデータ
321 仮想ディスクファイル
3211 ゲストOSのページングファイル
DESCRIPTION OF SYMBOLS 1 Virtual machine 2 Virtualization software 3 Physical machine 11 Virtual disk 12 Virtual disk control means 21 Virtual disk processing means 31 Physical memory 32 Physical disk unit 101 Storage destination designation means 111 Paging file 201 Correlation means 211 Assignment table 311 Guest OS paging Data equivalent to file 321 Virtual disk file 3211 Guest OS paging file

Claims (9)

物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、前記データの物理的な格納先を前記物理マシンが搭載する物理メモリに指定する格納先指定手段と、
前記格納先指定手段の指定に基づいて、前記データを前記物理メモリに格納するとともに、前記仮想ディスクにおける仮想の格納領域を示す格納領域情報と前記物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける対応付け手段とを
含むことを特徴とする仮想ディスク制御システム。
When a virtual machine operating on a physical machine stores predetermined data in a virtual disk, a storage destination designating unit for designating a physical storage destination of the data in a physical memory mounted on the physical machine;
Based on the designation of the storage destination designating means, the data is stored in the physical memory, storage area information indicating a virtual storage area in the virtual disk, and storage location information indicating an actual storage location in the physical memory; A virtual disk control system comprising: an association means for associating each other.
対応付け手段は、格納領域情報と格納場所情報とを対応付けて含む割り当て情報を記憶し、
仮想マシンが所定のデータにアクセスする場合に、前記データの格納領域情報と前記割り当て情報とに基づいてアクセスを制御するアクセス制御手段を含む
請求項1記載の仮想ディスク制御システム。
The association means stores allocation information including the storage area information and the storage location information in association with each other,
The virtual disk control system according to claim 1, further comprising access control means for controlling access based on the storage area information of the data and the allocation information when the virtual machine accesses predetermined data.
アクセス制御手段は、仮想マシンが所定のデータにアクセスする場合に、前記データの格納領域情報が、割り当て情報において格納場所情報と対応付けられていない場合には、物理マシンが搭載する物理ディスク装置にアクセスするように制御する
請求項2記載の仮想ディスク制御システム。
When the virtual machine accesses predetermined data, and the storage area information of the data is not associated with the storage location information in the allocation information, the access control means is provided for the physical disk device mounted on the physical machine. The virtual disk control system according to claim 2, wherein the virtual disk control system is controlled to access.
格納先指定手段は、仮想マシンが所定のデータを仮想ディスクに格納する際に、前記仮想ディスクにおける仮想の格納領域を特定し、
対応付け手段は、前記格納先指定手段が特定した格納領域を示す格納領域情報と格納場所情報とを対応付けて含む割り当て情報を記憶する
請求項1から請求項3のうちのいずれか1項に記載の仮想ディスク制御システム。
The storage destination designating means specifies a virtual storage area in the virtual disk when the virtual machine stores predetermined data in the virtual disk,
The associating unit stores allocation information including the storage area information indicating the storage area specified by the storage destination designating unit and the storage location information in association with each other. The virtual disk control system described.
格納先指定手段は、仮想マシンがページングファイルを生成すると、生成した前記ページングファイルの物理的な格納先を物理メモリに指定する
請求項1から請求項4のうちのいずれか1項に記載の仮想ディスク制御システム。
5. The virtual storage device according to claim 1, wherein when the virtual machine generates a paging file, the storage destination specifying unit specifies a physical storage destination of the generated paging file in a physical memory. Disk control system.
物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、前記データの物理的な格納先を前記物理マシンが搭載する物理メモリに指定し、
指定に基づいて前記データを前記物理メモリに格納するとともに、前記仮想ディスクにおける仮想の格納領域を示す格納領域情報と前記物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける
ことを特徴とする仮想ディスク制御方法。
When a virtual machine operating on a physical machine stores predetermined data in a virtual disk, the physical storage destination of the data is designated as physical memory mounted on the physical machine,
The data is stored in the physical memory based on designation, and storage area information indicating a virtual storage area in the virtual disk is associated with storage location information indicating an actual storage location in the physical memory. Virtual disk control method.
格納領域情報と格納場所情報とを対応付けて含む割り当て情報を記憶し、
仮想マシンが所定のデータにアクセスする場合に、前記データの格納領域情報と前記割り当て情報とに基づいてアクセスを制御する
請求項6記載の仮想ディスク制御方法。
Storing allocation information including storage area information and storage location information in association with each other;
The virtual disk control method according to claim 6, wherein when the virtual machine accesses predetermined data, the access is controlled based on the storage area information of the data and the allocation information.
コンピュータに、
物理マシン上で動作する仮想マシンが所定のデータを仮想ディスクに格納する際に、前記データの物理的な格納先を前記物理マシンが搭載する物理メモリに指定する格納先指定処理と、
指定に基づいて前記データを前記物理メモリに格納するとともに、前記仮想ディスクにおける仮想の格納領域を示す格納領域情報と前記物理メモリにおける実際の格納場所を示す格納場所情報とを対応付ける対応付け処理とを
実行させるための仮想ディスク制御プログラム。
On the computer,
When a virtual machine operating on a physical machine stores predetermined data in a virtual disk, a storage destination specifying process for specifying a physical storage destination of the data in a physical memory mounted on the physical machine;
An association process for storing the data in the physical memory based on designation and associating storage area information indicating a virtual storage area in the virtual disk with storage location information indicating an actual storage location in the physical memory Virtual disk control program to be executed.
コンピュータに、
対応付け処理で、格納領域情報と格納場所情報とを対応付けて含む割り当て情報を記憶する処理を実行させ、
仮想マシンが所定のデータにアクセスする場合に、前記データの格納領域情報と前記割り当て情報とに基づいてアクセスを制御するアクセス制御処理を実行させる
請求項8記載の仮想ディスク制御プログラム。
On the computer,
In the associating process, the process of storing the allocation information including the storage area information and the storage location information in association with each other is executed.
The virtual disk control program according to claim 8, wherein when a virtual machine accesses predetermined data, an access control process for controlling access is executed based on the storage area information of the data and the allocation information.
JP2010066728A 2010-03-23 2010-03-23 Virtual disk control system, method and program Expired - Fee Related JP5471677B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010066728A JP5471677B2 (en) 2010-03-23 2010-03-23 Virtual disk control system, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010066728A JP5471677B2 (en) 2010-03-23 2010-03-23 Virtual disk control system, method and program

Publications (2)

Publication Number Publication Date
JP2011198280A JP2011198280A (en) 2011-10-06
JP5471677B2 true JP5471677B2 (en) 2014-04-16

Family

ID=44876334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010066728A Expired - Fee Related JP5471677B2 (en) 2010-03-23 2010-03-23 Virtual disk control system, method and program

Country Status (1)

Country Link
JP (1) JP5471677B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196421A (en) * 2012-03-21 2013-09-30 Nec Corp Virtualization system, virtual server, memory management method, and memory management program
CN110209354B (en) * 2019-05-24 2022-04-19 北京百度网讯科技有限公司 Method, apparatus, device and medium for processing data

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61206042A (en) * 1985-03-11 1986-09-12 Hitachi Ltd Input/output system for virtual computer
JPH05225055A (en) * 1992-02-17 1993-09-03 Sharp Corp Information processor
US6223267B1 (en) * 1998-02-26 2001-04-24 Hewlett-Packard Company Dynamically allocable RAM disk

Also Published As

Publication number Publication date
JP2011198280A (en) 2011-10-06

Similar Documents

Publication Publication Date Title
US11620060B2 (en) Unified hardware and software two-level memory
US9390028B2 (en) Coordination between memory-saving mechanisms in computers that run virtual machines
US10698829B2 (en) Direct host-to-host transfer for local cache in virtualized systems wherein hosting history stores previous hosts that serve as currently-designated host for said data object prior to migration of said data object, and said hosting history is checked during said migration
US10534720B2 (en) Application aware memory resource management
WO2014109007A1 (en) Storage hierarchical management system
JP2016513846A (en) Memory sharing over the network
US20160132270A1 (en) Information processing device, information procesing method, and program
JP2019057151A (en) Memory system and control method
JP2021517307A (en) Hybrid memory system
JP2019133391A (en) Memory system and control method
KR20200121372A (en) Hybrid memory system
JPWO2009066611A1 (en) Data storage system for virtual machine, data storage method, and data storage program
JP6311365B2 (en) Storage area management device, storage area management method, and storage area management program
CN107832097B (en) Data loading method and device
KR20200117032A (en) Hybrid memory system
US9361124B2 (en) Computer system and startup method
JP5471677B2 (en) Virtual disk control system, method and program
JP2012212192A (en) Host server with virtual storage for virtual machine
JP2016085677A (en) Memory management method, memory management program, and information processing device
JP6740719B2 (en) Information processing apparatus, information processing method, and program
JP5334048B2 (en) Memory device and computer
JP2019164661A (en) Information processing device, information processing method and program
KR20090131142A (en) Apparatus and method for memory management
JP4792065B2 (en) Data storage method
JP5196249B2 (en) Memory system, method and program for using cache memory

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131224

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140120

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees