JP2010237787A - プログラム、情報処理装置及び状態出力方法 - Google Patents

プログラム、情報処理装置及び状態出力方法 Download PDF

Info

Publication number
JP2010237787A
JP2010237787A JP2009082524A JP2009082524A JP2010237787A JP 2010237787 A JP2010237787 A JP 2010237787A JP 2009082524 A JP2009082524 A JP 2009082524A JP 2009082524 A JP2009082524 A JP 2009082524A JP 2010237787 A JP2010237787 A JP 2010237787A
Authority
JP
Japan
Prior art keywords
processing amount
acquisition unit
unit
state
amount
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.)
Granted
Application number
JP2009082524A
Other languages
English (en)
Other versions
JP5347648B2 (ja
Inventor
Naoki Nishiguchi
直樹 西口
Masatomo Yazaki
昌朋 矢崎
Noboru Iwamatsu
昇 岩松
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009082524A priority Critical patent/JP5347648B2/ja
Priority to US12/729,813 priority patent/US20100251254A1/en
Publication of JP2010237787A publication Critical patent/JP2010237787A/ja
Application granted granted Critical
Publication of JP5347648B2 publication Critical patent/JP5347648B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Abstract

【課題】より適切に操作環境毎の状態を出力することが可能なプログラム等を提供することにある。
【解決手段】第1取得部は、ハードウェア資源に対するVM2毎の割当量を示す第1処理量を取得する。第2取得部はVM2にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する。第3取得部は、VM2毎に第1取得部により取得した第1処理量と第2取得部により取得した第2処理量との差分に基づき、VM2毎に第3処理量を算出する。出力部は、VM2毎に算出部により算出した第3処理量及び第2取得部により取得した第2処理量に基づき、操作環境毎の状態をVM2へ出力する。
【選択図】図1

Description

本発明は、区分けされた複数の操作環境を制御する情報処理装置に用いられるプログラム、情報処理装置及び状態出力方法に関する。
近年、複数の仮想マシンを仮想的に制御するコンピュータ等、複数の操作環境を制御する情報処理装置が普及している(例えば、特許文献1参照)。従来は、情報処理装置の資源に関する情報及び操作環境の性能に関する情報を出力する試みがなされている。
特開2008−293117号公報
しかしながら、従来の装置は、各仮想マシンが使用する現在のCPU(Central Processing Unit)使用率を元に、操作環境の性能に関する情報を算出しており、適切な情報を出力しているとはいえなかった。
本発明は斯かる事情に鑑みてなされたものである。その目的は、各操作環境において実行されるアプリケーションプログラムによる影響をも考慮することにより、より適切に操作環境毎の状態を出力することが可能なプログラム等を提供することにある。
本願に開示するプログラムは、区分けされた複数の操作環境を制御する情報処理装置に用いられるプログラムであって、情報処理装置を、該情報処理装置のハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得部と、前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得部と、前記操作環境毎に前記第1取得部により取得した第1処理量と前記第2取得部により取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出部と、前記操作環境毎に前記算出部により算出した第3処理量及び前記第2取得部により取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力部として機能させる。
当該装置の一観点によれば、選択環境において実行されるアプリケーションプログラムもが考慮されることから、より適切に操作環境毎の状態を適切に提供することが可能となる。
状態出力システムの概要を示す説明図である。 物理マシン及びVMのハードウェア及びソフトウェアを示すブロック図である。 第1ファイルのレコードレイアウトを示す説明図である。 負荷量DBのレコードレイアウトを示す説明図である。 コンピュータの表示部に表示される画面イメージを示す説明図である。 第2ファイルのレコードレイアウトを示す説明図である。 第3ファイルのレコードレイアウトを示す説明図である。 決定ファイルのレコードレイアウトを示す説明図である。 コンピュータの表示部に表示される状態のイメージを示す説明図である。 第1処理量の取得処理の手順を示すフローチャートである。 アプリケーションIDの出力処理手順を示すフローチャートである。 アプリケーションIDの出力処理手順を示すフローチャートである。 第2処理量の取得処理手順を示すフローチャートである。 算出処理の手順を示すフローチャートである。 算出処理の手順を示すフローチャートである。 算出処理の手順を示すフローチャートである。 算出処理の手順を示すフローチャートである。 第3処理量の配分例を示す説明図である。 状態決定処理の手順を示すフローチャートである。 実施の形態2に係る物理マシン及びVMのハードウェア及びソフトウェアを示すブロック図である。 決定ファイルのレコードレイアウトを示す説明図である。 状態決定処理の手順を示すフローチャートである。 実施の形態4に係る物理マシン及びVMのハードウェア及びソフトウェアを示すブロック図である。 第4ファイルのレコードレイアウトを示す説明図である。 決定ファイルのレコードレイアウトを示す説明図である。 状態決定処理の手順を示すフローチャートである。 コンピュータの表示部に表示される状態のイメージを示す説明図である。 決定ファイルのレコードレイアウトを示す説明図である。 状態決定処理の手順を示すフローチャートである。 第2処理量の取得処理の手順を示すフローチャートである。 第2処理量の遷移を示す説明図である。 第2処理量の取得処理の手順を示すフローチャートである。 第2処理量の取得処理の手順を示すフローチャートである。 実施の形態8に係る物理マシン及びVMのハードウェア及びソフトウェアを示すブロック図である。 第2処理量の取得処理の手順を示すフローチャートである。 第2処理量の取得処理の手順を示すフローチャートである。 第2処理量の変化を示す説明図である。 実施の形態9に係る物理マシン及びVMのハードウェア及びソフトウェアを示すブロック図である。 実施の形態10に係る状態出力システムの概要を示す模式図である。 実施の形態10に係るサーバコンピュータ及びアプリケーションサーバのハードウェア及びソフトウェアを示す説明図である。
実施の形態1
以下実施の形態を、図面を参照して説明する。図1は状態出力システムの概要を示す説明図である。状態出力システムは情報処理装置1、操作環境21、22、23、・・・(以下、場合により2で代表する。)及び端末装置31、32、33・・(以下、場合により3で代表する。)等を含む。本実施の形態においては、状態出力システムを複数の仮想マシン(以下、VM:(Virtual Machine)という)を制御する物理マシンに適用する例を挙げて説明する。情報処理装置1はサーバコンピュータまたはパーソナルコンピュータ等である。端末装置3は例えばパーソナルコンピュータ、または、通信機能、入出力装置及びモニタを有する入出力装置等である。端末装置3は、モニタ、キーボード、マウスなどの入出力装置のみで構成されていてもよい。その場合、物理マシンと端末装置3は、ディスプレイケーブルなどのケーブルもしくは無線などにより接続される。以下では、一例として情報処理装置1は物理マシン1であるものとして説明し、端末装置3はパーソナルコンピュータ(以下、コンピュータ3という)であるものとして説明する。
コンピュータ3と物理マシン1とはUSB(Universal Serial Bus)ケーブル、または、インターネット若しくはLAN(Local Area Network)等の通信網を介して接続されており、所定のプロトコルにて情報を送受信する。本実施の形態においては、コンピュータ3は物理マシン1に対しLANにより接続されている例を挙げて説明する。コンピュータ3を使用するユーザは物理マシン1を介して操作環境2(以下、VM2という)を起動する。物理マシン1上では論理的に区分けされた複数のVM21、22、23、・・・が動作している。以下ではVM21乃至23の3台のVM2を物理マシン1が制御する例を挙げて説明するが、この数に限定するものではない。
続いて本実施形態の概要を説明する。物理マシン1はVM2毎に、物理マシン1のハードウェア資源(以下、ハードウェアリソースという)に対するVM2毎の割当量を示す第1処理量を割り当てる。図1の例では、物理マシン1がハードウェアリソースの一つであるCPUのCPU使用率を各VM2に対し割り当てた量を第1処理量としている。円グラフで示す如くVM22及びVM23と比較して、VM21に対し多くの第1処理量が割り当てられていることが理解できる。すなわち、図1に示す円グラフは、各VMに割り当てる第1処理量を斜線部分で示している。VM2は各VM2上でアプリケーションプログラム(以下、アプリケーションという)を実行する。第2処理量は実行中のアプリケーションの種類、実行中のアプリケーション数、または実行中のアプリケーションの処理内容等により変動する。
物理マシン1はVM2毎に、第1処理量及び第2処理量を取得する。物理マシン1はVM2毎に取得した第1処理量及び第2処理量の差分に基づき、VM2毎の第3処理量を算出する。物理マシン1は算出した第3処理量及び第2処理量に基づき、各VM2の状態を出力する。物理マシン1から出力されるVM2の状態は、例えば晴れ、または、雨を示すアイコン等によりコンピュータ3へ出力され、表示部に表示される。詳細な手順は以下に示すが、晴れのアイコンが表示されている場合は、VM2の状態が優れ、処理が高速に行われることが期待できる。一方、雨のアイコンが表示されている場合は、VM2の状態が悪く、処理が高速に行われることが期待しにくくなる。むしろ、処理に時間がかかる可能性があることを示している。
図2は物理マシン1及びVM2のハードウェア及びソフトウェアを示すブロック図である。物理マシン1はハードウェアリソース10及び仮想化レイヤ17を含む。ハードウェアリソース10は、CPU11、RAM(Random Access Memory)12、記憶部(HD15)、NIC(Network Interface Card)16、時計部18及び電源制御部19等を含む。ハードウェアリソース10は仮想化ソフトウェアである仮想化レイヤ17の制御下におかれる。CPU11は仮想化レイヤ17及び仮想化レイヤ17上の制御モジュール170の指示に従い、バス(図示せず)を介して接続される各ハードウェアを制御する。
メモリとしてのRAM12は例えばSRAM(Static RAM)、DRAM(Dynamic RAM)、フラッシュメモリ等である。RAM12は、CPU11による仮想化レイヤ17等各種プログラムの実行時に発生する種々のデータを一時的に記憶する。記憶部は、例えばハードディスクまたは大容量メモリが利用される。本実施の形態においては、記憶部はハードディスクであるものとして説明し、以下ではHD15という。HD15はVM2にて作成されたファイル及び仮想化レイヤ17の指示により記憶すべき各種データ等を記憶する。NIC16はイーサーネットカード等であり、コンピュータ3または図示しない他のWebサーバ等とHTTP(HyperText Transfer Protocol)等により情報を送受信する。時計部18は時刻情報をCPU11へ出力する。
仮想化レイヤ17と連携する制御モジュール170はVM21、22、23で実行されるアプリケーションの監視、第1処理量乃至第3処理量の取得または算出、VM2の起動または停止、及び、物理マシン1の電源管理を含む各種処理を行う。制御モジュール170は第1取得部171、第2取得部172、算出部173、決定部176、VM管理部178、起動部179及び停止部1710等を含む。制御モジュール170はRAM12にロードされて実行される。なお、制御モジュール170は説明を容易にするために、主要なモジュールを図2に記載し、他はフローチャート内において図示した。
RAM12またはHD15には第1ファイル151、第2ファイル152、第3ファイル153、負荷量データベース(以下、DBという)156、決定ファイル157及び画像データファイル158等が記憶されている。なお、本実施の形態においてはハードウェアリソース10上で仮想化レイヤ17が直接動作するハイパーバイザー型の仮想化ソフトウェアを用いる例を説明するが、これに限るものではない。Windows(登録商標)またはLinux(登録商標)上で仮想化ソフトウェアが動作するホスト型を用いても良いことはもちろんである。
停止状態にある物理マシン1を起動し、VM21の利用を希望するユーザはコンピュータ3により物理マシン1を起動する。コンピュータ3は物理マシン1に対し起動命令を出力する。また、コンピュータ3は複数のVM2の内、起動を希望するVM2を特定するための識別情報(以下、VMIDという)及びVM2の起動命令を物理マシン1へ出力する。なお、本実施の形態においてはVM21を起動する例を挙げて説明する。NIC16はWake On Lanに対応しており、物理マシン1の起動命令を受けて電源制御部19へ起動命令を出力する。コンピュータ3は物理マシン1の電源を投入するためのマジックパケットをNIC16へ出力する。
電源制御部19は図示しない交流電源からの電力を物理マシン1へ供給する。これにより、物理マシン1が起動し、また仮想化レイヤ17及び制御モジュール170も起動する。起動部179はVM21を起動すると共に、起動命令をVM管理部178へ出力する。VM21は仮想化レイヤ17の制御下で動作する。VM21に対してインストールされたOS(Operating System)211は各種アプリケーション212を実行する。アプリケーション212は例えば文書作成用アプリケーション、ブラウザ、表計算文書作成用アプリケーション、PDF(登録商標:Portable Document Format)ビューワ、メーラ、または、プレゼンテーション用文書作成アプリケーション等である。その他、アプリケーション212は、音楽若しくは映像再生アプリケーション、または、DVD(Digital Versatile Disc)再生用アプリケーション等であっても良い。
VM21はNIC16を介してコンピュータ3へ画面情報を出力する。同様に他のユーザは他のコンピュータ3を用いてVM22及びVM23を利用することができる。VM22を利用する場合、他のコンピュータ3はVM22のVMID及びVM22の起動命令を物理マシン1へ出力する。起動部179はこれを受けてVM22を起動する。なお、ユーザを特定するための固有のユーザ識別情報を付与し、複数のユーザが一のVM21を共有するようにしても良い。
コンピュータ3からVM21の停止命令が出力された場合、停止部1710はこれを受け付け、VM21を停止する。停止部1710は、停止命令をVM管理部178へ出力する。これにより、VM21が使用していたハードウェアリソース10は解放される。なお、VM21の停止とは、VM21が使用しているOS211及びアプリケーション212を全て終了し、RAM12の領域内の情報をHD15に記憶することなく開放することをいう。本実施の形態においてはVM21を停止する例を挙げて説明するが、VM21を中断させても良い。
VM21の中断は、例えばVM21が使用しているRAM12の領域内の情報をHD15へ記憶させVM21をハイバーネーション (もしくは休止)することをいう。この場合、VM21が使用していたRAM12の領域は開放される。ハイバーネーション (もしくは休止)の後、再度VM21を起動した場合、HD15へ記憶させた情報がRAM12の領域に記憶され、中断時の作業内容が復元される。その他VM21の中断は、VM21が使用しているRAM12の領域内の情報を、RAM12内に保持し、電源制御部19によりRAM12に通電し続けるサスペンド (もしくはスリープ、スタンバイ)であっても良い。サスペンド (もしくはスリープ、スタンバイ)の後、再度VM21を起動した場合、VM21は保持されたRAM12の領域内の情報を利用することで、中断時の作業内容が早期に復元される。以下では説明を容易にするために、VM2が運転状態または停止状態どちらかにある例を挙げて説明する。
VM管理部178はVM21乃至VM23の運転状態または停止状態を監視し、HD15に記憶された所定条件下で、ハードウェアリソース10の割り当てを行う。ハードウェアリソース10の割当量である第1処理量は、例えばCPU使用率、HD使用率、または、NIC使用率等である。CPU使用率とは運転中のVM2がCPU11を占有している時間の割合である。例えばCPU使用率が50%の場合、1秒間に0.5秒間対応するVM2がCPU11を占有することになる。
また、CPU使用率が100%の場合、1秒間常に対応するVM2がCPU11を占有することになる。また例えばインテル社のCore Duo(登録商標)プロセッサの如く、2つのCPU11を使用している際のCPU使用率が100%の場合、200%の半分であるので、1秒間に0.5秒間対応するVM2が2つのCPU11を占有することになる。これは、きっちり0.5秒という意味ではなく、2つのCPU11の占有の割合や時間は変動するが、1秒間でCPU11を半分使用しているという意味である。同様にHD使用率とは運転中のVM2がHD15を占有している時間の割合をいい、NIC使用率とは運転中のVM2がNIC16を占有している時間の割合をいう。本実施の形態においては、説明を容易にするために、VM管理部178が各VM2に割り当てるCPU使用率を第1処理量の一例として説明する。また、本実施の形態においては、CPU11は2つのプロセッサを有し、割り当てることが可能な最大の第1処理量(以下、最大第1処理量という)が200%であるものとして説明する。
VM管理部178はHD15に記憶された所定条件に従い、VM2毎の第1処理量を決定し、決定した第1処理量を第1取得部171へ出力する。例えば、VM管理部178は起動中のVM2に対し、均等に第1処理量を割り振るようにすればよい。VM21及びVM22が起動中の場合、VM管理部178はVM21及びVM22に、それぞれ均等に第1処理量100%、第1処理量100%を割り振る。また、VM管理部178は、VM2の運転状態、及び、時計部18から出力される時刻情報に応じて、第1処理量を決定しても良い。さらに、Xen(登録商標)のCreditスケジューラを用いても良い。この場合、VM2毎に重みが設定される。VM管理部178はVM2に付与された重みを参照して、第1処理量を決定する。
例えば、VM21に重みが1、VM22に重みが2、VM23に重みが1と設定されている場合、VM21の第1処理量は50%、VM22の第1処理量は100%、VM23の第1処理量は50%となる。なお、必ずしも200%の全てを割り振る必要はなく、最大第1処理量の一部、例えば180%を割り振るようにしても良い。その他、時刻情報に応じて、午前は、VM21に重み1を、VM22に重み2を、VM23に重み1を付与し、午後は、VM21に重み2を、VM22に重み1を、VM23に重み1を付与しても良い。本実施の形態においては、一例としてVM21に重みが1、VM22に重みが2、VM23に重みが1と設定されている場合を例に挙げて説明する。
図3は第1ファイル151のレコードレイアウトを示す説明図である。第1取得部171はVM管理部178から取得したVM2毎の第1処理量を第1ファイル151に記憶する。第1ファイル151はVMIDフィールド及び第1処理量フィールド等を含む。VMIDフィールドにはVMIDが記憶され、第1処理量フィールドにはVMIDに対応づけて第1処理量が記憶されている。VM管理部178はVM2が起動または停止した場合、起動後または停止後の各VM2の第1処理量を決定し、決定後の第1処理量を第1ファイル151へ出力する。第1取得部171はVM2の起動または停止をトリガに、第1ファイル151の記憶内容を更新する。
図4は負荷量DB156のレコードレイアウトを示す説明図である。負荷量DB156はアプリケーションIDフィールド及び負荷量フィールド等を含む。アプリケーションIDフィールドには、VM2にて実行されるアプリケーション212を特定するための識別情報であるアプリケーションIDが記憶されている。また負荷量フィールドにはアプリケーションIDに対応づけて負荷量が記憶されている。この負荷量は、VM2にて実行中のアプリケーション212に基づき変動する第2処理量を決定する際に参照される値である。負荷量DB156は、すべてのVM2に対して共通に用意することもできるが、VM2毎に用意することもできる。そうすることで、同じアプリケーション212を使用していたとしても、VM2が異なれば、異なる負荷量とすることができる。第2処理量はVM2にて実行中のアプリケーション212がハードウェアリソース10を消費する量として予測される値であり、負荷量DB156に基づき決定される。
実行中のアプリケーション212がハードウェアリソース10を消費する量はリアルタイムで変動するため、本実施の形態においては実行中のアプリケーション212がハードウェアリソース10を消費すると予測される最大の消費量を負荷量として記憶している。なお、負荷量はCPU11、HD15またはNIC16等のいずれかであるが、本実施の形態においては、CPU11に対する負荷量を例に挙げて説明する。例えばブラウザにはアプリケーションID「A04」が付与され、負荷量は「30」と記憶されている。また、CPU11の消費量が比較的大きいDVD再生用アプリケーション(アプリケーションID「A06」)の場合、負荷量は「50」と記憶されている。
オペレータはコンピュータ3のキーボード(図示せず)等を通じて、負荷量DB156に記憶された負荷量の値を適宜変更することが可能である。なお、負荷量は実行中のアプリケーション212がCPU11を消費するであろうと予測される最大の消費量を例に挙げたがこれに限るものではない。アプリケーション212がCPU11を消費するであろうと予測される消費量の平均値、または、最大値に所定の係数(0.8または1.2等)を乗算、加算または減算したものであっても良く、設計に応じて適宜の値とすればよい。
VM2のOS211は実行中のアプリケーション212のアプリケーションIDを第2取得部172へ出力する。第2取得部172は負荷量DB156からアプリケーションIDに対応する負荷量を第2処理量として取得する。VM2において複数のアプリケーション212が実行されている場合、OS211は現在選択中のアプリケーション212のアプリケーションIDを出力する。第2取得部172は当該アプリケーションIDに対応する負荷量を負荷量DB156から読み出し、第2処理量とする。
図5はコンピュータ3の表示部に表示される画面イメージを示す説明図である。コンピュータ3を使用するユーザは運転中のVM2にて、アプリケーション212を実行する。図5の例では一例として、3つのアプリケーション212が実行されている。表示部にはアプリケーションID「A01」のウィンドウ341、アプリケーションID「A02」のウィンドウ342、及び、アプリケーションID「A03」のウィンドウ343が表示される。ユーザはコンピュータ3のマウス(図示せず)等により使用を希望するウィンドウ341、342、343(以下、場合によりWで代表する)のいずれかを選択する。
コンピュータ3にて選択されたウィンドウWの情報はNIC16を介してOS211へ出力される。図5の例ではウィンドウ341が選択されていることが理解できる。ここで、他のウィンドウ342及び343は非選択の状態である。この状態でウィンドウ342をクリックした場合、ウィンドウ342が選択されたことになり、逆にウィンドウ341及び343は非選択の状態となる。なお、ウィンドウWをクリックして選択する以外にも、表示部下部に表示されるタスクバーに表示された矩形状のボタンをクリックすることによりウィンドウWを選択しても良い。また、新たにアプリケーション212を起動した場合、当該新たに起動したアプリケーション212が選択されたアプリケーション212となる。なお、アプリケーション212を終了した場合、直前に選択していたアプリケーション212または最前面に表示されているウィンドウWに係るアプリケーション212が選択されたアプリケーション212となる。OS211はアプリケーション212の選択を受け付けた場合、選択されたアプリケーションIDを第2取得部172へ出力する。なお、ウィンドウW以外をクリックすることで、アプリケーション212を一つも選択しない状態にできる。このような場合は、選択アプリケーション212がないものとして、非実行情報を第2取得部172へ出力する。
図6は第2ファイル152のレコードレイアウトを示す説明図である。第2ファイル152はVMIDフィールド及び第2処理量フィールド等を含む。第2処理量フィールドには、VMIDに対応づけて、各VM2の第2処理量を記憶している。第2取得部172は各VM2のOS2から出力されるアプリケーションIDを元に負荷量DB156から、負荷量を抽出する。第2取得部172はVMIDに対応づけて抽出した負荷量を第2処理量として第2ファイル152に記憶する。このように、第2ファイル152の記憶内容は、VM2において実行されるアプリケーション212の実行または終了を含む選択により変動する。なお実施の形態で述べる各種ファイルのレコードレイアウトはあくまで一例でありこれに限るものではない。データ間の関連づけが確保されているのであれば、他のデータの持ち方を採用しても良い。
第1取得部171はVM2の起動または停止をトリガに第1処理量を取得し、取得した第1処理量を算出部173へ出力する。また第2取得部172は各VM2におけるアプリケーション212の選択をトリガに取得したVM2毎の第2処理量を算出部173へ出力する。算出部173は、各VM2の第1処理量または第2処理量が変更される度に、各VM2の第1処理量と第2処理量との差分に基づき、各VM2の第3処理量を算出する。なお、第3処理量の詳細な算出手順は後述するフローチャートを用いて説明する。
図7は第3ファイル153のレコードレイアウトを示す説明図である。第3ファイル153はVMIDフィールド及び第3処理量フィールド等を含む。第3処理量フィールドには算出部173からVMIDと共に出力された第3処理量が、VMIDに対応づけて記憶されている。第2取得部172は取得した各VM2の第2処理量を決定部176へ出力する。算出部173は算出した各VM2の第3処理量を決定部176へ出力する。決定部176は、各VM2の第2処理量及び第3処理量の大小関係に基づき、各VM2の状態を決定する。具体的には、決定部176は決定ファイル157を参照して各VM2の状態を決定する。
図8は決定ファイル157のレコードレイアウトを示す説明図である。決定ファイル157は第3処理量フィールド、第2処理量フィールド及び状態フィールド等を含む。第3処理量フィールド及び第2処理量フィールドには、第3処理量または第2処理量の大小関係を示す数字が記憶されている。図8の第3処理量フィールド及び第2処理量フィールドに示す数字は、処理量の値が大きいものから降順に整列した場合の順位を示す。すなわち、数字が小さい方が、順位が高く、処理量の値が大きいことを示す。状態フィールドには、VM2のハードウェアリソース10に関する状態を示す情報が記憶されている。例えば、第3処理量が第2処理量よりも大きい場合、第3処理量フィールドの「1」(順位)、第2処理量フィールドの「2」(順位)を元に、状態「晴れ」が読み出される。一方、第3処理量が第2処理量よりも小さい場合、第3処理量フィールドの「2」、第2処理量フィールドの「1」を元に、状態「雨」が読み出される。
VM2の第3処理量が、実行中のアプリケーション212に基づき変動する第2処理量よりも大きい場合、現在は快適にアプリケーション212を使用できることから、状態を晴れとしている。状態が雨の場合、逆に第3処理量が第2処理量より小さいことを示す。当該VM2の第3処理量が、実行中のアプリケーション212に基づき変動する第2処理量よりも小さいため、現在はアプリケーション212の処理が遅くなる可能性があり、状態を雨としている。なお、状態が快適であることを示す晴れ及び状態が不快適であることを示す雨、並びに、実施の形態で述べる決定ファイル157の内容はあくまで一例でありこれに限るものではない。また値が同一の場合、例えば第3処理量と第2処理量とが同一の場合はいずれか一方を大きいものとして同様の処理を行えばよい。
図9はコンピュータ3の表示部に表示される状態のイメージを示す説明図である。決定部176は各VM2の状態を、決定ファイル157を参照して決定し、状態に対応する画像データを画像データファイル158から読み出す。画像データファイル158は状態に対応づけて各種画像データを記憶している。例えば、天気予報に使用される画像と同じく、晴れ、雨、曇り時々雨、または、晴れ時々曇り等が記憶されている。なお状態「曇り」は、状態が適当であることを示し、快適な状態「晴れ」と、不快適な状態「雨」との間の状態であることを示す。出力部としての決定部176は、VMIDを参照し、各VM21、22、23のOS211へ、読み出した状態に対応する画像データを出力する。その他、決定部176は第3処理量から第2処理量を減じた値が正の場合、状態が良い方向に向かう晴れを出力し、第3処理量から第2処理量を減じた値が負の場合、状態が悪い方向に向かう雨を出力しても良い。
OS211は図9に示す如く、タスクバー上に状態に係る画像データ344を表示する。本実施の形態においてはタスクバーに画像データ344を表示する例を挙げたがこれに限るものではない。例えばデスクトップ上に画像データ344を出力しても良い。またWindows(登録商標)のサイドバー上にガジェットとして画像データ344を表示しても良い。その他、状態を示すものであれば他の画像データ344であっても良い。例えば状態が良いことを示す1、通常であることを示す2、悪いことを示す3の三段階に分かれる場合、青、黄色、赤の如く色に係る画像データ344を出力しても良い。また、大笑いする顔、ほほえむ顔、または、泣き顔等、顔の表情に係る画像データ344を出力しても良い。さらには、画像データ344ではなく、良い、中、悪い等、状態に係る文字データ、または状態に対応する音楽データを出力しても良い。
以上のハードウェアにおいて各種ソフトウェア処理を、フローチャートを用いて説明する。図10は第1処理量の取得処理の手順を示すフローチャートである。VM管理部178は、起動部179を介して、コンピュータ3からVMID及びVM2の起動命令を受け付けたか否かを判断する(ステップS101)。VM管理部178は、起動部179を介してVMID及びVM2の起動命令を受け付けていないと判断した場合(ステップS101でNO)、ステップS102へ移行する。VM管理部178は、停止部1710を介して、コンピュータ3からVMID及びVM2の停止命令を受け付けたか否かを判断する(ステップS102)。
VM管理部178は停止部1710を介してVMID及びVM2の停止命令を受け付けていないと判断した場合(ステップS102でNO)、処理をステップS101へ戻す。一方、VM管理部178は、停止部1710を介してVMID及びVM2の停止命令を受け付けたと判断した場合(ステップS102でYES)、処理をステップS103へ移行させる。VM管理部178は第1ファイル151、第2ファイル152及び第3ファイル153のVM2の停止命令のあったVMIDに対応するレコードを消去する(ステップS103)。
ステップS103の後、及び、ステップS101において、VMID及びVM2の起動命令を受け付けたと判断した場合(ステップS101でYES)、VM管理部178はHD15(またはRAM12)から所定条件を読み出す(ステップS104)。VM管理部178は、運転中のVM2に付与された重みに基づき、運転中のVM2毎の第1処理量を算出する(ステップS105)。具体的には、VM管理部178は、最大の第1処理量、及び、現在運転中のVM2に係る重みをHD15から読み出す。そして、VM管理部178は、重みが大きいほど、第1処理量が大きくなるよう、VM2毎に第1処理量を算出する。
VM管理部178は算出した各VM2のVMID及び第1処理量を第1取得部171へ出力する(ステップS106)。VM管理部178はVMID及び第1処理量を取得する(ステップS107)。第1取得部171は第1ファイル151に、VMIDに対応づけて、第1処理量を記憶する(ステップS108)。第1取得部171は、運転中のVM2毎に、VMID及び第1処理量を算出部173へ出力する(ステップS109)。
図11及び図12はアプリケーションIDの出力処理手順を示すフローチャートである。運転中のVM2のOS211は以下の処理を実行する。OS211の起動当初はアプリケーション212が実行されていないものとする。OS211はVMID及びアプリケーション212が実行されていないことを示す非実行情報を第2取得部172へ出力する(ステップS111)。OS211はアプリケーション212の起動命令を、コンピュータ3からNIC16を介して受け付けたか否かを判断する(ステップS112)。
OS211はアプリケーション212の起動命令を受け付けたと判断した場合(ステップS112でYES)、VMID及びアプリケーションIDを第2取得部172へ出力する(ステップS113)。その後処理をステップS112へ戻す。OS211はアプリケーション212の起動命令を受け付けていないと判断した場合(ステップS112でNO)、アプリケーション212の停止命令を受け付けたか否かを判断する(ステップS114)。OS211はアプリケーション212の停止命令を受け付けたと判断した場合(ステップS114でYES)、他のアプリケーション212が実行中であるか否かを判断する(ステップS115)。
OS211は他のアプリケーション212が実行中でないと判断した場合(ステップS115でNO)、VMID及び非実行情報を第2取得部172へ出力する(ステップS117)。OS211は他のアプリケーション212が実行中であると判断した場合(ステップS115でYES)、ステップS116へ移行する。OS211はVMID及び前回選択されていた、つまり時系列で見て直前に選択されていた他のアプリケーションのアプリケーションIDを第2取得部172へ出力する(ステップS116)。その後処理をステップS112へ戻す。
OS211はアプリケーション212の停止命令を受け付けていないと判断した場合(ステップS114でNO)、実行中のアプリケーション212の選択を受け付けたか否かを判断する(ステップS118)。OS211は選択を受け付けていないと判断した場合(ステップS118でNO)、処理をステップS112へ戻す。OS211はアプリケーション212の選択を受け付けたと判断した場合(ステップS118でYES)、VMID及び選択後のアプリケーション212のアプリケーションIDを第2取得部172へ出力する(ステップS119)。その後処理をステップS112へ戻す。
図13は第2処理量の取得処理手順を示すフローチャートである。第2取得部172は各VM2からVMID及びアプリケーションIDが受け付けたか否かを判断する(ステップS131)。第2取得部172はVMID及びアプリケーションIDを受け付けたと判断した場合(ステップS131でYES)、アプリケーションIDに基づき、負荷量DB156から負荷量を読み出す(ステップS132)。第2取得部172はVMID及びアプリケーションIDを受け付けていないと判断した場合(ステップS131でNO)、各VM2からVMID及び非実行情報を受け付けたか否かを判断する(ステップS133)。第2取得部172はVMID及び非実行情報を受け付けていないと判断した場合(ステップS133でNO)、処理をステップS131へ戻す。
第2取得部172はVMID及び非実行情報を受け付けたと判断した場合(ステップS133でYES)、負荷量を0に設定する(ステップS134)。すなわち実行中のアプリケーション212が存在しないため、負荷量及び第2処理量を最低値とするためである。ステップS134及びS132の後、第2取得部172はステップS134またはS132の負荷量をVM2の第2処理量として取得する(ステップS135)。第2取得部172はVMIDに対応づけて第2ファイル152に取得した第2処理量を記憶する(ステップS136)。第2取得部172はVMID及び取得した第2処理量を算出部173へ出力する(ステップS137)。
図14乃至図17は算出処理の手順を示すフローチャートである。算出部173は第1取得部171からVMID及び第1処理量を受け付けたか否かを判断する(ステップS141)。算出部173はVMID及び第1処理量を受け付けていないと判断した場合(ステップS141でNO)、第2取得部172からVMID及び第2処理量を受け付けたか否かを判断する(ステップS142)。算出部173はVMID及び第2処理量を受け付けていないと判断した場合(ステップS142でNO)、ステップS141へ処理を戻す。
算出部173はVMID及び第1処理量を受け付けた場合(ステップS141でYES)、または、VMID及び第2処理量を受け付けた場合(ステップS142でYES)、ステップS143へ移行する。算出部173はHD15に記憶された最大第1処理量を読み出す(ステップS143)。なお、この最大第1処理量は、例えばCPU11が2つの場合、一つのCPU11のCPU使用率100%を2倍して200%とすれば良い。算出部173は第1ファイル151からVMID及び第1処理量を読み出す(ステップS144)。なお、停止中のVM2についてはステップS103の処理により、第1ファイル151乃至第3ファイル153の、レコードが消去されている。
算出部173は読み出した第1処理量の合計値を算出する(ステップS145)。算出部173はステップS143で読み出した最大第1処理量から第1処理量の合計値を減じて初期合計値を算出する(ステップS146)。算出部173はステップS144で読み出した各VM2のVMIDに対応する第1処理量を、各VM2の第3処理量としてそれぞれ決定する(ステップS147)。算出部173は第3ファイル153にVMIDに対応づけて決定した第3処理量を記憶する(ステップS148)。
算出部173は第2ファイル152からVMID及び第2処理量を読み出す(ステップS149)。算出部173は読み出した第1処理量が第2処理量よりも大きいVMID、第1処理量及び第2処理量の組み合わせを抽出する(ステップS151)。算出部173は、抽出した組み合わせについて、VMID毎に第1処理量から第2処理量を減算し、差分値を算出する(ステップS152)。
算出部173はステップS152の処理を全ての組み合わせについて実行し、全てのVMIDの差分値の合計値を算出する(ステップS153)。算出部173は差分値の合計値にステップS146で算出した初期合計値を加算して、合計値を算出する(ステップS154)。算出部173は合計値が0よりも大きいか否かを判断する(ステップS155)。算出部173は合計値が0よりも大きくないと判断した場合(ステップS155でNO)、処理を終了する。
算出部173は合計値が0よりも大きいと判断した場合(ステップS155でYES)、第2処理量が第1処理量より大きいVMID、第1処理量及び第2処理量の組み合わせを抽出する(ステップS156)。算出部173は抽出したVMID毎に第2処理量から第1処理量を減算し、差分値を算出する(ステップS157)。算出部173は全てのVMIDの差分値を加算することにより、差分値の補助合計値を算出する(ステップS158)。なお、補助合計値の算出例はあくまで一例でありこれに限るものではない。例えば第2処理量が第1処理量より大きい場合、大きい第2処理量の合計値から、小さい第1処理量の合計値を減じることにより補助合計値を求めても良い。
算出部173は合計値が補助合計値以上か否かを判断する(ステップS159)。算出部173は合計値が補助合計値より小さい場合(ステップS159でNO)、第2処理量が第1処理量よりも大きいVMID及び第1処理量を抽出する(ステップS161)。算出部173はHD15に記憶したスケジューリングに関する所定条件を読み出す(ステップS162)。算出部173は合計値を所定条件に従い、抽出したVMIDに対応する配分値を算出する(ステップS163)。例えば重みに基づいて配分値を算出すればよい。VM21の重みが1、VM22の重みが3であり、合計値が40の場合、VM21に10を配分し、VM22に30を配分すればよい。その他均等に割り振るなど、適宜の配分とすれば良い。
算出部173はVMIDに対応する第1処理量に算出した配分値を加算する(ステップS164)。算出部173は加算後の値をVMIDに対応する第3処理量として算出する(ステップS165)。算出部173はVMID及び第3処理量を第3ファイル153に記憶する。その後、ステップS177へ処理を移す。なお、以下の処理を行っても良い。算出部173は第1処理量が第2処理量より大きいVMID及び第1処理量を抽出する。算出部173は抽出したVMIDに係る第1処理量を第3処理量として決定する。算出部173はVMID及び第3処理量を第3ファイル153に記憶する。
算出部173は合計値が補助合計値以上と判断した場合(ステップS159でYES)、第2処理量が第1処理量より大きいVMID及び第2処理量を抽出する(ステップS171)。算出部173は抽出したVMIDに係る第2処理量を第3処理量として決定する(ステップS172)。算出部173はVMID及び第3処理量を第3ファイル153に記憶する(ステップS173)。なお、以下の処理を行っても良い。算出部173は第1処理量が第2処理量より大きいVMID及び第1処理量を抽出する。算出部173は抽出したVMIDに係る第1処理量を第3処理量として決定する。算出部173はVMID及び第3処理量を第3ファイル153に記憶する。
算出部173はVMID及び第2処理量を第2ファイル152から読み出す(ステップS177)。算出部173はVMID及び第3処理量を第3ファイル153から読み出す(ステップS178)。算出部173は読み出したVMID、第2処理量及び第3処理量を決定部176へ出力する(ステップS179)。
図18は第3処理量の配分例を示す説明図である。物理マシン1のCPU11の数を2個とし、2つのVM21、VM22が運転中に、VM23が起動した後の例を示す。なお、各処理量及び値は変化があった場合のみ記している。最大第1処理量に基づき合計値が200とされる。次いで、最大第1処理量(200)から各VM2の第1処理量合計値(50+100+50)を減算し、合計値0(初期合計値)を算出する。
各VM2の第3処理量を、第1処理量で上書きする。そして、第1処理量が第2処理量よりも大きいVM2を抽出する。この場合VM22が抽出される。第1処理量(100)から第2処理量(80)を減じる。この減じた値(20)を初期合計値(0)に加算し合計値(20)を算出する。第2処理量が第1処理量よりも大きいVM2を抽出する。この場合VM21が抽出される。第2処理量(80)から第1処理量(50)を減じる。この減じた値を補助合計値(30)とする。
ここで、合計値(20)は補助合計値(30)よりも小さいため、第2処理量が第1処理量よりも大きいVM2を抽出する。ここではVM21が抽出される。VM21には合計値(20)が配分される。VM21の第1処理量(50)に配分された値(20)が加算され、VM21の第3処理量は70となる。VM22については第1処理量(100)が第3処理量(100)となり、VM23については第1処理量(50)が第3処理量(50)となる。
図19は状態決定処理の手順を示すフローチャートである。決定部176は算出部173から出力されるVMID、第2処理量及び第3処理量を受け付けたか否かを判断する(ステップS181)。決定部176はVMID、第2処理量及び第3処理量を受け付けていないと判断した場合(ステップS181でNO)、処理を再び繰り返す。決定部176はVMID、第2処理量及び第3処理量を受け付けたと判断した場合(ステップS181でYES)、第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの状態を決定する(ステップS182)。
決定部176はVMID毎に状態に対応する画像データ344を画像データファイル158から読み出す(ステップS183)。決定部176はVMIDを参照し、各VM2のOS211へ画像データ344を出力する(ステップS184)。OS211は画像データ344を受け付け、図9の如くOS211の画面上に表示する(ステップS185)。これにより、各VM21、22、23・・・で実行されるアプリケーション212の状況に応じて、または、VM2の運転状況に応じた適切な状態判断が可能となる。
実施の形態2
実施の形態2は一部のモジュール170をVM2側で実行させる形態に関する。実施の形態で述べた各処理は一例であり、一部のモジュール170に係る処理をVM2において適宜実行させても良い。図20は実施の形態2に係る物理マシン1及びVM2のハードウェア及びソフトウェアを示すブロック図である。負荷量DB156、決定ファイル157、決定部176及び画像データファイル158は各VM2に設けられている。また各VM2には第2処理量決定部1721が新たに設けられている。第2処理量決定部1721は実施の形態1の第2取得部172と同じく、負荷量DB156を参照し、第2処理量を決定する。第2処理量決定部1721は決定した第2処理量及びVMIDを第2取得部172へ出力する。
第2取得部172は第2処理量決定部1721から出力された第2処理量を取得する。実施の形態1で述べた如く算出部173は対応するVM2へ第2処理量及び第3処理量を出力する。決定部176は第2処理量及び第3処理量、並びに、決定ファイル157を参照し、VM2の状態を決定する。決定部176は画像データファイル158から状態に対応する画像データ344を読み出す。決定部176は画像データ344及びVMIDをOS211へ出力する。OS211は画像データ344を表示する。
本実施の形態で述べた決定部176、決定ファイル157及び画像データファイル158をVM2に設け、第2処理量決定部1721及び負荷量DB156をVM2に設けない形態としても良い。この場合実施の形態1と同じく、負荷量DB156は物理マシン1側に設けられる。さらに、本実施の形態で述べた第2処理量決定部1721及び負荷量DB156をVM2に設け、決定部176、決定ファイル157及び画像データファイル158をVM2に設けず、実施の形態1と同様に物理マシン1側に設けても良い。このように設計に応じてモジュール170を適宜配分することで、様々な形態で情報の出力が可能となる。
本実施の形態2は以上の如きであり、その他は実施の形態1と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態3
実施の形態3は第1処理量乃至第3処理量の3つを総合的に考慮して状態を決定する形態に関する。なお、以降の実施例は実施の形態1に適用した例を挙げて説明するが、実施の形態2に適用しても良い。算出部173はVMID、第1処理量、第2処理量及び第3処理量を決定部176へ出力する。決定部176は、第1処理量、第2処理量及び第3処理量の大小関係、並びに、決定ファイル157を参照し状態を決定する。
図21は決定ファイル157のレコードレイアウトを示す説明図である。決定ファイル157は第3処理量フィールド、第1処理量フィールド、第2処理量フィールド及び状態フィールド等を含む。第3処理量フィールド、第1処理量フィールド及び第2処理量フィールドには、第3処理量、第1処理量または第2処理量の大小関係を示す数字が記憶されている。図21の第3処理量フィールド、第1処理量フィールド、第2処理量フィールドに示す数字は、処理量の値が大きいものから降順に整列した場合の順位を示す。すなわち、数字が小さい方が、順位が高く、処理量の値が大きいことを示す。状態フィールドには、VM2のハードウェアリソース10の状態を示す情報が記憶されている。例えば、第3処理量が最も大きく、次いで第1処理量が大きく、第2処理量が最も小さい場合、第3処理量フィールドの「1」(順位)、第1処理量フィールドの「2」(順位)、第2処理量フィールドの「3」(順位)を元に、状態「晴れ」が読み出される。
なお状態フィールドにXを記した部分は、第1処理量が第3処理量より大きい場合であるが、上述したとおり、係る組み合わせは存在しないため、Xとしている。以下の実施形態においても同様の表記とする。状態が「晴れ」の場合、第3処理量、第1処理量、第2処理量の順である。第2処理量が第1処理量より小さいため、確実に割り当てられるCPU使用率よりアプリケーション212が使用するCPU使用率の方が小さく、アプリケーション212は快適に使用できることから、状態を晴れとしている。
状態が「晴れ時々くもり」の場合、第3処理量、第2処理量、第1処理量の順である。第3処理量が第2処理量より大きいため、状態を「晴れ」としている。しかし、第1処理量は第2処理量より小さいため、他のVM2次第で第3処理量が変動する可能性がある。従って、最終的に状態を「晴れ時々くもり」としている。状態が「雨」の場合、第2処理量、第3処理量、第1処理量の順である。当該VM2が使用する第2処理量が、第3処理量より大きいため、アプリケーション212の処理が遅くなる可能性がある。従って、状態を「雨」としている。
図22は状態決定処理の手順を示すフローチャートである。決定部176は算出部173から出力されるVMID、第1処理量、第2処理量及び第3処理量を受け付けたか否かを判断する(ステップS221)。決定部176はVMID、第1処理量、第2処理量及び第3処理量を受け付けていないと判断した場合(ステップS221でNO)、処理を再び繰り返す。決定部176はVMID、第1処理量、第2処理量及び第3処理量を受け付けたと判断した場合(ステップS221でYES)、第1処理量と第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの状態を決定する(ステップS222)。
決定部176はVMID毎に状態に対応する画像データ344を画像データファイル158から読み出す(ステップS223)。決定部176はVMIDを参照し、各VM2のOS211へ画像データ344を出力する(ステップS224)。OS211は画像データ344を受け付け、図9の如くOS211の画面上に表示する(ステップS225)。これにより、ハードウェアリソース10の割当に関する第1処理量をも考慮することでより詳細な状態をユーザに提供することが可能となる。
本実施の形態3は以上の如きであり、その他は実施の形態1及び2と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態4
実施の形態4は第4処理量を考慮して状態を決定する形態に関する。図23は実施の形態4に係る物理マシン1及びVM2のハードウェア及びソフトウェアを示すブロック図である。第4取得部174及び第4ファイル154がさらに設けられている。第4取得部174は、各VM2がCPU11等を消費する割合を示す第4処理量を取得する。例えばVM21の現在のCPU使用率を第4処理量とするほか、VM21がNIC16を単位時間当たりに占有する率、または、VM21がHD15を単位時間当たりに占有する率を第4処理量としても良い。本実施の形態においては、一例としてVM21のCPU使用率を第4処理量であるものとして説明する。
第4取得部174は各VM2のOS211から出力されるVMID及び第4処理量を取得する。第4取得部174は第4ファイル154にVMID及び第4処理量を記憶する。また第4取得部174はVMID及び第4処理量を決定部176へ出力する。なお、第4取得部174はOS211から出力される第4処理量をリアルタイムで決定部176へ出力するほか、一定時間おきに出力するようにしても良い。その他一定時間内の平均第4処理量を第4処理量として決定部176及び第4ファイル154へ出力しても良い。また、仮想化レイヤ17にて、各VM2のCPU使用率を取得してもよい。各VM2のCPU使用率は、仮想化レイヤ17における図示しないスケジューラが、一定時間にどれだけCPU11を各VM2に割り当てたかに基づき計算される。本実施の形態においてはリアルタイムで第4処理量を出力する例を挙げて説明する。
図24は第4ファイル154のレコードレイアウトを示す説明図である。第4取得部174はOS211から出力されたVM2毎の第4処理量を第4ファイル154に記憶する。第4ファイル154はVMIDフィールド及び第4処理量フィールド等を含む。VMIDフィールドにはVMIDが記憶され、第4処理量フィールドにはVMIDに対応づけて第4処理量が記憶されている。
決定部176は第4取得部174または第4ファイル154から出力されるVMID及び第4処理量、並びに、算出部173から出力される第2処理量及び第3処理量の大小関係に基づき状態を決定する。この際決定部176は決定ファイル157を参照し、現在の状態及び当該現在の状態よりも後に予測される状態(以下、予測状態)をも決定する。以降では予測状態と対比すべく現在の状態を現在状態という。
図25は決定ファイル157のレコードレイアウトを示す説明図である。決定ファイル157は第3処理量フィールド、第2処理量フィールド、第4処理量フィールド、現在状態フィールド及び予測状態フィールド等を含む。第3処理量フィールド、第2処理量フィールド及び第4処理量フィールドには、第3処理量、第2処理量または第4処理量の大小関係を示す数字が記憶されている。図25の第3処理量フィールド、第2処理量フィールド、第4処理量フィールドに示す数字は、処理量の値が大きいものから降順に整列した場合の順位を示す。すなわち、数字が小さい方が、順位が高く、処理量の値が大きいことを示す。現在状態フィールドには、VM2のハードウェアリソース10に関する現在の状態を示す情報が記憶されている。予測状態フィールドには、VM2のハードウェアリソース10に関する現在の状態よりも時系列で後に予測される状態を示す情報が記憶されている。例えば、第3処理量が最も大きく、次いで第2処理量が大きく、第4処理量が最も小さい場合、第3処理量フィールドの「1」(順位)、第2処理量フィールドの「2」(順位)、第4処理量フィールドの「3」(順位)を元に、現在状態「晴れ」が読み出される。また予測状態も「晴れ」と読み出される。
図8と同じく、第3処理量が第2処理量よりも大きい場合、現在状態を「晴れ」としている。そのため、1、2及び4行目の現在状態は「晴れ」である。また、図8と同じく、第3処理量が第2処理量よりも小さい場合、現在状態を「雨」とした。ただし、現在の第4処理量をも考慮して、第4処理量が第3処理量よりも小さい場合、VM2の使用環境如何では「雨」とならないということを示すために、状態を「くもり時々雨」としている。そのため、3行目は現在状態が「くもり時々雨」、5及び6行目は現在状態が「雨」である。
予測状態は、現在の第4処理量に第2処理量が変更された場合、状態がどのように変化するかという観点で決定している。1、3及び5行目は、第2処理量が第4処理量よりも大きいため、予測される状態も現在と同じ状態である。2行目は、第2処理量と第4処理量が入れ替わり1行目になるため、予測状態は「晴れ」である。4行目は、第2処理量が1、第4処理量が2、第3処理量が3となり5行目となるため、予測状態は「雨」である。6行目は、第2処理量と第4処理量とが入れ替わり5行目となるため、予測状態は「雨」である。
4行目は、第2処理量が更新されない場合には、つまり、負荷DB156のアプリケーション毎の負荷量が更新されない場合には、現在状態が「晴れ」で予測状態が「雨」となってしまう。そこで、第2処理量が更新されない場合、前回の予測状態と今回の現在状態とが同じでなければ、今回の現在状態は、予測状態とすることで、引き続き状態が「晴れ」となることを防止できる。つまり、そのようなときには、現在状態及び予測状態も「雨」とする。
図26は状態決定処理の手順を示すフローチャートである。決定部176は算出部173及び第4取得部174から出力されるVMID、第4処理量、第2処理量及び第3処理量を受け付けたか否かを判断する(ステップS261)。決定部176はVMID、第4処理量、第2処理量及び第3処理量を受け付けていないと判断した場合(ステップS261でNO)、処理を再び繰り返す。決定部176はVMID、第4処理量、第2処理量及び第3処理量を受け付けたと判断した場合(ステップS261でYES)、第4処理量と第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの現在状態を決定する(ステップS262)。
また決定部176は第4処理量と第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの予測状態を決定する(ステップS263)。決定部176はVMID毎に現在状態及び予測状態に対応する画像データ344を画像データファイル158から読み出す(ステップS264)。決定部176はVMIDを参照し、各VM2のOS211へ現在状態及び予測状態の画像データ344を出力する(ステップS265)。OS211は現在状態及び予測状態の画像データ344を受け付け、OS211の画面上に表示する(ステップS266)。
図27はコンピュータ3の表示部に表示される状態のイメージを示す説明図である。デスクトップ上には現在状態(晴れ)及び予測状態(雨)を容易に視認できる画像データ344が表示される。予測状態が時系列で後であることを理解できるよう、現在状態の画像と予測状態の画像との間に現在状態から予測状態へ向かう矢印等の先後を示す画像を記述することが好ましい。なお、先後を示す画像データも状態に対応する画像データ344と同じく画像データファイル158に記憶されている。これにより、ハードウェアリソース10の消費の割合に関する第4処理量をも考慮することでより現在の状態のみならず将来的な予測状態をユーザに提供することが可能となる。
本実施の形態4は以上の如きであり、その他は実施の形態1乃至3と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態5
実施の形態5は第1処理量乃至第4処理量の全てを考慮する形態に関する。算出部173は第1処理量乃至第3処理量を決定部176へ出力する。第4取得部174は第4処理量を決定部176へ出力する。決定部176は第1処理量乃至第4処理量の大小関係並びに決定ファイル157を参照して、現在状態及び予測状態を決定する。
図28は決定ファイル157のレコードレイアウトを示す説明図である。決定ファイル157は第3処理量フィールド、第1処理量フィールド、第2処理量フィールド、第4処理量フィールド、現在状態フィールド及び予測状態フィールド等を含む。第3処理量フィールド、第1処理量フィールド、第2処理量フィールド及び第4処理量フィールドには、第3処理量、第1処理量、第2処理量及び第4処理量の大小関係を示す数字が記憶されている。図28の第3処理量フィールド、第1処理量フィールド、第2処理量フィールド、第4処理量フィールドに示す数字は、処理量の値が大きいものから降順に整列した場合の順位を示す。すなわち、数字が小さい方が、順位が高く、処理量の値が大きいことを示す。
現在状態フィールドには、VM2のハードウェアリソース10に関する現在状態が記憶されている。予測状態フィールドには、VM2のハードウェアリソース10に関する現在の状態よりも後の予測状態が記憶されている。例えば、第3処理量が最も大きく、次いで第1処理量が大きく、3番目に第2処理量が大きく、第4処理量が最も小さい場合、以下のとおりとなる。第3処理量フィールドの「1」(順位)、第1処理量フィールドの「2」(順位)、第2処理量フィールドの「3」(順位)、第4処理量フィールドの「4」(順位)を元に、現在状態「晴れ」が読み出される。また予測状態も「晴れ」と読み出される。
図21に従い、第3処理量、第1処理量、第2処理量の順である場合、現在状態を「晴れ」とする条件とした。そのため、1、2、4及び10行目の現在状態は「晴れ」である。また、図21に従い、第3処理量、第2処理量、第1処理量の順である場合、現在状態を「晴れ時々くもり」とした。そのため、3、5、6及び12行目の現在状態は「晴れ時々くもり」である。さらに、図21に従い、第2処理量、第3処理量、第1処理量の順である場合、現在状態を「雨」とする条件ともできる。ただし本実施の形態においては、第4処理量をも加味する。そして、第4処理量が第3処理量よりも小さい場合、VM2の使い方次第では現在状態「雨」とはならないということを示すために、現在状態「くもり時々雨」とした。またそれ以外は現在状態「雨」とした。
従って、9及び11行目は現在状態が「くもり時々雨」、17及び18行目は現在状態が「雨」である。予測状態は、第4処理量に対し、第2処理量が変更された場合、状態がどのようになるかという観点で決定している。1、3、5、9、11及び17行目は、第2処理量が第4処理量よりも大きいため、予測状態は現在状態と同じ状態である。2行目は、第2処理量と第4処理量とが入れ替わり、1行目になるため、予測状態は「晴れ」である。4行目は、第3処理量、第2処理量、第4処理量、第1処理量の順となり5行目となる。従って、予測状態は「晴れ時々くもり」である。
6行目は、第2処理量と第4処理量とが入れ替わり5行目になるため、予測状態は「晴れ時々くもり」である。10行目は、第2処理量、第4処理量、第3処理量、第1処理量の順となり17行目となるため、予測状態は「雨」である。12行目は、第2処理量、第4処理量、第3処理量、第1処理量の順となり17行目となるため、予測状態は「雨」である。18行目は、第2処理量と第4処理量が入れ替わり17行目になるため、予測状態は「雨」である。図25と同様に、4、10及び12行目は、第2処理量が更新されない場合には、予測状態に移行しなくなってしまう。このため、前回の予測状態と今回の現在状態とが同じでない場合、今回の現在状態は、予測状態とする。なお、以上述べた順位はあくまで一例であり、適宜変更しても良い。オペレータはコンピュータ3から決定ファイル157の内容を適宜変更することが可能である。
図29は状態決定処理の手順を示すフローチャートである。決定部176は算出部173及び第4取得部174から出力されるVMID、第4処理量、第1処理量、第2処理量及び第3処理量を受け付けたか否かを判断する(ステップS291)。決定部176はVMID、第4処理量、第1処理量、第2処理量及び第3処理量を受け付けていないと判断した場合(ステップS291でNO)、処理を再び繰り返す。決定部176はVMID、第4処理量、第1処理量、第2処理量及び第3処理量を受け付けたと判断した場合(ステップS291でYES)、第4処理量と第1処理量と第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの現在状態を決定する(ステップS292)。
また決定部176は第4処理量と第1処理量と第2処理量と第3処理量との大小関係、及び、決定ファイル157を参照し、各VMIDの予測状態を決定する(ステップS293)。決定部176はVMID毎に現在状態及び予測状態に対応する画像データ344を画像データファイル158から読み出す(ステップS294)。決定部176はVMIDを参照し、各VM2のOS211へ現在状態及び予測状態の画像データ344を出力する(ステップS295)。OS211は現在状態及び予測状態の画像データ344を受け付け、OS211の画面上に表示する(ステップS296)。これにより、ハードウェアリソース10の消費の割合に関する第4処理量及び割当に関する第1処理量をも考慮することでより現在の状態のみならず将来的な予測状態をユーザに提供することが可能となる。
本実施の形態5は以上の如きであり、その他は実施の形態1乃至4と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態6
実施の形態6は負荷量及び第4処理量に応じて第2処理量を決定する形態に関する。第2取得部172は実施の形態1で述べた選択されたアプリケーションIDに対応する負荷量を負荷量DB156から取得する。第2取得部172は第4取得部174から第4処理量を取得する。第2取得部172は第4処理量と第2処理量とを比較し、第2処理量を決定する。
図30は第2処理量の取得処理の手順を示すフローチャートである。第2取得部172は第4取得部174から出力されるVMID及び第4処理量を受け付けたか否かを判断する(ステップS301)。第2取得部172は第4取得部174から出力されるVMID及び第4処理量を受け付けていないと判断した場合(ステップS301でNO)、各OS211からVMID及びアプリケーションIDを受け付けたか否かを判断する(ステップS302)。なおアプリケーションIDは実施の形態1で述べた如く実行中のアプリケーション212の内、選択されているアプリケーション212のアプリケーションIDがOS211から第2取得部172へ出力される。
第2取得部172はVMID及びアプリケーションIDを受け付けていないと判断した場合(ステップS302でNO)、処理をステップS301へ戻す。一方、第2取得部172はVMID及び第4処理量を受け付けたと判断した場合(ステップS301でYES)、または、VMID及びアプリケーションIDを受け付けたと判断した場合(ステップS302でYES)、ステップS303へ処理を移行させる。第2取得部172は選択中のアプリケーションIDに対応する負荷量を負荷量DB156から読み出す(ステップS303)。
第2取得部172は第4取得部174から出力される第4処理量を取得する(ステップS304)。第2取得部172は第4処理量が、負荷量を超えるか否かを判断する(ステップS305)。第2取得部172は第4処理量が負荷量を超えないと判断した場合(ステップS305でNO)、ステップS303で読み出した現在選択中の負荷量を、第2処理量として取得する(ステップS306)。一方、第2取得部172は第4処理量が負荷量を超えると判断した場合(ステップS305でYES)、ステップS304で取得した第4処理量を第2処理量として取得する(ステップS307)。
第2取得部172は負荷量DB156内のステップS303におけるアプリケーションIDに対応する負荷量を、第4処理量で書き換える(ステップS308)。なお、ステップS306及びステップS307で取得した第2処理量は、第3処理量の計算のため算出部173へ出力される。図31は第2処理量の遷移を示す説明図である。1行目に示す如く、当初はアプリケーションID「A01」に係るアプリケーション212が選択されている。選択されたアプリケーション212の負荷量は「70」であり、第2処理量は「70」となる。第4処理量「40」は第2処理量「70」を超えないため、第2処理量は「70」のままである。その後、アプリケーションID「A03」に係るアプリケーション212が選択された。
アプリケーションID「A03」の負荷量は「40」であり、第2取得部172は当該負荷量「40」を第2処理量として取得する。VM2で実行されるアプリケーション212の状況により、負担が増加したことを想定する。この場合、第4取得部174から第2取得部172へ第4処理量「60」が出力される。第2取得部172は第4処理量が第2処理量を超えるか否かを判断する。本例では第4処理量「60」が第2処理量「40」を超えている。この場合、第2取得部172は第4処理量「60」を第2処理量「60」として取得する。また対応するアプリケーションID「A03」の負荷量を第4処理量と同じ「60」とする。なお、各アプリケーション212の負荷量の値は、増加するが、VM2が停止した場合、図4に示した初期の負荷量に再設定しても構わない。これにより、第4処理量が実行中のアプリケーション212の負荷量を超える場合は、第2処理量を適宜変更することで、より適切に状態を判断することが可能となる。
本実施の形態6は以上の如きであり、その他は実施の形態1乃至5と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態7
実施の形態7はVM2にて実行中の複数のアプリケーション212に基づき第2処理量を決定する形態に関する。第2取得部172は、アプリケーション212が複数実行中である場合、複数の負荷量の合計値または複数の負荷量の平均値を第2処理量として取得しても良い。その他負荷量の合計値または平均値に所定の係数を乗じた値を第2処理量として取得しても良い。本実施の形態においては複数の負荷量の合計値を第2処理量として取得する形態に関する。
図32及び図33は第2処理量の取得処理の手順を示すフローチャートである。以下の処理は各VM2に対し並行して行う。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出したか否かを判断する(ステップS320)。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出していないと判断した場合(ステップS320でNO)、以上の処理を繰り返す。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出したと判断した場合(ステップS320でYES)、少なくとも一つのアプリケーション212が実行されているか否かを判断する(ステップS321)。なお、OS211はステップS321の判断においては、負荷量DB156に記憶したアプリケーションIDに対応するアプリケーション212が少なくとも一つ起動されたか否かを判断するようにすれば良い。例えば、スタートアップにより毎回必ず起動される時刻表示用のアプリケーション212、または、負荷の小さい電卓アプリケーション212等が起動された場合、ステップS320の判断をNOとしても良い。
OS211はアプリケーション212が実行中であると判断した場合(ステップS321でYES)、VMID及び実行中のアプリケーションIDを全て第2取得部172へ出力する(ステップS322)。第2取得部172はOS211から出力されたVMID及びアプリケーションIDを受け付ける(ステップS323)。第2取得部172は各アプリケーションIDに対応する負荷量を、負荷量DB156から読み出す(ステップS324)。第2取得部172は読み出した複数の負荷量を加算することにより、合計値を算出する(ステップS325)。なお、同一のアプリケーション212において複数のウィンドウWが起動されている場合、OS211はアプリケーションID及びウィンドウWの数をステップS322で出力する。この場合第2取得部172はアプリケーションIDに対応して読み出した負荷量に、ウィンドウWの数を乗じた数を、当該アプリケーション212に係る負荷量とすればよい。その他、第2取得部172はアプリケーションIDに対応して読み出した負荷量に、ウィンドウWの数から1を減じた値と読み出した負荷量と所定の1よりも小さい係数を乗じた数を加算し、当該アプリケーション212に係る負荷量としても良い。
第2取得部172は算出した合計値を第2処理量として取得する(ステップS326)。OS211はアプリケーション212が実行中でないと判断した場合(ステップS321でNO)、VMID及び非実行情報を第2取得部172へ出力する(ステップS327)。第2取得部172はVMID及び非実行情報を受け付ける(ステップS328)。第2取得部172は負荷量を0と設定する(ステップS329)。第2取得部172は負荷量0を第2処理量として取得する(ステップS331)。ステップS331の後及びステップS326の処理の後、ステップS332へ移行する。
第2取得部172はVMIDに対応づけて第2処理量を第2ファイル152に記憶する(ステップS332)。第2取得部172は第3処理量の算出のため、VMID及び第2処理量を算出部173へ出力する(ステップS333)。これにより実行中のアプリケーション212の数に応じた状態を決定することができ、よりきめ細かくユーザにVM2の状態を提供することが可能となる。
本実施の形態7は以上の如きであり、その他は実施の形態1乃至6と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態8
実施の形態8は第5処理量を考慮して第2処理量を取得する形態に関する。図34は実施の形態8に係る物理マシン1及びVM2のハードウェア及びソフトウェアを示すブロック図である。OS211は実行中の各アプリケーション212がハードウェアリソース10を消費する割合である第5処理量を取得する。この第5処理量はアプリケーション212毎のCPU使用率、HD15の単位時間当たりに占有する割合、または、NIC16を単位時間当たりに占有する割合等である。アプリケーション212毎のCPU使用率は例えばWindows(登録商標)の場合、タスクマネージャにより取得することができる。
またHD15が単位時間当たりに占有する割合も、アプリケーション212毎のHD15に対するアクセス頻度を解析することで取得することができる。さらに、NIC16を単位時間当たりに占有する割合も、単位時間当たりのデータの送信量または受信量等に基づき取得することができる。本実施の形態においては、第5処理量はアプリケーション212毎のCPU使用率であるものとして説明する。OS211はVMID、アプリケーションID及び第5処理量を第5取得部175へ出力する。第5取得部175はVMID、アプリケーションID及び第5処理量を第2取得部172へ出力する。第2取得部172はVMID、アプリケーションID及び第5処理量、並びに、負荷量を総合的に判断して第2処理量を取得する。
図35及び図36は第2処理量の取得処理の手順を示すフローチャートである。以下の処理は各VM2に対し並行して行う。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出したか否かを判断する(ステップS351)。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出していないと判断した場合(ステップS351でNO)、以上の処理を繰り返す。OS211はコンピュータ3からアプリケーション212の起動または停止命令を検出したと判断した場合(ステップS351でYES)、少なくとも一つのアプリケーション212が実行されているか否かを判断する(ステップS352)。
OS211はアプリケーション212が実行中であると判断した場合(ステップS352でYES)、実行中の全てのアプリケーション212の第5処理量を取得する(ステップS353)。OS211は、VMID、実行中のアプリケーションID及びアプリケーション212の第5処理量を全て第5取得部175へ出力する(ステップS354)。第5取得部175は第5処理量を取得する。第5取得部175は取得したVMID、アプリケーションID及び第5処理量を第2取得部172へ出力する。
第2取得部172は第5取得部175から出力されたVMID、アプリケーションID及び第5処理量を受け付ける(ステップS355)。第2取得部172は各アプリケーションIDに対応する負荷量を、負荷量DB156から読み出す(ステップS356)。第2取得部172はステップS355で受け付けたアプリケーション212の第5処理量が、ステップS356で読み出したアプリケーション212に対応する負荷量を超えるアプリケーション212が存在するか否かを判断する(ステップS357)。
第2取得部172は第5処理量が負荷量を超えるアプリケーション212が存在すると判断した場合(ステップS357でYES)、第5処理量が負荷量を超えるアプリケーション212のアプリケーションIDを抽出する(ステップS358)。第2取得部172は、負荷量DB156内の、アプリケーションIDに対応する負荷量を第5処理量へ書き換える(ステップS359)。なお、負荷量DB156の内容は書き換えられるが、VM2が停止した場合には、図4に示す初期の負荷量に戻しても良い。
第2取得部172は第5処理量が負荷量を超えるアプリケーション212が存在しないと判断した場合(ステップS357でNO)、または、ステップS359の処理後、ステップS361へ移行する。第2取得部172は各アプリケーションIDに対応する負荷量を負荷量DB156から読み出す(ステップS361)。第2取得部172は読み出した複数の負荷量を加算することにより、合計値を算出する(ステップS362)。
第2取得部172は算出した合計値を第2処理量として取得する(ステップS3621)。なお本実施の形態においては合計値を算出する例を挙げたがこれに限るものではない。第2処理量は実行中の複数のアプリケーション212に起因するものであれば、他の取得処理であっても良い。例えば第2取得部172は読み出した複数の負荷量の平均値を第2処理量としても良い。また第2取得部172は読み出した複数の負荷量の合計値または平均値等に予め定めた係数を乗じ、乗じた後の値を第2処理量として取得しても良い。さらに、アプリケーション212に対応づけて重みを設定しておき、各アプリケーション212の負荷量にアプリケーション212毎の重みを乗じ、重みを乗じた後の各アプリケーション212の負荷量の合計値を第2処理量として取得しても良い。
OS211はアプリケーション212が実行中でないと判断した場合(ステップS352でNO)、VMID及び非実行情報を第2取得部172へ出力する(ステップS363)。第2取得部172はVMID及び非実行情報を受け付ける(ステップS364)。第2取得部172は負荷量を0と設定する(ステップS365)。第2取得部172は負荷量0を第2処理量として取得する(ステップS366)。ステップS366の後及びステップS3621の処理の後、ステップS367へ移行する。
第2取得部172はVMIDに対応づけて第2処理量を第2ファイル152に記憶する(ステップS367)。第2取得部172は第3処理量の算出のため、VMID及び第2処理量を算出部173へ出力する(ステップS368)。
図37は第2処理量の変化を示す説明図である。現在実行中のアプリケーション212は、アプリケーションIDが「A03」、「A04」及び「A06」のアプリケーション212である。そして、現在は、アプリケーションID「A03」のアプリケーション212が選択されている。各アプリケーション212の第5処理量は、それぞれ、30%、2%、40%である。負荷量の合計値は40+30+50で120となる。第2処理量は負荷量の合計値であり120となる。
ここで、アプリケーションID「A03」のアプリケーション212が終了したものとする。なお、アプリケーションID「A03」は終了したことから、「X」で表記している。負荷量の合計値は30+50で80となる。そして第2処理量は80となる。次にアプリケーションID「A04」が選択され、バックグラウンドで動作しているアプリケーションID「A06」の第5処理量が60となった。アプリケーションID「A06」の負荷量は50であることから、第5処理量が負荷量を超える。この場合、負荷量DB156内のアプリケーションID「A06」の負荷量は60に書き換えられる。そして、負荷量の合計値は30+60により90となる。最終的に第2処理量は合計値の90となる。これにより実行中のアプリケーション212の負荷に係る第5処理量に応じた状態を決定することができ、よりきめ細かくユーザにVM2の状態を提供することが可能となる。
本実施の形態8は以上の如きであり、その他は実施の形態1乃至7と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態9
図38は実施の形態9に係る物理マシン1及びVM2のハードウェア及びソフトウェアを示すブロック図である。実施の形態1乃至8に係る物理マシン1を動作させるためのプログラムは、本実施の形態9のように、読み取り部(図示せず)にCD−ROM等の可搬型記録媒体1Aを読み取らせてHD15に記憶しても良い。また、当該プログラムは、インターネット等の通信網を介して接続される他のサーバコンピュータ(図示せず)からダウンロードすることも可能である。以下に、その内容を説明する。
図38に示す物理マシン1は、第1処理量を取得等させるプログラムを、可搬型記録媒体1Aによりまたは通信網を介して他のサーバコンピュータ(図示せず)からダウンロードする。当該プログラムは、制御モジュール170としてインストールされ、RAM12にロードして実行される。これにより、上述した物理マシン1として機能する。
また上述の形態は例えばCitrix Presentation Server(登録商標)等の如く、OS211及びアプリケーション212の画面イメージをテンプレート化し、通信網を介してコンピュータ3に画面イメージを送信しても良い。また上述の実施形態においては各VM2がOS211を有する例を挙げたが必ずしも必要ではない。例えば、X Window Systemに適用した場合、各VM2には上述したOS211と同様の機能を有するモジュール170を用意しておけばよい。例えば、第2処理量決定部1721の如く、VM2のアプリケーション212の内、どのアプリケーション212が実行されているか、また、選択されているかを第2取得部172へ出力するモジュールを用意しておけばよい。その他、負荷量DB156を格納しておいても良い。
本実施の形態9は以上の如きであり、その他は実施の形態1乃至8と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
実施の形態10
図39は実施の形態10に係る状態出力システムの概要を示す模式図である。実施の形態10に係る状態出力システムは、操作環境2、情報処理装置1、通信網N及び端末装置3等を含む。情報処理装置1は例えばインターネットまたは携帯電話網等を含む通信網Nに接続されるサーバコンピュータである。以下では情報処理装置1をサーバコンピュータ1という。サーバコンピュータ1には物理的に区分けされた操作環境21、22、23、・・・(以下、場合により2で代表する)が接続されている。操作環境2は例えば、コンピュータ3の要求に応じてCGI(Common Gateway Interface)により複数のアプリケーション212を実行するアプリケーションサーバである。その他操作環境2はコンピュータ3の要求に応じてSQL(Structured Query Language)により情報の検索を行うデータベースサーバ等であっても良い。
本実施の形態においては、操作環境2はアプリケーションサーバ2であるものとして説明する。サーバコンピュータ1はアプリケーションサーバ2に対してハードウェアリソース10を適宜割り当てる。本実施の形態においてはサーバコンピュータ1内のNIC16の単位時間当たりの占有量を割り当てる。そして占有量を第1処理量であるものとして説明する。図39の円グラフに示す如くアプリケーションサーバ21には最も多くの第1処理量が割り当てられている。アプリケーションサーバ22及び23にはアプリケーションサーバ21の半分の第1処理量が割り当てられている。
アプリケーションサーバ2は、上述した実施の形態と同じく、第2処理量をサーバコンピュータ1へ出力する。サーバコンピュータ1は第1処理量及び第2処理量の差分に基づき、第3処理量を算出する。そしてサーバコンピュータ1は第2処理量及び第3処理量に基づき、状態を決定する。そして状態に対応する画像データ344を各アプリケーションサーバ2の表示部に出力する。その他、サーバコンピュータ1またはアプリケーションサーバ2は、画像データ344を、アプリケーションサーバ2を使用しているコンピュータ3へ通信網Nを介して出力する。
図40は実施の形態10に係るサーバコンピュータ1及びアプリケーションサーバ2のハードウェア及びソフトウェアを示す説明図である。上述した実施の形態に対し、仮想化レイヤ17はソフトウェアレイヤ17と変更されている。またVM2に代えてNIC16を介して接続されるアプリケーションサーバ2を示している。さらにVM管理部178に代えて通信管理部178が設けられている。他のモジュール170、各種ファイル及びハードウェアリソース10の内容は重複するため説明は省略する。サーバコンピュータ1の通信管理部178は、各アプリケーションサーバ21、22、23が、NIC16を介して送受信するデータを監視している。通信管理部178は各アプリケーションサーバ2に対しNIC16を占有する第1処理量を割り当てるほか、送受信するデータ量を監視する。
アプリケーションサーバ2はアプリケーション212に基づき変動する第2処理量を第2取得部172に出力する。アプリケーションサーバ2は複数のアプリケーション212の実行がコンピュータ3から要求されている場合、以下の処理を行う。アプリケーションサーバ2はVMIDに代えてアプリケーションサーバのIP(Internet Protocol)アドレスまたはMACアドレス、及び、アプリケーションIDを、図示しない通信部を介して第2取得部172へ出力する。なお各種処理は図示しないCPUが行う。また以下ではIPアドレスを用いる例を挙げて説明する。これにより、第2取得部172は上述した実施形態と同じく、負荷量DB156から負荷量を読み出し、第2処理量を取得する。
またアプリケーション212に基づき変動する第2処理量は以下の形態であっても良い。例えば、アプリケーションサーバ2は単一のアプリケーション212を実行する場合、以下のように処理しても良い。アプリケーションサーバ2は、複数のコンピュータ3から出力される単位時間当たりのデータ受信量、単位時間当たりのアプリケーション212の実行要求数、または、通信状態にあるコンピュータ3の数を抽出する。以下では単位時間当たりの実行要求数を例に挙げて説明する。複数のコンピュータ3から出力されるアプリケーション212を実行するための要求数が多いほど、実行中のアプリケーション212に対する負荷は高くなる。アプリケーションサーバ2はIPアドレス及び要求数をサーバコンピュータ1へ出力する。
サーバコンピュータ1の第2取得部172は要求数を受け付ける。負荷量DB156には単位時間当たりの実行要求数に応じて値が大きくなる負荷量が記憶されている。第2取得部172は実行数に対応する負荷量を第2処理量として取得する。以下は上述した実施の形態と同様の処理を行うことにより、算出部173が第3処理量を算出する。また、決定部176は第2処理量及び第3処理量等に基づいて、状態を決定する。なお、第4処理量は各アプリケーションサーバ2がNIC16を単位時間当たりに占有する量であり、第4取得部174が通信管理部178から取得する。
アプリケーションサーバ2が複数のアプリケーション212を実行中の場合、アプリケーション212を特定するためのアプリケーションID及びデータがサーバコンピュータ1を介してコンピュータ3へ送信される。第5取得部175はデータパケットのヘッダを参照し、アプリケーション212毎に単位時間あたりにNIC16を占有する割合を第5処理量として取得する。アプリケーションサーバ2が、送受信するデータを監視してアプリケーション毎の通信量を第5取得部175へ通知しても良い。決定部176は決定した状態に対応する画像データ344を各アプリケーションサーバ2へ、NIC16を介して出力する。アプリケーションサーバ2は画像データ344をアプリケーションサーバ2の表示部またはコンピュータ3へ出力する。これにより、コンピュータ3のユーザ及びアプリケーションサーバ2の管理者は、アプリケーションサーバ2の現在の状態または予測状態を把握することが可能となる。
本実施の形態10は以上の如きであり、その他は実施の形態1乃至9と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
以上の実施の形態1乃至10を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
区分けされた複数の操作環境を制御する情報処理装置に用いられるプログラムであって、
情報処理装置を、
該情報処理装置のハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得部と、
前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得部と、
前記操作環境毎に前記第1取得部により取得した第1処理量と前記第2取得部により取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出部と、
前記操作環境毎に前記算出部により算出した第3処理量及び前記第2取得部により取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力部と
して機能させるためのプログラム。
(付記2)
前記出力部は、
前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量との大小関係に応じて各操作環境の状態を出力する
付記1に記載のプログラム。
(付記3)
前記出力部は、
前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第1取得部により取得した第1処理量との大小関係に応じて各操作環境の状態を出力する
付記1に記載のプログラム。
(付記4)
各操作環境がハードウェア資源を消費する割合を示す第4処理量を取得する第4取得部をさらに機能させ、
前記出力部は、
前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量との大小関係に応じて各操作環境の状態を出力する
付記1に記載のプログラム。
(付記5)
各操作環境がハードウェア資源を消費する割合を示す第4処理量を取得する第4取得部をさらに機能させ、
前記出力部は、
前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量と前記第1取得部により取得した第1処理量との大小関係に応じて各操作環境の状態を出力する状態出力部と、
前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量と前記第1取得部により取得した第1処理量との大小関係に応じて、前記状態出力部により出力する状態より後の予測される状態を出力する予測状態出力部と
を含む付記1に記載のプログラム。
(付記6)
前記算出部は、
前記第1取得部により取得した第1処理量が前記第2取得部により取得した第2処理量よりも大きい場合に、各操作環境の第1処理量から第2処理量を減算した値の合計値を算出する合計値算出部と、
前記第2取得部により取得した第2処理量が前記第1取得部により取得した第1処理量よりも大きい操作環境に係る第1処理量を抽出する抽出部と、
前記合計値算出部により算出した合計値を前記抽出部により抽出した操作環境に係る第1処理量へ配分することにより、前記操作環境に係る第3処理量を算出する第3処理量算出部と
を含む付記1乃至5のいずれか一つに記載のプログラム。
(付記7)
前記算出部は、
前記第1取得部により取得した第1処理量が前記第2取得部により取得した第2処理量よりも大きい操作環境に係る第1処理量を前記操作環境に係る第3処理量と決定する決定部
をさらに含む付記6に記載のプログラム。
(付記8)
前記算出部は、
前記第1取得部により取得した第1処理量が前記第2取得部により取得した第2処理量よりも大きい場合に、各操作環境の第1処理量から第2処理量を減算した値の合計値を算出する合計値算出部と、
前記第2取得部により取得した第2処理量が前記第1取得部により取得した第1処理量よりも大きい場合に、各操作環境の第2処理量から第1処理量を減算した値の補助合計値を算出する補助合計値算出部と、
前記合計値算出部により算出した合計値が前記補助合計値算出部により算出した補助合計値よりも大きいか否かを判断する判断部と、
該判断部により大きくないと判断した場合に、前記第2取得部により取得した第2処理量が前記第1取得部により取得した第1処理量よりも大きい操作環境に係る第1処理量を抽出する抽出部と、
前記合計値算出部により算出した合計値を前記抽出部により抽出した操作環境に係る第1処理量へ配分することにより、前記操作環境に係る第3処理量を算出する第3処理量算出部と
を含む付記1乃至5のいずれか一つに記載のプログラム。
(付記9)
前記算出部は、
前記判断部により大きくないと判断した場合に、前記第1取得部により取得した第1処理量が前記第2取得部により取得した第2処理量よりも大きい操作環境に係る第1処理量を前記操作環境に係る第3処理量と決定する決定部
をさらに含む付記8に記載のプログラム。
(付記10)
前記判断部により大きいと判断した場合に、前記第2取得部により取得した第2処理量が前記第1取得部により取得した第1処理量よりも大きい操作環境に係る第2処理量を抽出する補助抽出部と、
該補助抽出部により抽出した操作環境に係る第2処理量を前記操作環境に係る第3処理量と決定する補助決定部と
を含む付記9に記載のプログラム。
(付記11)
区分けされた複数の操作環境を制御する情報処理装置であって、
ハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得部と、
前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得部と、
前記操作環境毎に前記第1取得部により取得した第1処理量と前記第2取得部により取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出部と、
前記操作環境毎に前記算出部により算出した第3処理量及び前記第2取得部により取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力部と
を備える情報処理装置。
(付記12)
前記出力部により出力された操作環境に係る状態に対応する画像データを記憶部から読み出す読み出し部を備え、
前記出力部は、
読み出した画像データを、前記操作環境を特定する情報に関連づけて外部へ出力する
付記11に記載の情報処理装置。
(付記13)
アプリケーションプログラムが選択された場合に、アプリケーションプログラム毎に負荷量を記憶した記憶部から、選択されたアプリケーションプログラムに対応する負荷量を読み出す負荷量読み出し部を備え、
前記第2取得部は、
前記負荷量み出し部により読み出した負荷量を第2処理量として取得する
付記11または12に記載の情報処理装置。
(付記14)
アプリケーションプログラムが選択された場合に、アプリケーションプログラム毎に負荷量を記憶した記憶部から、選択されたアプリケーションプログラムに対応する負荷量を読み出す負荷量読み出し部と、
各操作環境が前記ハードウェア資源を消費する割合を示す第4処理量を取得する第4取得部とを備え、
前記第2取得部は、
該第4取得部により取得した第4処理量が前記負荷量読み出し部により読み出した負荷量を超える場合に、前記第4処理量を第2処理量として取得し、前記第4取得部により取得した第4処理量が前記負荷量読み出し部により読み出した負荷量を超えない場合に、前記負荷量み出し部により読み出した負荷量を第2処理量として取得する
付記11または12に記載の情報処理装置。
(付記15)
アプリケーションプログラムに負荷量が記憶された記憶部から、操作環境にて実行中のアプリケーションプログラムに対応する負荷量を読み出し、読み出した負荷量の合計値を算出する合計算出部を備え、
前記第2取得部は、
前記合計算出部により算出した合計値を第2処理量として取得する
付記11または12に記載の情報処理装置。
(付記16)
アプリケーションプログラムに負荷量が記憶された記憶部から、操作環境にて実行中のアプリケーションプログラムに対応する負荷量を読み出し、読み出した負荷量の合計値を算出する合計算出部と、
操作環境にて実行中の各アプリケーションプログラムが前記ハードウェア資源を消費する割合を示す第5処理量を取得する第5取得部と、
該第5取得部により取得した実行中のアプリケーションプログラムに係る第5処理量が、前記記憶部から読み出した実行中のアプリケーションプログラムに係る負荷量を超えるか否かを判断する負荷判断部と、
該負荷判断部により負荷量を超えると判断した場合に、前記実行中のアプリケーションプログラムに係る負荷量を前記第5処理量へ書き換える書き換え部とを備え、
前記第2取得部は、
前記負荷判断部により負荷量を超えないと判断した場合、前記合計値算出部により算出した合計値を第2処理量として取得し、前記負荷判断部により負荷量を超えると判断した場合、前記書き換え部により書き換えた後の負荷量に基づき、合計算出部により算出された負荷量の合計値を第2取得部として取得する
付記11または12に記載の情報処理装置。
(付記17)
区分けされた複数の操作環境を制御する情報処理装置の状態を出力する状態出力方法であって、
前記情報処理装置のハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得ステップと、
前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得ステップと、
前記操作環境毎に前記第1取得ステップにより取得した第1処理量と前記第2取得ステップにより取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出ステップと、
前記操作環境毎に前記算出ステップにより算出した第3処理量及び前記第2取得ステップにより取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力ステップと
を含む状態出力方法。
1 物理マシン
1A 可搬型記録媒体
2、21、22、23 VM
3 コンピュータ
10 ハードウェアリソース
11 CPU
12 RAM
15 HD
16 NIC
17 仮想化レイヤ(ソフトウェアレイヤ)
18 時計部
19 電源制御部
151 第1ファイル
152 第2ファイル
153 第3ファイル
154 第4ファイル
156 負荷量DB
157 決定ファイル
158 画像データファイル
170 制御モジュール
171 第1取得部
172 第2取得部
173 算出部
174 第4取得部
175 第5取得部
176 決定部
178 VM管理部
179 起動部
1710 停止部
211 OS
212 アプリケーション
344 画像データ
N 通信網
W ウィンドウ

Claims (7)

  1. 区分けされた複数の操作環境を制御する情報処理装置に用いられるプログラムであって、
    情報処理装置を、
    該情報処理装置のハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得部と、
    前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得部と、
    前記操作環境毎に前記第1取得部により取得した第1処理量と前記第2取得部により取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出部と、
    前記操作環境毎に前記算出部により算出した第3処理量及び前記第2取得部により取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力部と
    して機能させるためのプログラム。
  2. 前記出力部は、
    前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量との大小関係に応じて各操作環境の状態を出力する
    請求項1に記載のプログラム。
  3. 前記出力部は、
    前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第1取得部により取得した第1処理量との大小関係に応じて各操作環境の状態を出力する
    請求項1に記載のプログラム。
  4. 各操作環境がハードウェア資源を消費する割合を示す第4処理量を取得する第4取得部をさらに機能させ、
    前記出力部は、
    前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量との大小関係に応じて各操作環境の状態を出力する
    請求項1に記載のプログラム。
  5. 各操作環境がハードウェア資源を消費する割合を示す第4処理量を取得する第4取得部をさらに機能させ、
    前記出力部は、
    前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量と前記第1取得部により取得した第1処理量との大小関係に応じて各操作環境の状態を出力する状態出力部と、
    前記操作環境毎に前記算出部により算出した第3処理量と前記第2取得部により取得した第2処理量と前記第4取得部により取得した第4処理量と前記第1取得部により取得した第1処理量との大小関係に応じて、前記状態出力部により出力する状態より後の予測される状態を出力する予測状態出力部と
    を含む請求項1に記載のプログラム。
  6. 区分けされた複数の操作環境を制御する情報処理装置であって、
    ハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得部と、
    前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得部と、
    前記操作環境毎に前記第1取得部により取得した第1処理量と前記第2取得部により取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出部と、
    前記操作環境毎に前記算出部により算出した第3処理量及び前記第2取得部により取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力部と
    を備える情報処理装置。
  7. 区分けされた複数の操作環境を制御する情報処理装置の状態を出力する状態出力方法であって、
    前記情報処理装置のハードウェア資源に対する操作環境毎の割当量を示す第1処理量を取得する第1取得ステップと、
    前記操作環境にて実行されるアプリケーションプログラムに基づき変動する第2処理量を取得する第2取得ステップと、
    前記操作環境毎に前記第1取得ステップにより取得した第1処理量と前記第2取得ステップにより取得した第2処理量との差分に基づき、前記操作環境毎に第3処理量を算出する算出ステップと、
    前記操作環境毎に前記算出ステップにより算出した第3処理量及び前記第2取得ステップにより取得した第2処理量に基づき、前記操作環境毎の状態を出力する出力ステップと
    を含む状態出力方法。
JP2009082524A 2009-03-30 2009-03-30 プログラム、情報処理装置及び状態出力方法 Expired - Fee Related JP5347648B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009082524A JP5347648B2 (ja) 2009-03-30 2009-03-30 プログラム、情報処理装置及び状態出力方法
US12/729,813 US20100251254A1 (en) 2009-03-30 2010-03-23 Information processing apparatus, storage medium, and state output method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009082524A JP5347648B2 (ja) 2009-03-30 2009-03-30 プログラム、情報処理装置及び状態出力方法

Publications (2)

Publication Number Publication Date
JP2010237787A true JP2010237787A (ja) 2010-10-21
JP5347648B2 JP5347648B2 (ja) 2013-11-20

Family

ID=42785938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009082524A Expired - Fee Related JP5347648B2 (ja) 2009-03-30 2009-03-30 プログラム、情報処理装置及び状態出力方法

Country Status (2)

Country Link
US (1) US20100251254A1 (ja)
JP (1) JP5347648B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012161146A1 (ja) * 2011-05-24 2012-11-29 インテリジェントウイルパワー株式会社 バーチャルマシン提供システム
WO2012161147A1 (ja) * 2011-05-24 2012-11-29 インテリジェントウイルパワー株式会社 バーチャルマシン提供システム
JP2015172964A (ja) * 2015-05-25 2015-10-01 インテリジェントウィルパワー株式会社 バーチャルマシン提供システム
US9223636B2 (en) 2013-01-08 2015-12-29 International Business Machines Corporation Low-risk server consolidation
US9804893B2 (en) 2011-04-08 2017-10-31 Qualcomm Incorporated Method and apparatus for optimized execution using resource utilization maps
JP2018195203A (ja) * 2017-05-19 2018-12-06 ヤフー株式会社 情報処理装置、情報処理システム、情報処理方法、情報処理プログラム
WO2022102384A1 (ja) * 2020-11-13 2022-05-19 住友電装株式会社 車載ecu、プログラム、及び情報処理方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7607147B1 (en) 1996-12-11 2009-10-20 The Nielsen Company (Us), Llc Interactive service device metering systems
US7239981B2 (en) 2002-07-26 2007-07-03 Arbitron Inc. Systems and methods for gathering audience measurement data
WO2007038470A2 (en) 2005-09-26 2007-04-05 Nielsen Media Research, Inc. Methods and apparatus for metering computer-based media presentation
US9124769B2 (en) 2008-10-31 2015-09-01 The Nielsen Company (Us), Llc Methods and apparatus to verify presentation of media content
US8504686B2 (en) * 2009-11-02 2013-08-06 InMon Corp. Method and apparatus for combining data associated with hardware resources and network traffic
JP5728249B2 (ja) 2011-02-25 2015-06-03 任天堂株式会社 情報処理システム、情報処理装置、情報処理プログラム、および、情報処理方法
JP5707171B2 (ja) 2011-02-25 2015-04-22 任天堂株式会社 通信制御装置、通信制御プログラム、通信制御方法、および、情報処理システム
EP2506146B1 (en) * 2011-03-31 2019-03-13 Orange System and method for activating, managing and deactivating a plurality of virtual machines on a user device
JP2018116462A (ja) * 2017-01-18 2018-07-26 株式会社東芝 仮想環境実行装置及びプログラム
CN108009077A (zh) * 2017-11-30 2018-05-08 三盟科技股份有限公司 一种基于大数据环境的业务运行状态评估算法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018560A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 命令プロセッサ割り当てスケジューリング方法、該命令プロセッサ割り当てスケジューリング方法を実現する計算機システムおよびそのためのプログラム
JP2008041100A (ja) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> データ処理システムにおけるリソース共有とアプリケーション待ち時間のバランシング方法
JP2008293283A (ja) * 2007-05-24 2008-12-04 Hitachi Information Systems Ltd コンピュータリソース管理支援システム

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2682770B2 (ja) * 1992-05-15 1997-11-26 富士通株式会社 仮想計算機システムのcpu制御方式
JP3658420B2 (ja) * 1994-04-14 2005-06-08 株式会社日立製作所 分散処理システム
US6601084B1 (en) * 1997-12-19 2003-07-29 Avaya Technology Corp. Dynamic load balancer for multiple network servers
US6408393B1 (en) * 1998-01-09 2002-06-18 Hitachi, Ltd. CPU power adjustment method
US6470464B2 (en) * 1999-02-23 2002-10-22 International Business Machines Corporation System and method for predicting computer system performance and for making recommendations for improving its performance
JP4475614B2 (ja) * 2000-04-28 2010-06-09 大正製薬株式会社 並列処理方法におけるジョブの割り当て方法および並列処理方法
US7231445B1 (en) * 2000-11-16 2007-06-12 Nortel Networks Limited Technique for adaptively distributing web server requests
US6980521B1 (en) * 2000-11-29 2005-12-27 Cisco Technology, Inc. Method and apparatus for per session load balancing with improved load sharing in a packet switched network
JP2002202959A (ja) * 2000-12-28 2002-07-19 Hitachi Ltd 動的な資源分配をする仮想計算機システム
JP3716753B2 (ja) * 2001-03-21 2005-11-16 日本電気株式会社 マルチプロセッサ構成の計算機間におけるトランザクション負荷分散方法及び方式並びにプログラム
JP2002342097A (ja) * 2001-05-17 2002-11-29 Matsushita Electric Ind Co Ltd タスク割当可能時間決定装置及びタスク割当可能時間決定方法
US7305674B2 (en) * 2001-08-31 2007-12-04 International Business Machines Corporation Method and apparatus to manage multi-computer supply
US7694303B2 (en) * 2001-09-25 2010-04-06 Sun Microsystems, Inc. Method for dynamic optimization of multiplexed resource partitions
JP4018900B2 (ja) * 2001-11-22 2007-12-05 株式会社日立製作所 仮想計算機システム及びプログラム
US7382782B1 (en) * 2002-04-12 2008-06-03 Juniper Networks, Inc. Packet spraying for load balancing across multiple packet processors
US7254812B1 (en) * 2002-05-31 2007-08-07 Advanced Micro Devices, Inc. Multi-processor task scheduling
US20040025162A1 (en) * 2002-07-31 2004-02-05 Fisk David C. Data storage management system and method
JP4119239B2 (ja) * 2002-12-20 2008-07-16 株式会社日立製作所 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム
JP4318914B2 (ja) * 2002-12-26 2009-08-26 富士通株式会社 ストレージシステム及びその動的負荷管理方法
US7290260B2 (en) * 2003-02-20 2007-10-30 International Business Machines Corporation Dynamic processor redistribution between partitions in a computing system
DE10313318A1 (de) * 2003-03-25 2004-10-21 Giesecke & Devrient Gmbh Kontrollierte Ausführung eines für eine virtuelle Maschine vorgesehenen Programms auf einem tragbaren Datenträger
JP4597488B2 (ja) * 2003-03-31 2010-12-15 株式会社日立製作所 プログラム配置方法及びその実施システム並びにその処理プログラム
JP2005031771A (ja) * 2003-07-08 2005-02-03 Hitachi Ltd ジョブスケジューリング管理方法及びシステム並びにプログラム
EP1505502B1 (en) * 2003-08-08 2012-03-21 Sap Ag A method of assigning objects to processing units
EP1533699B1 (en) * 2003-11-21 2012-08-08 Sap Ag A method of assigning objects to processing units
US7383548B2 (en) * 2003-11-28 2008-06-03 Nortel Networks Limited CPU usage regulation
ES2585178T3 (es) * 2003-12-18 2016-10-04 G-Cluster Global Corporation Sistema servidor/cliente, dispositivo de distribución de carga, procedimiento de distribución de carga y programa de distribución de carga
JP4203001B2 (ja) * 2004-01-28 2008-12-24 株式会社東芝 並列計算方法、並列計算プログラム及び計算機
ATE386978T1 (de) * 2004-02-10 2008-03-15 Sap Ag Verfahren zur neuverteilung von objekten an recheneinheiten
US7735086B2 (en) * 2004-02-27 2010-06-08 International Business Machines Corporation Methods and arrangements for planning and scheduling change management requests in computing systems
US7584476B2 (en) * 2004-03-04 2009-09-01 International Business Machines Corporation Mechanism for reducing remote memory accesses to shared data in a multi-nodal computer system
EP1626339B1 (en) * 2004-08-13 2016-02-24 Sap Se Data processing system and method for assigning objects to processing units
US20060112388A1 (en) * 2004-11-22 2006-05-25 Masaaki Taniguchi Method for dynamic scheduling in a distributed environment
US20060250977A1 (en) * 2005-05-04 2006-11-09 International Business Machines Corporation Method and apparatus for determining data center resource availablilty using multiple time domain segments
US7877755B2 (en) * 2005-07-25 2011-01-25 International Business Machines Corporation Dynamic application placement with allocation restrictions and even load distribution
JP4519098B2 (ja) * 2006-03-30 2010-08-04 株式会社日立製作所 計算機の管理方法、計算機システム、及び管理プログラム
EP1939741A3 (en) * 2006-11-17 2009-10-07 Fujitsu Ltd. Resource management apparatus and radio network controller
JP4871174B2 (ja) * 2007-03-09 2012-02-08 株式会社日立製作所 仮想計算機システム
US8291411B2 (en) * 2007-05-21 2012-10-16 International Business Machines Corporation Dynamic placement of virtual machines for managing violations of service level agreements (SLAs)
JP4980792B2 (ja) * 2007-05-22 2012-07-18 株式会社日立製作所 仮想計算機の性能監視方法及びその方法を用いた装置
EP2177993A4 (en) * 2007-07-10 2011-01-12 Nec Corp COMPUTER SYSTEM, MANAGEMENT DEVICE, AND METHOD OF MANAGING COMPUTER SYSTEM
JP2009020692A (ja) * 2007-07-11 2009-01-29 Toshiba Corp タスク管理装置、タスク管理方法及びタスク管理プログラム
US7930573B2 (en) * 2007-09-18 2011-04-19 International Business Machines Corporation Workload apportionment according to mean and variance
WO2009108344A1 (en) * 2008-02-29 2009-09-03 Vkernel Corporation Method, system and apparatus for managing, modeling, predicting, allocating and utilizing resources and bottlenecks in a computer network
US8184335B2 (en) * 2008-03-25 2012-05-22 Xerox Corporation Method for ad-hoc parallel processing in a distributed environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018560A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 命令プロセッサ割り当てスケジューリング方法、該命令プロセッサ割り当てスケジューリング方法を実現する計算機システムおよびそのためのプログラム
JP2008041100A (ja) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> データ処理システムにおけるリソース共有とアプリケーション待ち時間のバランシング方法
JP2008293283A (ja) * 2007-05-24 2008-12-04 Hitachi Information Systems Ltd コンピュータリソース管理支援システム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9804893B2 (en) 2011-04-08 2017-10-31 Qualcomm Incorporated Method and apparatus for optimized execution using resource utilization maps
US10592292B2 (en) 2011-04-08 2020-03-17 Qualcomm Incorporated Method and apparatus for optimized execution using resource utilization maps
WO2012161146A1 (ja) * 2011-05-24 2012-11-29 インテリジェントウイルパワー株式会社 バーチャルマシン提供システム
WO2012161147A1 (ja) * 2011-05-24 2012-11-29 インテリジェントウイルパワー株式会社 バーチャルマシン提供システム
JP2012243254A (ja) * 2011-05-24 2012-12-10 Intelligent Willpower Corp バーチャルマシン提供システム
JP2012243255A (ja) * 2011-05-24 2012-12-10 Intelligent Willpower Corp バーチャルマシン提供システム
US9223636B2 (en) 2013-01-08 2015-12-29 International Business Machines Corporation Low-risk server consolidation
JP2015172964A (ja) * 2015-05-25 2015-10-01 インテリジェントウィルパワー株式会社 バーチャルマシン提供システム
JP2018195203A (ja) * 2017-05-19 2018-12-06 ヤフー株式会社 情報処理装置、情報処理システム、情報処理方法、情報処理プログラム
JP7085311B2 (ja) 2017-05-19 2022-06-16 ヤフー株式会社 情報処理装置、情報処理システム、情報処理方法、情報処理プログラム
WO2022102384A1 (ja) * 2020-11-13 2022-05-19 住友電装株式会社 車載ecu、プログラム、及び情報処理方法
JP7463947B2 (ja) 2020-11-13 2024-04-09 住友電装株式会社 車載ecu、プログラム、及び情報処理方法

Also Published As

Publication number Publication date
JP5347648B2 (ja) 2013-11-20
US20100251254A1 (en) 2010-09-30

Similar Documents

Publication Publication Date Title
JP5347648B2 (ja) プログラム、情報処理装置及び状態出力方法
US8769548B2 (en) Media player instance managed resource reduction
US8701108B2 (en) Apparatus and method for controlling live-migrations of a plurality of virtual machines
US10547682B2 (en) Dynamically scaling application components using microservices
US8694638B2 (en) Selecting a host from a host cluster to run a virtual machine
US10425349B2 (en) Idle worker-process page-out
US7793297B2 (en) Intelligent resource provisioning based on on-demand weight calculation
US20130067381A1 (en) Resource user interface
CN103428251B (zh) 一种下载任务分配方法和装置
CN109614227B (zh) 任务资源调配方法、装置、电子设备及计算机可读介质
US20150220368A1 (en) Data and state threading for virtualized partition management
US9342342B2 (en) Refreshing memory topology in virtual machine operating systems
KR20200122364A (ko) 자원 스케줄링 방법 및 단말 장치
US11436231B2 (en) Continuous query scheduling and splitting in a cluster-based data storage system
US11831410B2 (en) Intelligent serverless function scaling
CN115373835A (zh) Flink集群的任务资源调整方法、装置及电子设备
US7386745B2 (en) Enabling a client device in a client device/data center environment to resume from a sleep state more quickly
CN110580195B (zh) 一种基于内存热插拔的内存分配方法和装置
CN114968567A (zh) 用于分配计算节点的计算资源的方法、装置和介质
CN114564313A (zh) 负载调整方法、装置、电子设备及存储介质
CN104717269A (zh) 用于位置服务的云公共平台计算机资源监控和调度方法
CN113204425B (zh) 供进程管理内部线程的方法、装置、电子设备及存储介质
CN114146406A (zh) 运算资源分配的方法、装置、电子设备和存储介质
CN113515355A (zh) 资源调度方法、装置、服务器及计算机可读存储介质
CN114579250A (zh) 一种构建虚拟集群的方法、装置及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130717

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: 20130723

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130805

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