JP2013041485A - Virtual computer system and resource allocation control method - Google Patents

Virtual computer system and resource allocation control method Download PDF

Info

Publication number
JP2013041485A
JP2013041485A JP2011178754A JP2011178754A JP2013041485A JP 2013041485 A JP2013041485 A JP 2013041485A JP 2011178754 A JP2011178754 A JP 2011178754A JP 2011178754 A JP2011178754 A JP 2011178754A JP 2013041485 A JP2013041485 A JP 2013041485A
Authority
JP
Japan
Prior art keywords
processing
request
guest
cpu
priority
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.)
Withdrawn
Application number
JP2011178754A
Other languages
Japanese (ja)
Inventor
Yoshinori Takada
佳典 高田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011178754A priority Critical patent/JP2013041485A/en
Publication of JP2013041485A publication Critical patent/JP2013041485A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve priority control over a plurality of guest OSs and efficiently utilize a CPU, in a virtual computer system.SOLUTION: A virtual computer system which implements a plurality of guest OSs and executes processing by performing time-sharing of processing time of a CPU to allocate it to the guest OSs comprises: priority identification means 8 for identifying priority of a received plurality of processing requests; load information storage means 7 for storing load information on a load required by the guest OSs when processing for the processing requests is executed; and allocation determination means 5 for determining processing time of the CPU which is to be allocated to a guest OS on the basis of the identification result by the priority identification means and the load information stored in the load information storage means.

Description

本発明は、複数の仮想計算機が動作する仮想計算機システム、およびこの仮想計算機システムの資源、例えばCPU(Central Processing Unit)の使用割り当てを制御する資源割り当て制御方法に関する。   The present invention relates to a virtual machine system in which a plurality of virtual machines operate, and a resource allocation control method for controlling usage allocation of resources of the virtual machine system, for example, a CPU (Central Processing Unit).

従来から、計算機上で複数の仮想計算機が動作する仮想計算機システムが知られているが、近年、パーソナルコンピュータのような小型の計算機においても、仮想計算機システムの技術が適用されている。典型的な仮想計算機システムの実装形式では、コンピュータのハードウェア上にハイパーバイザと呼ばれる制御プログラムを実装し、ハイパーバイザの機能によりCPU、メモリ、デバイスといったハードウェアを管理および制御を行い、ハイパーバイザ上に実装されるゲストOSに対して、仮想的な計算機(仮想計算機)の環境を提供する。ハイパーバイザを用いた仮想計算機システムを構築することで、物理的には1台のコンピュータ上で複数のOSを動作させることが可能になり、システムの運用コストの点からも、消費電力の抑制の点からもメリットがある。   Conventionally, a virtual computer system in which a plurality of virtual computers operate on a computer is known, but in recent years, the technology of a virtual computer system has been applied to a small computer such as a personal computer. In a typical virtual machine system implementation format, a control program called a hypervisor is installed on computer hardware, and the hardware such as CPU, memory, and device is managed and controlled by the hypervisor function. The virtual machine (virtual machine) environment is provided to the guest OS installed in the system. By constructing a virtual machine system using a hypervisor, it is possible to physically operate multiple OSes on a single computer, reducing power consumption from the viewpoint of system operating costs. There is also a merit from a point.

ハイパーバイザ上には複数のゲストOSが実装され、物理CPUはハイパーバイザによるスケジューリング機能により、各ゲストOSに対応する仮想計算機間で時分割に使用される。従来の仮想計算機システムにおいて、ハイパーバイザは各ゲストOSへのCPU割当のスケジュールを決定する為に、各ゲストOSから提示されるCPU使用率の情報を使用する方式が提案されている(例えば、特許文献1参照)。   A plurality of guest OSs are mounted on the hypervisor, and the physical CPU is used in a time-sharing manner among virtual machines corresponding to each guest OS by a scheduling function by the hypervisor. In a conventional virtual computer system, a method has been proposed in which the hypervisor uses information on the CPU usage rate presented from each guest OS in order to determine a schedule for CPU allocation to each guest OS (for example, patents). Reference 1).

特許文献1では、システム外部からの処理要求に対応して、同一ハイパーバイザ上の別のゲストOSに対して処理を依頼するゲストOSをクライアントOSと呼び、クライアントOSからの要求を受け処理を行うゲストOSをサーバOSと呼ぶ。サーバOSはクライアントOSに対して、自分に割り当てられたCPU時間のうち、実際にCPUを使用している率であるCPU使用率の情報を提供し、各クライアントOSで実際にCPUを使用している量を把握し、実際のCPU使用量に基づいて各CPUに対して適切にCPU割当のスケジュールを行う。   In Patent Document 1, in response to a processing request from outside the system, a guest OS that requests processing to another guest OS on the same hypervisor is called a client OS, and processing is performed in response to a request from the client OS. The guest OS is called a server OS. The server OS provides the client OS with information on the CPU usage rate, which is the rate at which the CPU is actually used out of the CPU time allocated to itself, and each client OS actually uses the CPU. The CPU allocation schedule is appropriately determined for each CPU based on the actual CPU usage.

特開2010−218151号公報JP 2010-218151 A

従来の仮想計算機システムでは、ハイパーバイザ上に実装されている各ゲストOSに対するCPU割当時間を動的に変更することができ、各ゲストOSのCPUの使用時間に着目したスケジューリングには対応可能であるが、リアルタイム性を意識した処理に対応することができなかった。   In the conventional virtual machine system, the CPU allocation time for each guest OS installed on the hypervisor can be dynamically changed, and it is possible to cope with scheduling that focuses on the CPU usage time of each guest OS. However, it was not possible to deal with processing that was conscious of real-time characteristics.

例えば、ハイパーバイザが割り当てるCPUの割当時間には、実際にCPUを使用している処理の優先度を反映することができない。同一ゲストOS上では優先度の高い処理が先に実行されるため、優先度の高い処理に多くCPUの処理時間が割り当てられる。しかし、異なるゲストOS上で同程度のCPU使用率の優先度の低い処理と優先度の高い処理が動作していた場合には、CPU使用率がその優先度に関係なく同程度と評価され、優先度の高い処理が動作しているゲストOSに対するCPU割当時間と優先度の低い処理が動作しているゲストOSに対しても、優先度の高い処理を実行しているゲストOSと同程度の処理時間が割り当てられてしまうことになる。   For example, the priority of the process actually using the CPU cannot be reflected in the CPU allocation time allocated by the hypervisor. Since a process with a high priority is executed first on the same guest OS, a large amount of CPU processing time is allocated to a process with a high priority. However, if low priority CPU processing and high priority processing are operating on different guest OSes, the CPU usage is evaluated to be the same regardless of the priority. The CPU allocation time for a guest OS in which a high priority process is operating and the guest OS in which a low priority process is operating are the same as the guest OS that is executing a high priority process. Processing time will be allocated.

これらの問題から、従来の仮想計算機システムにおいては、ゲストOSをまたがった優先度を考慮することができず、結果としてシステム全体として優先制御を実現することができず、リアルタイム性を要求される処理に対して効率的にCPU時間を割当てることができなかった。   Because of these problems, in the conventional virtual machine system, priority over the guest OS cannot be considered, and as a result, priority control cannot be realized as the entire system, and processing that requires real-time performance is required. CPU time could not be allocated efficiently.

この発明は上記のような問題点を解決するためになされたもので、複数のゲストOSをまたがった優先制御を実現し、CPUの効率的な利用を実現することを目的とする。   The present invention has been made to solve the above-described problems, and it is an object of the present invention to realize priority control across a plurality of guest OSs and realize efficient use of a CPU.

この発明に係る仮想計算機システムは、複数のゲストOSが実装され、CPUの処理時間を時分割して複数のゲストOSに割り当てることにより処理を実行する仮想計算機システムであって、複数の処理要求を受信する処理要求受信手段と、処理要求受信手段により受信した複数の処理要求の優先度を識別する優先度識別手段と、複数の処理要求についての処理を実行する場合に、複数のゲストOSがそれぞれ必要とする負荷についての負荷情報を格納する負荷情報格納手段と、優先度識別手段による識別結果および負荷情報格納手段に格納された負荷情報に基づいて、ゲストOSに割り当てるCPUの処理時間を決定する割当決定手段と、を備える。   A virtual machine system according to the present invention is a virtual machine system in which a plurality of guest OSs are mounted, and processing is performed by allocating CPU processing time to a plurality of guest OSs. When receiving processing request receiving means, priority identifying means for identifying priorities of a plurality of processing requests received by the processing request receiving means, and processing for a plurality of processing requests, a plurality of guest OSs respectively Based on the load information storage means for storing the load information about the required load, the identification result by the priority identification means and the load information stored in the load information storage means, the CPU processing time allocated to the guest OS is determined. Allocation determining means.

また、この発明に係る資源割り当て制御方法は、計算機に複数のゲストOSが実装され、計算機のCPUの処理時間を時分割して複数のゲストOSに割り当てることにより処理を実行する仮想計算機システムに適用可能な資源割り当て制御方法であって、複数の処理要求を受信する処理要求受信ステップと、処理要求受信ステップにおいて受信した複数の処理要求の優先度を識別する優先度識別ステップと、処理要求受信ステップにおいて受信した複数の処理要求についての処理を実行する場合に複数のゲストOSが必要とする負荷を算出する負荷算出ステップと、優先度識別ステップにおける識別結果および負荷算出ステップにおける負荷算出結果に基づいて、ゲストOSに割り当てるCPUの処理時間を決定する割当決定ステップと、を備える   The resource allocation control method according to the present invention is applied to a virtual machine system in which a plurality of guest OSs are mounted on a computer, and processing is performed by time-sharing the CPU processing time of the computer and allocating to a plurality of guest OSs. A possible resource allocation control method, a process request receiving step for receiving a plurality of process requests, a priority identifying step for identifying priorities of a plurality of process requests received in the process request receiving step, and a process request receiving step Based on the load calculation step for calculating the load required by the plurality of guest OSs when executing the processing for the plurality of processing requests received in step, the identification result in the priority identification step, and the load calculation result in the load calculation step And an allocation determination step for determining a processing time of the CPU allocated to the guest OS. Obtain

本発明によれば、ゲストOSをまたがった優先制御を行うことが可能となり、CPUの効率的な使用を実現することができる。   According to the present invention, it is possible to perform priority control across guest OSes, thereby realizing efficient use of the CPU.

実施の形態1に示す仮想計算機システムの構成を示すブロック図である。1 is a block diagram illustrating a configuration of a virtual computer system illustrated in Embodiment 1. FIG. 実施の形態1に示す要求データベースの構成を示す図である。It is a figure which shows the structure of the request | requirement database shown in Embodiment 1. FIG. 実施の形態1に示す種別テーブルの構成を示す図である。FIG. 3 is a diagram showing a configuration of a type table shown in the first embodiment. 実施の形態1に示すCPU処理時間の割当動作を示すフローチャートである。3 is a flowchart illustrating an operation of assigning CPU processing time according to the first embodiment. 実施の形態1に示す要求データベースの構成例を示す図である。It is a figure which shows the structural example of the request database shown in Embodiment 1. FIG. 実施の形態1に示す種別テーブルの構成例を示す図である。3 is a diagram illustrating a configuration example of a type table illustrated in Embodiment 1. FIG. 実施の形態1に示す要求データベースの構成例を示す図である。It is a figure which shows the structural example of the request database shown in Embodiment 1. FIG. 実施の形態2に示す種別テーブルの構成例を示す図である。6 is a diagram illustrating a configuration example of a type table shown in Embodiment 2. FIG. 実施の形態3に示す要求データベースの構成を示す図である。It is a figure which shows the structure of the request | requirement database shown in Embodiment 3. FIG. 実施の形態3に示す種別テーブルの構成を示す図である。FIG. 10 is a diagram showing a configuration of a type table shown in the third embodiment. 実施の形態3に示す要求データベースの構成例を示す図である。It is a figure which shows the structural example of the request database shown in Embodiment 3. FIG. 実施の形態3に示す種別テーブルの構成例を示す図である。10 is a diagram illustrating a configuration example of a type table illustrated in Embodiment 3. FIG. 実施の形態3に示す要求データベースの更新動作について示す図である。FIG. 10 is a diagram showing an update operation of a request database shown in the third embodiment. 実施の形態3に示す種別テーブルの更新例を示す図である。10 is a diagram illustrating an example of updating the type table illustrated in Embodiment 3. FIG.

実施の形態1.
本発明を適用した仮想計算機システムについて、ハイパーバイザを実装した仮想計算機システムを例にとり説明する。図1はこの発明の実施の形態1に係る仮想計算機システムの構成図である。図1において仮想計算機システム1は、実施の形態1に係る仮想計算機システムのシステム全体を示しており、例えば、パーソナルコンピュータやサーバコンピュータのような計算機を用いて実現される。図1においては、1台の計算機を用いて仮想計算機システムを構成する場合について示しているが、複数の計算機により構成するようにしてもよい。また、図1においては図示しないが入出力デバイスおよびネットワーク等を介して外部にユーザ端末等が接続されている。
Embodiment 1 FIG.
A virtual machine system to which the present invention is applied will be described by taking a virtual machine system equipped with a hypervisor as an example. FIG. 1 is a configuration diagram of a virtual machine system according to Embodiment 1 of the present invention. In FIG. 1, a virtual computer system 1 shows the entire system of the virtual computer system according to the first embodiment, and is realized by using a computer such as a personal computer or a server computer. Although FIG. 1 shows a case where a virtual computer system is configured using one computer, it may be configured by a plurality of computers. Although not shown in FIG. 1, a user terminal or the like is connected to the outside via an input / output device and a network.

物理資源部2は仮想計算機システム1を構成する物理的な構成要素であり、物理資源2はCPU11、および、図1では図示しない主記憶装置や入出力デバイス等を備えている。ハイパーバイザ3は複数のゲストOS4に対して、仮想的な計算機環境を提供し仮想マシンを実現する。ハイパーバイザ3はそれぞれのゲストOS4に対して、物理資源部2に対するアクセスを制御するCPU割当部10を備えており、また、各ゲストOSが主記憶や入出力デバイスといった物理資源2に対するアクセスする機能を有している。   The physical resource unit 2 is a physical component constituting the virtual computer system 1, and the physical resource 2 includes a CPU 11 and a main storage device, an input / output device, and the like not shown in FIG. The hypervisor 3 provides a virtual computer environment to a plurality of guest OSs 4 to realize a virtual machine. The hypervisor 3 includes a CPU allocation unit 10 that controls access to the physical resource unit 2 for each guest OS 4, and each guest OS has a function of accessing the physical resource 2 such as a main memory and an input / output device. have.

CPU割当決定部5は、仮想計算機システム1において1つだけ存在し、仮想計算機システム1が外部からの処理依頼を受け付ける機能を有する受付アプリケーション8と同一のゲストOS上に実装される。要求データベース(DB)6は、受付アプリケーション8が受け付けた外部からの処理要求のリストを管理するデータベースである。種別テーブル(TBL)7は、受付アプリケーション8が受け付ける可能性のある要求処理について、その種別ごとの処理負荷と優先度を管理するテーブルである。ここで、種別ごとの処理負荷とは、処理要求についての処理を実行する場合に、各ゲストOSが必要とする処理の負荷をいう。受付アプリケーション8およびその他の個別アプリケーション(APL)9は各ゲストOS上で動作するアプリケーションであり、受付アプリケーションは仮想計算機システム1に接続されたユーザ端末からの処理要求の受付を行う。   There is only one CPU allocation determination unit 5 in the virtual machine system 1, and the virtual machine system 1 is mounted on the same guest OS as the reception application 8 having a function of receiving a processing request from the outside. The request database (DB) 6 is a database that manages a list of external processing requests received by the receiving application 8. The type table (TBL) 7 is a table for managing the processing load and priority for each type of request processing that may be received by the receiving application 8. Here, the processing load for each type refers to the processing load required by each guest OS when processing a processing request is executed. The reception application 8 and other individual applications (APL) 9 are applications that operate on each guest OS, and the reception application receives a processing request from a user terminal connected to the virtual machine system 1.

(構成の説明1)
図2は要求データベース6の論理的な構成を示した図である。要求データベース6は、受付アプリケーションが受け付けた処理要求を一意に管理するための識別子である要求ID601と、受け付けた処理要求の処理内容を示す要求処理種別602の情報により構成されるエントリの集合である。
(Description of configuration 1)
FIG. 2 is a diagram showing a logical configuration of the request database 6. The request database 6 is a set of entries including information of a request ID 601 that is an identifier for uniquely managing a processing request received by the receiving application and information of a request processing type 602 that indicates the processing content of the received processing request. .

図3は種別テーブル7の論理的な構成を示した図である。種別テーブル7は、要求処理種別毎の情報を示す要求処理種別701毎と仮想計算機システム1に実装されるゲストOS4ごとの負荷を管理するテーブルである。図3では要求処理種別701がFID#1で示される処理では、ゲストOS#1の負荷702はW#1−1、ゲストOS#2の負荷703はW#2−1、ゲストOS#3の負荷704はW#3−1で定義されている。また要求処理種別701がFID#1で示される処理の優先度705はPRI#1で定義されている。   FIG. 3 is a diagram showing a logical configuration of the type table 7. The type table 7 is a table for managing the load for each request processing type 701 indicating information for each request processing type and for each guest OS 4 installed in the virtual machine system 1. In the process shown in FIG. 3 where the requested process type 701 is FID # 1, the load 702 of the guest OS # 1 is W # 1-1, the load 703 of the guest OS # 2 is W # 2-1, and the guest OS # 3 The load 704 is defined by W # 3-1. Further, the priority 705 of the process whose request process type 701 is indicated by FID # 1 is defined by PRI # 1.

次に動作について説明する。まず、本発明の実施の形態1に係る仮想計算機システムの全体的な動作について説明する。本発明の実施の形態1に係る仮想計算機システムは、外部の装置/ユーザから処理要求を受け付け、仮想計算機システム1内で各処理要求の負荷および優先度に基づいて、各ゲストOSが使用する資源(ここでは、CPUの処理時間)の割り当ての決定を行い、割当てられた処理時間に各ゲストOSがCPUを用いて処理を行う。処理が終了した場合、外部の装置/ユーザに対して処理結果を送信する。なお、仮想計算機システム1が処理結果を送信する先は、処理要求を入力した要求元のユーザ端末とは限らない。   Next, the operation will be described. First, the overall operation of the virtual machine system according to the first embodiment of the present invention will be described. The virtual machine system according to the first embodiment of the present invention receives processing requests from external devices / users, and resources used by each guest OS based on the load and priority of each processing request in the virtual machine system 1 (Here, the processing time of the CPU) is determined, and each guest OS performs processing using the CPU during the allocated processing time. When the processing is completed, the processing result is transmitted to an external device / user. Note that the destination to which the virtual machine system 1 transmits the processing result is not necessarily the requesting user terminal that has input the processing request.

次に、各ゲストOSが使用するCPUの処理時間の割当動作について図4を参照して説明する。外部の装置/ユーザから仮想計算機システム1に処理要求が入力された場合、受付アプリケーション8へ転送され(ステップS1)、受付アプリケーション8では受信した処理要求の情報を精査し、必要な処理の種別を示す要求処理種別を判定する(ステップS2)。要求処理種別が判定できたら、受付アプリケーション8は当該要求処理を実現するために必要なアプリケーション9に対して処理の依頼を行う。その後、受付アプリケーション8は現在処理中の処理要求の内容に識別子を割り当てて要求データベース6に登録し、要求データベースを更新する(ステップS3)。要求データベース6への登録が終わった後、受付アプリケーション8は新しい要求が登録されたことで要求データベース6の内容が変更されことをCPU割当決定機能5に対して通知する(ステップS4)。要求データベース6の更新が通知された際には、CPU割当決定機能5は要求データベース6の内容と種別テーブル7の内容を基に、ハイパーバイザ3が各ゲストOSに対してどのようにCPUを割り当てるかを計算する(ステップS6)。要求DBに処理要求がある場合には、ステップS1に戻り、CPUによる処理が終了し処理要求が全て処理された場合には終了する(ステップS7)。   Next, the CPU processing time allocation operation used by each guest OS will be described with reference to FIG. When a processing request is input to the virtual machine system 1 from an external device / user, the processing request is transferred to the reception application 8 (step S1). The reception application 8 examines the received processing request information and determines the type of processing required. The request processing type shown is determined (step S2). If the request process type can be determined, the reception application 8 requests the application 9 necessary for realizing the request process. Thereafter, the reception application 8 assigns an identifier to the content of the processing request currently being processed, registers it in the request database 6, and updates the request database (step S3). After registration in the request database 6 is completed, the reception application 8 notifies the CPU allocation determination function 5 that the contents of the request database 6 are changed due to the registration of a new request (step S4). When the update of the request database 6 is notified, the CPU allocation determination function 5 allocates the CPU to each guest OS based on the contents of the request database 6 and the type table 7. Is calculated (step S6). If there is a processing request in the request DB, the process returns to step S1, and if the processing by the CPU is completed and all the processing requests are processed, the process ends (step S7).

CPU11は、割当スケジュールに基づいて処理要求の内容についてアプリケーション9を実行することにより、要求された処理を実行し、処理結果を外部の装置/ユーザに対して送信することができる。以下に、発明の特徴となる動作について詳述する。   The CPU 11 can execute the requested processing by executing the application 9 on the content of the processing request based on the allocation schedule, and can transmit the processing result to an external apparatus / user. The operation that characterizes the present invention will be described in detail below.

要求データベース6への登録動作(ステップS4)について説明する。外部のユーザ端末から処理要求が入力された場合、受付アプリケーション8がその処理要求を受け付ける。受付アプリケーション8は、受け付けた処理要求に対して要求IDを振り、要求データベース6に登録する。また、受け付けた処理要求の種別を判定し、その種別を要求IDに対応させて要求データベース6に登録する。要求データベース6の設定例を図5に示す。図5に示す設定例では要求IDが1、2、3、4の4つの要求が登録されており、それぞれの要求種別はA、A、D、Cである。   The registration operation (step S4) in the request database 6 will be described. When a processing request is input from an external user terminal, the reception application 8 receives the processing request. The reception application 8 assigns a request ID to the received processing request and registers it in the request database 6. Further, the type of the received processing request is determined, and the type is registered in the request database 6 in association with the request ID. A setting example of the request database 6 is shown in FIG. In the setting example shown in FIG. 5, four requests with request IDs 1, 2, 3, and 4 are registered, and the request types are A, A, D, and C, respectively.

図6に、種別テーブル7の設定例を示す。図5では、A〜Eの処理要求の種別が登録されている。それぞれの種別で、各OS(#1〜#3)の負荷が格納されており、例えば、要求処理種別Aでは、各ゲストOSの負荷は(OS#1,OS#2,OS#3)=(1,0,1)となっている。また、要求処理種別ごとに優先度が格納されており、優先度は(A,B,C,D,E)=(低、高、低、低、高)である。   FIG. 6 shows a setting example of the type table 7. In FIG. 5, the types of processing requests A to E are registered. The load of each OS (# 1 to # 3) is stored for each type. For example, in the request processing type A, the load of each guest OS is (OS # 1, OS # 2, OS # 3) = (1, 0, 1). Further, a priority is stored for each request processing type, and the priority is (A, B, C, D, E) = (low, high, low, low, high).

CPU割当スケジュールの決定方法(ステップS6)について説明する。まず、図4に示すように要求データベース6に高優先度の処理要求(最も高い優先度の処理要求)が格納されていない場合の割当決定動作について説明する。
要求データベース6の更新が通知された場合、CPU割当決定部10は要求データベース6の登録内容を確認する。仮想計算機システム1で処理中の要求の要求種別はA、C、Dの3種類である。CPU割当決定部10は、現在仮想計算機システム1で処理中のA、C、Dの3種類の処理について、種別テーブル7を参照し、それぞれに対応する優先度と各ゲストOSへの負荷を算出する。図5の設定例では、要求種別がAの処理については、優先度が低、各ゲストOSの負荷が(OS#1,OS#2,OS#3)=(1,0,1)となっている。同様に要求種別がCの場合には優先度低、(OS#1,OS#2,OS#3)=(1,1,1)、要求種別がDの場合には優先度低、(OS#1,OS#2,OS#3)=(1,0,2)となる。
A method for determining the CPU allocation schedule (step S6) will be described. First, as shown in FIG. 4, an allocation determination operation in the case where a high priority processing request (the highest priority processing request) is not stored in the request database 6 will be described.
When the update of the request database 6 is notified, the CPU allocation determination unit 10 confirms the registration contents of the request database 6. The request types of requests being processed in the virtual machine system 1 are three types A, C, and D. The CPU allocation determination unit 10 refers to the type table 7 for the three types of processing A, C, and D currently being processed in the virtual computer system 1, and calculates the priority corresponding to each type and the load on each guest OS. To do. In the setting example of FIG. 5, for the process with the request type A, the priority is low, and the load on each guest OS is (OS # 1, OS # 2, OS # 3) = (1, 0, 1). ing. Similarly, when the request type is C, the priority is low, (OS # 1, OS # 2, OS # 3) = (1, 1, 1), and when the request type is D, the priority is low, (OS # 1, OS # 2, OS # 3) = (1, 0, 2).

この結果から現在処理中の要求に対応する要求種別A、C、Dは全て優先度が低で定義されており、同一の優先度を持つことがわかる。全ての処理要求が同一の優先度を持つ場合には、定義された各ゲストOSの負荷に対応した比率で各OSのCPU割当比率を決定する。現在処理中の要求はA、A、D、Cであるため、それらの処理に必要とされる各OSの処理負荷の値を加算すると(OS#1,OS#2,OS#3)=A+A+D+C=(1,0,1)+(1,0,1)+(1,0,2)+(1,1,1)=(4,1,5)となり、OS#1:OS#2:OS#3=4:1:5の比率でCPUの割当を行うように決定する。   From this result, it can be seen that the request types A, C, and D corresponding to the request currently being processed are all defined with low priority and have the same priority. If all processing requests have the same priority, the CPU allocation ratio of each OS is determined at a ratio corresponding to the load of each defined guest OS. Since the requests currently being processed are A, A, D, and C, the value of the processing load of each OS required for the processing is added (OS # 1, OS # 2, OS # 3) = A + A + D + C = (1,0,1) + (1,0,1) + (1,0,2) + (1,1,1) = (4,1,5), OS # 1: OS # 2: It is determined to perform CPU allocation at a ratio of OS # 3 = 4: 1: 5.

要求データベース6に対応したCPU割当スケジュールを決定したCPU割当決定部5は、結果をハイパーバイザ3内に実装されているCPU割当部10へ設定する。CPU割当部10は、設定されたCPU割当スケジュールに基づき、各ゲストOS4のCPU割当スケジュールを制御する。   The CPU allocation determination unit 5 that has determined the CPU allocation schedule corresponding to the request database 6 sets the result in the CPU allocation unit 10 installed in the hypervisor 3. The CPU allocation unit 10 controls the CPU allocation schedule of each guest OS 4 based on the set CPU allocation schedule.

受付アプリケーション8から他のアプリケーション9に依頼していた処理が完了し、受付アプリケーション8へ応答が返ってきた場合には、受付アプリケーションは応答の内容を確認し、要求データベース6に登録された内容から、対応する要求ID601の登録情報を削除し、CPU割当決定機能5へ要求データベース6が変更されたことを通知する。CPU割当決定機能5は現在の最新の要求データベース6の情報を基にCPU割当スケジュールを決定し、ハイパーバイザ3内のCPU割当部10に設定する。この動作により仮想計算機システム1外部から要求された処理の要求種別に基づき、各ゲストOSへのCPU割当スケジュールを変更する。   When the processing requested from the reception application 8 to the other application 9 is completed and a response is returned to the reception application 8, the reception application confirms the content of the response, and from the content registered in the request database 6. The registration information of the corresponding request ID 601 is deleted, and the CPU allocation determination function 5 is notified that the request database 6 has been changed. The CPU allocation determination function 5 determines the CPU allocation schedule based on the information of the current latest request database 6 and sets it in the CPU allocation unit 10 in the hypervisor 3. With this operation, the CPU allocation schedule to each guest OS is changed based on the request type of processing requested from outside the virtual machine system 1.

次に、高優先度の処理要求(最も優先度の高い処理要求)を受け付けた場合の割当決定動作(ステップS6)について説明する。すなわち、要求データベース6が図5に示す設定状態であった場合に、外部から要求処理種別がBとEの処理要求が入力された場合の動作について説明する。
要求データベース6の更新が通知され、CPU割当決定機能5が割り当てスケジュールを決定する際、要求データベース6から登録されている処理要求の要求処理種別を検索するとA、B、C、D、Eが登録されているということがわかる。図5に示された種別テーブル7から要求種別A、B、C、D、Eに対応する情報を検索すると、B、Eの優先度が高、A、C、Dの優先度は低として設定されていることがわかる。
Next, the assignment determination operation (step S6) when a high-priority processing request (a processing request with the highest priority) is received will be described. That is, the operation when the request database 6 is in the setting state shown in FIG. 5 and the request processing types B and E are input from the outside will be described.
When the update of the request database 6 is notified and the CPU allocation determination function 5 determines the allocation schedule, A, B, C, D, and E are registered when the request processing type of the processing request registered from the request database 6 is searched. You can see that When information corresponding to the request types A, B, C, D, and E is retrieved from the type table 7 shown in FIG. 5, the priority of B and E is set as high, and the priority of A, C, and D is set as low. You can see that

ここで優先度705が異なる要求が要求データベース6に登録されていることがわかるため、CPU割当決定機能5は優先度705の最も高い処理要求に基づいてCPU割当スケジュールを決定する。登録されているA、B、C、D、Eの要求処理種別の優先度は「高」「低」の2種類に分類される。このうち最も優先度が高いグループは優先度「高」と設定されたものである。   Since it can be seen that requests having different priorities 705 are registered in the request database 6, the CPU allocation determination function 5 determines a CPU allocation schedule based on the processing request having the highest priority 705. The priorities of the registered request processing types A, B, C, D, and E are classified into two types, “high” and “low”. Among these, the group with the highest priority is set with the priority “high”.

この結果からCPU割当決定機能5は優先度「高」に該当する要求処理種別のB、Eの情報を用いてCPU割当スケジュールの決定を行う。すなわち、この場合各OSの負荷は(OS#1,OS#2,OS#3)=B+E=(1,1,0)+(1,0,2)=(2,1,2)となり、OS#1:OS#2:OS#3=2:1:2の比率でCPUの割当を行うように決定する。   From this result, the CPU allocation determination function 5 determines the CPU allocation schedule using the information of the request processing types B and E corresponding to the priority “high”. That is, in this case, the load on each OS is (OS # 1, OS # 2, OS # 3) = B + E = (1,1,0) + (1,0,2) = (2,1,2), The CPU allocation is determined at a ratio of OS # 1: OS # 2: OS # 3 = 2: 1: 2.

CPU11は、設定された割当スケジュールに基づいて処理要求の内容についてアプリケーション9を実行して要求された処理を行い、処理結果を外部の装置/ユーザに対して送信する。   The CPU 11 executes the requested processing by executing the application 9 for the content of the processing request based on the set allocation schedule, and transmits the processing result to an external device / user.

これらの動作によりゲストOSをまたがった優先度を考慮することが可能となり、システム全体として優先制御を実現することができ、リアルタイム性を要求される処理に対して効率的にCPU時間を割当てることができるようになる。   With these operations, it is possible to take into account priorities across guest OSes, realize priority control for the entire system, and efficiently allocate CPU time for processing that requires real-time performance. become able to.

なお、ここでは、優先度が最も高い処理要求に基づいて割当スケジュールを決定する場合について示したが、優先度が3つ以上設けられている場合(例えば、高・中・低)には、2以上の優先度の処理要求(例えば、高・中)に基づいて割当スケジュールを決定するようにしても良い。また、本実施の形態では、処理要求を受け付けた場合にCPUの処理時間の割当を行う場合について示したが、処理要求の受付の有無にかかわらず定期的に要求データベースの内容に基づいてCPUの処理時間の割当を行う構成としてもよい。   Here, the case where the allocation schedule is determined based on the processing request with the highest priority is shown, but when there are three or more priorities (for example, high, medium, and low), 2 is assigned. The allocation schedule may be determined based on the processing requests with the above priorities (for example, high / medium). Further, in the present embodiment, the case where the processing time of the CPU is allocated when the processing request is received is shown, but the CPU's processing is periodically performed based on the contents of the request database regardless of whether or not the processing request is received. A configuration may be adopted in which processing time is allocated.

実施の形態2.
実施の形態1では、CPU割当決定部10において、最も高い優先度の処理要求の情報に基づいてCPU割当スケジュールを決定する場合について示したが、実施の形態2では優先度の比率に対応してCPU割当時間を割り振る場合について示す。実施の形態2に係る仮想計算機システムの構成は、図1に示す実施の形態1の仮想計算機システムと同様であり、説明を省略する。図8は本実施の形態に関わる種別テーブル7の設定例について示している。図8に示す種別テーブル7では、実施の形態1で示した種別テーブルと異なり、優先度は数値(1〜3)で設定されている。
Embodiment 2. FIG.
In the first embodiment, the case where the CPU allocation determination unit 10 determines the CPU allocation schedule based on the processing request information with the highest priority has been described. In the second embodiment, the CPU allocation determination unit 10 corresponds to the priority ratio. A case where CPU allocation time is allocated will be described. The configuration of the virtual machine system according to the second embodiment is the same as that of the virtual machine system according to the first embodiment shown in FIG. FIG. 8 shows a setting example of the type table 7 relating to the present embodiment. In the type table 7 shown in FIG. 8, unlike the type table shown in the first embodiment, the priority is set by numerical values (1 to 3).

次に、動作について説明する。実施の形態2に係る仮想計算機システムの全体の動作およびCPU割当決定動作は、実施の形態1に示す場合と同様であり、図4に示すとおりである。ここでは、実施の形態1に示す仮想計算機システムと動作が異なるCPU割当スケジュールの決定(ステップS6)について説明する。   Next, the operation will be described. The overall operation of the virtual machine system and the CPU allocation determination operation according to the second embodiment are the same as those shown in the first embodiment and are as shown in FIG. Here, determination of a CPU allocation schedule (step S6) that differs in operation from the virtual machine system shown in the first embodiment will be described.

要求データベース6が更新され、図7のように設定された場合、CPU割当決定機能5では要求データベース6に登録されている処理要求の要求処理種別A、B、C、D、Eを種別テーブル7から検索し、各要求処理種別の優先度を識別し、各ゲストOSに対する付加を算出する。要求種別がAの処理について優先度は1、各ゲストOSの負荷は(OS#1,OS#2,OS#3)=(1,0,1)となっている。同様に、要求種別がBの場合には優先度は2、(1,1,0)、要求種別がCの場合には優先度が1、(1,1,1)、要求種別がDの場合には優先度が1、(1,0,2)、要求種別がEの場合には優先度が2、(1,0,2)となる。これらの結果から各ゲストOSへの負荷に対して、優先度に応じて重み付け、すなわち、優先度を乗算した情報を加算して各ゲストOSへのCPU割当時間を決定する。   When the request database 6 is updated and set as shown in FIG. 7, the CPU allocation determination function 5 stores the request processing types A, B, C, D, and E registered in the request database 6 in the type table 7. Are searched, the priority of each request processing type is identified, and the addition to each guest OS is calculated. For the processing with the request type A, the priority is 1, and the load on each guest OS is (OS # 1, OS # 2, OS # 3) = (1, 0, 1). Similarly, when the request type is B, the priority is 2, (1, 1, 0), when the request type is C, the priority is 1, (1, 1, 1), and the request type is D. In this case, the priority is 1, (1, 0, 2), and when the request type is E, the priority is 2, (1, 0, 2). From these results, the CPU allocation time for each guest OS is determined by adding the weight to each guest OS according to the priority, that is, adding information obtained by multiplying the priority.

具体的には、(OS#1,OS#2,OS#3)=A+A+D+C+B+E=(1,1,0)+(1,1,0)+(1,0,2)+(1,1,1)+2×(1,1,0)+3×(1,0,2)=(9,5,9)となり、OS#1:OS#2:OS#3=9:5:9の比率でCPUの割当を行うように決定する。   Specifically, (OS # 1, OS # 2, OS # 3) = A + A + D + C + B + E = (1,1,0) + (1,1,0) + (1,0,2) + (1,1, 1) + 2 × (1,1,0) + 3 × (1,0,2) = (9,5,9), where OS # 1: OS # 2: OS # 3 = 9: 5: 9 Decide to allocate CPUs.

CPU11は、設定された割当スケジュールに基づいて処理要求の内容についてアプリケーション9を実行して要求された処理を行い、処理結果を外部の装置/ユーザに対して送信する。   The CPU 11 executes the requested processing by executing the application 9 for the content of the processing request based on the set allocation schedule, and transmits the processing result to an external device / user.

実施の形態2に係る仮想計算機システムでは、上述のような構成となっているため、ゲストOSをまたがった優先度を考慮することが可能となり、システム全体として優先制御を実現することができ、リアルタイム性を要求される処理に対して効率的にCPU時間を割当てることができるようになる。   Since the virtual machine system according to the second embodiment has the above-described configuration, it is possible to consider the priority across guest OSes, realize priority control for the entire system, and realize real-time. CPU time can be efficiently allocated to processing that requires high performance.

実施の形態3.
実施の形態1および2は、種別テーブル7において予め定められた処理要求種別ごとの各ゲストOSに対するCPU負荷に基づいてCPU割当スケジュールの決定する場合について示したが、実施の形態3では処理要求種別の実際の応答時間に基づいて、種別テーブル7を修正し、修正された種別テーブル7に基づいてCPU割り当てを決定する場合について説明する。実施の形態3に係る計算機システムの構成は、実施の形態1に示す場合と同様であり、図1に示す通りである。
Embodiment 3 FIG.
In the first and second embodiments, the case where the CPU allocation schedule is determined based on the CPU load on each guest OS for each processing request type predetermined in the type table 7 is described. In the third embodiment, the processing request type is determined. The case where the type table 7 is corrected based on the actual response time and the CPU assignment is determined based on the corrected type table 7 will be described. The configuration of the computer system according to the third embodiment is the same as that shown in the first embodiment, as shown in FIG.

図9に、実施の形態3に係る仮想計算機システムの要求データベース6の構成を示す。図8において、各エントリには要求ID601に対応する要求実施時刻603を保存する項目が設定されている。要求実施時刻603には受付アプリケーション8が他のアプリケーション9に対して要求を依頼した時刻を格納する。   FIG. 9 shows the configuration of the request database 6 of the virtual machine system according to the third embodiment. In FIG. 8, an item for storing a request execution time 603 corresponding to the request ID 601 is set in each entry. The request execution time 603 stores the time when the reception application 8 requests the other application 9 to make a request.

図9に、実施の形態3に係る仮想計算機システムの種別テーブル7の構成を示す。各エントリには要求処理種別701に対応する応答時間下限706、応答時間上限707の情報を設定する。ここで、応答時間下限706とは、予め設定された応答時間の下限値であり、同様に、応答時間上限707とは、予め設定された応答時間の上限値である。また、ここでの応答時間とは、各処理要求の処理に要する時間を指し、ここでは、受付アプリケーション8が他のアプリケーション9に対して要求を依頼してから、要求を依頼された他のアプリケーション9から応答を受け取るまでの時間をいうものとする。   FIG. 9 shows the configuration of the type table 7 of the virtual machine system according to the third embodiment. Information of response time lower limit 706 and response time upper limit 707 corresponding to request processing type 701 is set in each entry. Here, the response time lower limit 706 is a preset lower limit value of response time, and similarly, the response time upper limit 707 is a preset response time upper limit value. The response time here indicates the time required to process each processing request. Here, the receiving application 8 requests another application 9 for a request, and then the other application for which the request is requested. The time from 9 to receiving a response shall be said.

次に動作について説明する。実施の形態3に係る仮想計算機システムの全体の動作については図4に示す場合と同様である。仮想計算機システム1が外部から処理要求を受信する(ステップS1)と、受付アプリケーション8がその処理要求を受け付け、他のアプリケーション9に要求を依頼し(ステップS2)、要求データベース6を更新する。その際、実施の形態3においては、要求ID601に対応する要求依頼時の時刻情報を要求実施時刻603に格納する。その後、受け付けアプリケーション8はCPU割当決定機能5に対して、要求データベース6の更新があったことを通知し(ステップS5)、CPU割当決定機能5は各ゲストOS4に対するCPU割当時間のスケジュールを再計算し、再計算された割当時間に基づいて各ゲストOSが処理を実行する(ステップS6)。   Next, the operation will be described. The overall operation of the virtual machine system according to the third embodiment is the same as that shown in FIG. When the virtual machine system 1 receives a processing request from the outside (step S1), the receiving application 8 receives the processing request, requests another application 9 for the request (step S2), and updates the request database 6. At this time, in the third embodiment, time information at the time of request request corresponding to the request ID 601 is stored in the request execution time 603. Thereafter, the receiving application 8 notifies the CPU allocation determination function 5 that the request database 6 has been updated (step S5), and the CPU allocation determination function 5 recalculates the schedule of the CPU allocation time for each guest OS 4. Then, each guest OS executes processing based on the recalculated allocation time (step S6).

他のアプリケーション9から応答を受信した場合には、該当する処理要求を要求データベース6から削除し、CPU割当決定機能5は更新された要求データベース5を基に応答時間の計算を行うが、その後要求データベース5に登録されていた該当する処理要求の要求実施時刻603の情報と、要求された処理を実行したアプリケーション9から応答を受信した時刻の情報を用いて処理要求の実行にかかった時間(応答時間)を算出し、該当する要求処理種別701に対応する応答時間下限706、応答時間上限707の値と比較を行う。実行にかかった時間が応答時間下限706より小さい場合、あるいは実行にかかった時間が応答時間上限707より大きい場合には、対象となる要求処理種別701の各ゲストOSの処理負荷702〜704の値を変更する。   When a response is received from another application 9, the corresponding processing request is deleted from the request database 6, and the CPU allocation determination function 5 calculates the response time based on the updated request database 5. The time taken to execute the processing request using the information of the request execution time 603 of the corresponding processing request registered in the database 5 and the information of the time of receiving the response from the application 9 that executed the requested processing (response Time) is calculated and compared with the values of the response time lower limit 706 and the response time upper limit 707 corresponding to the corresponding request processing type 701. When the execution time is smaller than the response time lower limit 706, or when the execution time is larger than the response time upper limit 707, the value of the processing load 702 to 704 of each guest OS of the target request processing type 701 To change.

図11は実施の形態3に対応する要求データベース6の設定例である。図12は実施の形態3に対応する種別テーブル7の設定例である。図11では現在仮想計算機システム1で要求処理種別602がAの要求を1件処理している。要求ID601のその処理要求は01:02:03 000に受付アプリケーション8から他のアプリケーション9へ転送している。図13は受付アプリケーション8が処理要求の応答を受信した場合の動作について示している。   FIG. 11 shows a setting example of the request database 6 corresponding to the third embodiment. FIG. 12 shows a setting example of the type table 7 corresponding to the third embodiment. In FIG. 11, the virtual machine system 1 is currently processing one request whose request processing type 602 is A. The processing request of the request ID 601 is transferred from the reception application 8 to another application 9 at 01: 02: 03000. FIG. 13 shows an operation when the reception application 8 receives a response to the processing request.

この状態で受付アプリケーション8が要求ID601に1が設定されている処理要求の応答を、他のアプリケーションから受信した場合には、該当する要求データベース6のエントリを一時格納エリア12に、要求完了時刻1204の情報を付加して保存し、要求データベース6の該当する要求ID601に対応するエントリを削除する動作を示したものである。CPU割当決定機能5は更新された要求データベース6に基づきCPU割当スケジュールの再計算をした後、一時格納エリア12の情報を基に種別テーブル7の更新を行う。   In this state, when the reception application 8 receives a response to the processing request in which the request ID 601 is set to 1 from another application, the entry of the corresponding request database 6 is stored in the temporary storage area 12 and the request completion time 1204. This information is added and saved, and the operation for deleting the entry corresponding to the corresponding request ID 601 in the request database 6 is shown. The CPU allocation determination function 5 recalculates the CPU allocation schedule based on the updated request database 6 and then updates the type table 7 based on the information in the temporary storage area 12.

図13の例では、要求ID601の値が1を持った処理要求の、受付アプリケーション8における処理時間の計測では要求完了時刻1204から要求実施時刻1203の値を減算すると8msec経過していることがわかる。ここで要求処理種別701がAの場合の処理時間下限706、処理時間上限707を見ると、今回の処理時間が処理時間上限707の値である5よりも大きいため、次回からの要求処理種別Aに対する各ゲストOSのCPU時間の割当を増やすために、図14に示すとおり種別テーブル7の要求処理種別Aに対する各ゲストOSの負荷702〜704を例えば10%ずつ増やして再設定する。もし、処理時間下限706よりも処理時間が小さい場合には、各ゲストOSの負荷702〜704を例えば10%ずつ減らす。   In the example of FIG. 13, in the measurement of the processing time in the reception application 8 for the processing request having the request ID 601 value of 1, 8 msec has elapsed when the value of the request execution time 1203 is subtracted from the request completion time 1204. . Here, looking at the processing time lower limit 706 and the processing time upper limit 707 when the request processing type 701 is A, since the current processing time is larger than 5 which is the value of the processing time upper limit 707, the request processing type A from the next time. 14, the load 702 to 704 of each guest OS corresponding to the request processing type A in the type table 7 is increased by 10%, for example, as shown in FIG. If the processing time is shorter than the processing time lower limit 706, the load 702 to 704 of each guest OS is reduced by 10%, for example.

これらの動作によりCPU使用率の割当に使用する処理負荷の見積もりを、現状のシステムの稼動状況に応じて適切化することで、優先される処理に対しても過剰に資源を割り当てることではなく、適切な資源分配を実現することができる。   By optimizing the processing load used for allocation of CPU usage rate according to these operations according to the current system operating status, it does not allocate resources excessively for priority processing, Appropriate resource distribution can be realized.

1 仮想計算機システム、2 物理資源部、3 ハイパーバイザ、4 ゲストOS、5 CPU割当決定部、6 要求データベース、7 種別テーブル、8 受付アプリケーション、9 アプリケーション、10 CPU割当部、11 CPU、12 一時格納エリア、601 要求ID、602 要求処理種別、603 要求実施時刻、701 要求処理種別、702〜704 OS#1〜3の負荷、705 優先度、706 応答時間下限、707 応答時間上限、1201 要求ID、1202 要求処理種別、1203 要求実施時刻、1204 要求完了時刻 DESCRIPTION OF SYMBOLS 1 Virtual computer system, 2 Physical resource part, 3 Hypervisor, 4 Guest OS, 5 CPU allocation determination part, 6 Request database, 7 Type table, 8 Reception application, 9 Application, 10 CPU allocation part, 11 CPU, 12 Temporary storage Area, 601 Request ID, 602 Request processing type, 603 Request execution time, 701 Request processing type, 702-704 Load of OS # 1 to 705, Priority, 706 Response time lower limit, 707 Response time upper limit, 1201 Request ID, 1202 Request processing type, 1203 Request execution time, 1204 Request completion time

Claims (6)

複数のゲストOSが実装され、CPUの処理時間を時分割して前記複数のゲストOSに割り当てることにより処理を実行する仮想計算機システムであって、
複数の処理要求を受信する処理要求受信手段と、
前記処理要求受信手段により受信した複数の処理要求の優先度を識別する優先度識別手段と、
前記複数の処理要求についての処理を実行する場合に、前記複数のゲストOSがそれぞれ必要とする負荷についての負荷情報を格納する負荷情報格納手段と、
前記優先度識別手段による識別結果および前記負荷情報格納手段に格納された負荷情報に基づいて、前記ゲストOSに割り当てる前記CPUの処理時間を決定する割当決定手段と、
を備えることを特徴とする仮想計算機システム。
A virtual machine system in which a plurality of guest OSs are mounted and processing is performed by allocating CPU processing time to the plurality of guest OSs,
Processing request receiving means for receiving a plurality of processing requests;
Priority identifying means for identifying priorities of a plurality of processing requests received by the processing request receiving means;
Load information storage means for storing load information on loads required by each of the plurality of guest OSes when executing processing for the plurality of processing requests;
An allocation determination unit that determines a processing time of the CPU to be allocated to the guest OS based on the identification result by the priority identification unit and the load information stored in the load information storage unit;
A virtual computer system comprising:
前記割当決定手段は、優先度の最も高い処理要求の前記負荷算出結果に基づいて、前記ゲストOSに割り当てる前記CPUの処理時間を決定すること、
を特徴とする請求項1記載の仮想計算機システム。
The allocation determining means determines the CPU processing time allocated to the guest OS based on the load calculation result of the processing request with the highest priority;
The virtual computer system according to claim 1.
前記優先度識別手段は、前記複数の処理要求をその優先度に基づいて、複数のグループに分類し、
前記割当決定手段は、前記複数のグループのうち最も高い優先度が設定されたグループの負荷算出結果に基づいて、前記ゲストOSに割り当てる前記CPUの処理時間を決定すること、
を特徴とする請求項1記載の仮想計算機システム。
The priority identifying means classifies the plurality of processing requests into a plurality of groups based on the priority,
The allocation determining means determines a processing time of the CPU allocated to the guest OS based on a load calculation result of a group having the highest priority set among the plurality of groups;
The virtual computer system according to claim 1.
前記割当決定手段は、前記優先度識別手段により識別した優先度に応じて重みづけを行った前記負荷情報に基づいて前記ゲストOSに割り当てる前記CPUの処理時間を決定すること、
を特徴とする請求項1〜3のいずれか1項に記載の仮想計算機システム。
The allocation determining means determines the processing time of the CPU allocated to the guest OS based on the load information weighted according to the priority identified by the priority identifying means;
The virtual machine system according to any one of claims 1 to 3, wherein
前記処理要求の処理を前記CPUが実行するのに要する時間を計測する応答時間計測手段をさらに備え、
前記負荷情報格納手段は、前記応答時間計測手段により計測された応答時間が、予め定められた範囲外である場合に、対応する処理要求についての負荷情報を更新すること、
を特徴とする請求項1〜4のいずれか1項に記載の仮想計算機システム。
Response time measuring means for measuring the time required for the CPU to execute the processing of the processing request,
The load information storage means updates the load information for the corresponding processing request when the response time measured by the response time measurement means is outside a predetermined range;
The virtual machine system according to any one of claims 1 to 4, wherein
計算機に複数のゲストOSが実装され、前記計算機のCPUの処理時間を時分割して前記複数のゲストOSに割り当てることにより処理を実行する仮想計算機システムに適用可能な資源割り当て制御方法であって、
複数の処理要求を受信する処理要求受信ステップと、
前記処理要求受信ステップにおいて受信した複数の処理要求の優先度を識別する優先度識別ステップと、
前記処理要求受信ステップにおいて受信した複数の処理要求についての処理を実行する場合に前記複数のゲストOSが必要とする負荷を算出する負荷算出ステップと、
前記優先度識別ステップにおける識別結果および前記負荷算出ステップにおける負荷算出結果に基づいて、前記ゲストOSに割り当てる前記CPUの処理時間を決定する割当決定ステップと、
を備えることを特徴とする資源割り当て制御方法。
A resource allocation control method applicable to a virtual computer system in which a plurality of guest OSs are mounted on a computer, and processing is performed by time-sharing CPU processing times of the computers and allocating them to the plurality of guest OSes,
A process request receiving step for receiving a plurality of process requests;
A priority identifying step for identifying priorities of a plurality of processing requests received in the processing request receiving step;
A load calculating step of calculating a load required by the plurality of guest OSes when executing processing for a plurality of processing requests received in the processing request receiving step;
An allocation determination step for determining a processing time of the CPU to be allocated to the guest OS based on the identification result in the priority identification step and the load calculation result in the load calculation step;
A resource allocation control method comprising:
JP2011178754A 2011-08-18 2011-08-18 Virtual computer system and resource allocation control method Withdrawn JP2013041485A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011178754A JP2013041485A (en) 2011-08-18 2011-08-18 Virtual computer system and resource allocation control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011178754A JP2013041485A (en) 2011-08-18 2011-08-18 Virtual computer system and resource allocation control method

Publications (1)

Publication Number Publication Date
JP2013041485A true JP2013041485A (en) 2013-02-28

Family

ID=47889801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011178754A Withdrawn JP2013041485A (en) 2011-08-18 2011-08-18 Virtual computer system and resource allocation control method

Country Status (1)

Country Link
JP (1) JP2013041485A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019125242A (en) * 2018-01-18 2019-07-25 株式会社デンソー Scheduling apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019125242A (en) * 2018-01-18 2019-07-25 株式会社デンソー Scheduling apparatus
JP7010014B2 (en) 2018-01-18 2022-01-26 株式会社デンソー Scheduling device

Similar Documents

Publication Publication Date Title
US10733026B2 (en) Automated workflow selection
JP5370946B2 (en) Resource management method and computer system
JP4519098B2 (en) Computer management method, computer system, and management program
US8725912B2 (en) Dynamic balancing of IO resources on NUMA platforms
JP5332065B2 (en) Cluster configuration management method, management apparatus, and program
WO2011148563A1 (en) Information processing system
CN109564528B (en) System and method for computing resource allocation in distributed computing
TW201430706A (en) Computer system and graphics processing method therefore
JP2012221273A (en) Method, system and program for dynamically assigning resource
US9110696B2 (en) Thin client system, connection management server, connection management method and connection management program
JP2009251708A (en) I/o node control system and method
KR20130088513A (en) Task distribution method on multicore system and apparatus thereof
Mishra et al. Time efficient dynamic threshold-based load balancing technique for Cloud Computing
Garala et al. A performance analysis of load Balancing algorithms in Cloud environment
JP6116102B2 (en) Cluster system and load balancing method
JP6653710B2 (en) Computer and computer control method
Li et al. PageRankVM: A pagerank based algorithm with anti-collocation constraints for virtual machine placement in cloud datacenters
JP2019008454A (en) Information processing system and resource allocation method
Rampersaud et al. Sharing-aware online algorithms for virtual machine packing in cloud environments
JP5613578B2 (en) Virtualization environment resource management configuration change system and program
JP2010218151A (en) Virtual computer management mechanism and cpu time allocation control method in virtual computer system
JP2011150472A (en) Web service system, server selection reference determination device, server selection reference determination method and program
JP6279816B2 (en) Storage monitoring system and monitoring method thereof
JP6158751B2 (en) Computer resource allocation apparatus and computer resource allocation program
JP2014167713A (en) Information processing device, information processing system, information processing device management program and information processing device management method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20141104