(57)【要約】【課題】要素名と要素値の組からなる構成データの作成、編集に要する手間を削減する。【解決手段】所定の要素に関して要素名と要素値の組を記載した構成データファイルを格納するファイル格納部１２０と、このファイル格納部１２０に格納されている所定の構成データファイルおよび演算方法を指定した構成データの作成指示を受け付ける受け付け部１１０と、作成指示により指定された構成データファイルをファイル格納部１２０から読み出し、作成指示により指定された演算方法にしたがって構成データファイルの要素ごとに要素値に対する演算を行い、個々の要素に関して構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データファイルを作成する演算部１３０と、この演算部１３０により作成された新たな構成データを出力する出力部１５０とを備える。
2009044876.tif 000002
【特許請求の範囲】
【請求項１】
所定の要素に関して要素名と要素値の組を記載した構成データファイルを格納するファイル格納部と、
前記ファイル格納部に格納されている所定の構成データファイルおよび演算方法を指定した構成データの作成指示を受け付ける受け付け部と、
前記作成指示により指定された前記構成データファイルを前記ファイル格納部から読み出し、前記作成指示により指定された演算方法にしたがって当該構成データファイルの要素ごとに前記要素値に対する演算を行い、個々の要素に関して当該構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データファイルを作成する演算部と、
前記演算部により作成された新たな構成データを出力する出力部と
を備えることを特徴とするシステム。
【請求項２】
前記演算方法ごとに前記構成データファイルの個々の要素に対して行う演算の内容を登録したテーブルを格納したテーブル格納部をさらに備え、
前記演算部は、前記テーブル格納部に格納された前記テーブルから前記作成指示により指定された演算方法を参照し、前記構成データファイルの各要素に対して、当該テーブルに登録されている演算を行うことを特徴とする請求項１に記載のシステム。
【請求項３】
前記受け付け部は、複数の前記構成データファイルを指定し、演算方法として当該構成データファイルの結合方法を指定した前記作成指示を受け付け、
前記演算部は、前記構成データファイルの対応する前記要素どうしの前記要素値を前記結合方法にしたがって結合し、単一の前記新たな構成データを作成することを特徴とする請求項１に記載のシステム。
【請求項４】
前記受け付け部は、所定の前記構成データファイルを指定し、演算方法として乗算および数値を指定した前記作成指示を受け付け、
前記演算部は、前記構成データファイルの数値データである前記要素の前記要素値に対して前記作成指示において指定された前記数値を乗算し、単一の前記新たな構成データを作成することを特徴とする請求項１に記載のシステム。
【請求項５】
前記出力部によって出力された新たな構成データを、ファイル格納部に格納することを特徴とする請求項１に記載のシステム。
【請求項６】
コンピュータの資源を複数の論理パーティションに分割して動作制御する制御部をさらに備え、
前記構成データファイルは、前記コンピュータの論理パーティションの属性を要素として記載し、
前記出力部は、前記演算部により作成された前記新たな構成データを前記制御部に送信し、
前記制御部は、前記出力部から受信した前記新たな構成データに基づいて新たな論理パーティションを作成し、前記コンピュータを動作させることを特徴とする請求項１に記載のシステム。
【請求項７】
前記受け付け部は、前記コンピュータの全ての資源の指定および所定の演算方法の指定を含む前記作成指示を受け付け、
前記演算部は、前記コンピュータの全ての資源を使用する論理パーティションの構成データファイルを用いて前記所定の演算方法にしたがって演算を行い、単一の前記新たな構成データを作成することを特徴とする請求項６に記載のシステム。
【請求項８】
コンピュータの資源を複数の論理パーティションに分割して動作制御するための当該論理パーティションを作成する方法であって、
前記論理パーティションの属性を要素として当該要素における要素名と要素値の組を記載した構成データファイルおよび演算方法を指定した構成データの作成指示を受け付けるステップと、
既に存在する論理パーティションの前記構成データファイルを格納した記憶手段から前記作成指示により指定された前記構成データファイルを読み出すステップと、
前記作成指示により指定された演算方法にしたがって、読み出された前記構成データファイルの要素ごとに前記要素値に対する演算を行い、個々の要素に関して当該構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データを作成するステップと、
作成された新たな構成データに基づいて前記コンピュータの制御手段が新たな論理パーティションを作成するステップと
を含むことを特徴とする方法。
【請求項９】
前記新たな構成データを作成するステップでは、所定の記憶手段に記憶された、前記演算方法ごとに前記構成データファイルの個々の要素に対して行う演算の内容を登録したテーブルから前記作成指示により指定された演算方法を参照し、前記構成データファイルの各要素に対して、当該テーブルに登録されている演算が行われることを特徴とする請求項８に記載の方法。
【請求項１０】
前記作成指示を受け付けるステップでは、複数の前記構成データファイルを指定し、演算方法として当該構成データファイルの結合方法を指定した前記作成指示を受け付け、
前記新たな構成データを作成するステップでは、前記構成データファイルの対応する前記要素どうしの前記要素値を前記結合方法にしたがって結合し、単一の前記新たな構成データを作成することを特徴とする請求項８に記載の方法。
【請求項１１】
前記作成指示を受け付けるステップでは、所定の前記構成データファイルを指定し、演算方法として乗算および数値を指定した前記作成指示を受け付け、
前記新たな構成データを作成するステップでは、前記構成データファイルの数値データである前記要素の前記要素値に対して前記作成指示において指定された前記数値を乗算し、単一の前記新たな構成データを作成することを特徴とする請求項８に記載の方法。
【請求項１２】
前記作成指示を受け付けるステップでは、前記コンピュータの全ての資源の指定および所定の演算方法の指定を含む前記作成指示を受け付け、
前記新たな構成データを作成するステップでは、前記コンピュータの全ての資源を使用する論理パーティションの構成データを用いて前記所定の演算方法にしたがって演算を行い、単一の前記新たな構成データを作成することを特徴とする請求項８に記載の方法。
【請求項１３】
コンピュータに、
制御対象である被制御コンピュータの資源を複数の論理パーティションに分割して動作制御するための当該論理パーティションの属性を要素として、当該要素における要素名と要素値の組を記載した構成データファイル、および演算方法を指定した、構成データの作成指示を受け付け、既に存在する論理パーティションの前記構成データファイルを格納した記憶手段から前記作成指示により指定された前記構成データファイルを読み出す処理と、
前記作成指示により指定された演算方法にしたがって、読み出された前記構成データファイルの要素ごとに前記要素値に対する演算を行い、個々の要素に関して当該構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データを作成する処理と、
作成された新たな構成データを前記コンピュータの制御手段に送信し、当該制御手段に当該新たな構成データで定義される論理パーティションを作成させる処理と
を実行させることを特徴とするプログラム。
【請求項１４】
前記新たな構成データを作成する処理では、所定の記憶手段に記憶された、前記演算方法ごとに前記構成データファイルの個々の要素に対して行う演算の内容を登録したテーブルから前記作成指示により指定された演算方法を参照し、前記構成データファイルの各要素に対して、当該テーブルに登録されている演算が行われることを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記作成指示を受け付ける際に、前記被制御コンピュータの全ての資源の指定および所定の演算方法の指定を含む前記作成指示を受け付け、
前記新たな構成データを作成する処理では、前記コンピュータの全ての資源を使用する論理パーティションの構成データを用いて前記所定の演算方法にしたがって演算を行い、単一の前記新たな構成データを作成することを特徴とする請求項１３に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを処理するシステムに関し、特に所定の要素についての名称と値の組で構成されたデータの生成、編集を行うシステム、これを用いて論理パーティションを作成するシステムおよびその方法に関する。
【背景技術】
【０００２】
近年、コンピュータのハードウェア性能の向上を背景に、１台のコンピュータを複数の論理パーティションに分割して使用することが行われている（例えば、非特許文献１、２参照）。具体的な態様としては、ＣＰＵ（Central Processing Unit）の分割、メモリの
分割、磁気ディスク等の記憶媒体やネットワークインターフェイス等のデバイスの分割等が行われる。【０００３】
このように複数の論理パーティションに分割された資源（リソース）は、論理パーティションごとに個別のコンピュータのように使用することが可能である。すなわち、１つのコンピュータ上で、論理パーティションごとに複数のＯＳ（Operating System）やＯＳ上で動作するアプリケーションを使用することができる。また、個々の論理パーティションで生じた障害が他の論理パーティションには影響を及ぼさない。【０００４】
論理パーティションは、一般に、その論理パーティションに与えられる属性（アトリビュート）に関して、名称（アトリビュート名）と値（アトリビュート値）の組で構成されたデータファイル（以下、構成データファイルと呼ぶ）で定義される。コンピュータに設けられたサービスプロセッサが、この構成データファイルにしたがって、ＣＰＵ、メモリ、各種デバイス等のハードウェア資源を複数の論理パーティションに分割し制御する。【０００５】
【非特許文献１】日本アイ・ビー・エム株式会社編著、「ＡＩＸ−−論理分割（ＬＰＡＲ）とＡＩＸ  ５Ｌ  Ｖ５．２」、株式会社アスキー、２００３年１１月２５日
【非特許文献２】「ｐＳｅｒｉｅｓ用ハードウェア管理コンソール  インストールおよび操作ガイド」、[online]、日本アイ・ビー・エム株式会社、[平成１９年８月７日検索]、インターネット＜URL : http://publibfi.boulder.ibm.com/epubs/pdf/a8868437.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】
アトリビュート名とアトリビュート値の組からなる構成データファイルは、論理パーティションの定義に限らず、様々なシステムで使用されている。従来、構成データファイルの作成は、人手に頼るか、人手による作業を支援するＧＵＩ（Graphical User Interface）を使って行われていた。しかし、指定されるアトリビュートの数（種類）が多い場合、作業は手間のかかるものだった。【０００７】
例えば、ＩＢＭ  Ｓｙｓｔｅｍ  ｐＳｅｒｉｅｓのコンピュータ上で、所定のツールを用いて論理パーティションを作成する際には、その論理パーティションを定義する構成データファイルを指定する必要がある。この構成データファイルは、例えば、以下のような多数のアトリビュートから成るものであり、作成は容易ではなかった。
name=rpa_11,lpar_id=11,profile_name=p1_rpa11,lpar_type=aixlinux,min_mem=128,desired_mem=256,max_mem=256,min_procs=1,desired_procs=1,max_procs=1, sharing_mode=share_idle_procs, proc_mode=ded, auto_start=1, io_slots="21030076/65535/1, 21040076/65535/1", max_virtual_slots=10
【０００８】
本発明は、以上の課題に鑑みてなされたものであり、その目的は、要素名（アトリビュート名）と要素値（アトリビュート値）の組からなる構成データファイルの作成、編集に要する手間を削減できるシステムを提供することにある。
また、本発明の他の目的は、コンピュータの資源を複数の論理パーティションに分割する場合等に、論理パーティションを定義する構成データの作成を容易にすることにある。
【課題を解決するための手段】
【０００９】
上記の目的を達成するため、本発明は、次のようなシステムとして構成される。このシステムは、所定の要素に関して要素名と要素値の組を記載した構成データファイルを格納するファイル格納部と、このファイル格納部に格納されている所定の構成データファイルおよび演算方法を指定した構成データの作成指示を受け付ける受け付け部と、作成指示により指定された構成データファイルをファイル格納部から読み出し、作成指示により指定された演算方法にしたがって構成データファイルの要素ごとに要素値に対する演算を行い、個々の要素に関して構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データを作成する演算部と、この演算部により作成された新たな構成データを出力する出力部とを備える。この出力された新たな構成データは、新たな構成データファイルとしてファイルに格納することも可能であり、また、ファイルに格納せずに他のシステムへ転送するような利用方法も可能である。【００１０】
好ましくは、このシステムは、演算方法ごとに構成データファイルの個々の要素に対して行う演算の内容を登録したテーブルを格納したテーブル格納部をさらに備え、演算部は、テーブル格納部に格納されたテーブルから作成指示により指定された演算方法を参照し、構成データファイルの各要素に対して、テーブルに登録されている演算を行う。【００１１】
さらにこのシステムは、コンピュータの資源を複数の論理パーティションに分割して動作制御する制御部をさらに備え、構成データファイルは、コンピュータの論理パーティションの属性を要素として記載し、出力部は、演算部により作成された新たな構成データを前記制御部に送信し、制御部は、出力部から受信した新たな構成データに基づいて新たな論理パーティションを作成し、コンピュータを動作させる構成としても良い。【００１２】
また本発明は、次のような方法としても実現される。この方法は、コンピュータの資源を複数の論理パーティションに分割して動作制御するための当該論理パーティションを作成する方法であって、論理パーティションの属性を要素として要素名と要素値の組を記載した構成データファイルおよび演算方法を指定した構成データの作成指示を受け付けるステップと、既に存在する論理パーティションの構成データファイルを格納した記憶手段から作成指示により指定された構成データファイルを読み出すステップと、作成指示により指定された演算方法にしたがって、読み出された構成データファイルの要素ごとに要素値に対する演算を行い、個々の要素に関して構成データファイルと同一の要素名と要素値の演算結果とを組にして記載した新たな構成データを作成するステップと、作成された新たな構成データに基づいてコンピュータの制御手段が新たな論理パーティションを作成するステップとを含む。【００１３】
さらに本発明は、コンピュータを制御して上述したシステムの各機能を実現するプログラム、またはコンピュータに上記の方法における各ステップに対応する処理を実行させるプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
【発明の効果】
【００１４】
以上のように構成された本発明によれば、既存の構成データファイルを利用して、新たな構成データファイルの作成、編集に要する手間を削減することができる。
またコンピュータの論理パーティションを定義する構成データファイルの作成に本発明を適用すれば、既存の論理パーティションの構成データファイルを用いて、新たな論理パーティションの作成を容易にすることができる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。
＜システム構成＞
図１は、本実施形態によるデータ処理システムの機能構成を示す図である。
図１に示すデータ処理システム１００は、構成データファイルの作成指示を受け付ける受け付け部１１０と、構成データファイルを保持するファイル格納部１２０とを備える。また、データ処理システム１００は、構成データファイルを作成するための演算部１３０と、演算部１３０の処理に用いられる演算テーブル格納部１４０と、作成された構成データを出力する出力部１５０とを備える。【００１６】
受け付け部１１０は、ユーザによる構成データの作成指示の入力を受け付けて、演算部１３０に送る。本実施形態では、既に存在する構成データファイルを利用して新たな構成データを作成する。したがって、構成データファイルの作成指示には、演算の基礎となる既存の構成データファイルと演算方法を指定する情報が含まれる。【００１７】
ファイル格納部１２０は、構成データファイルを格納し保持する。ファイル格納部１２０に保持されている構成データファイルは、演算部１３０が新たな構成データを作成するために使用される。また、演算部１３０により作成された新たな構成データをファイルに格納する場合には、ファイル格納部１２０に格納される。【００１８】
演算部１３０は、受け付け部１１０により受け付けられた構成データの作成指示に従って、新たな構成データファイルを作成する。構成データファイルの作成には、ファイル格納部１２０に格納されている既存の構成データファイルと演算テーブル格納部１４０に格納されている後述の演算テーブルとが用いられる。【００１９】
演算テーブル格納部１４０は、演算部１３０による処理に用いられる演算テーブル１４１を格納している。演算テーブル１４１には、構成データファイルを構成する要素ごとに、構成データファイル間の演算として適用する関数を検索するための「関数名」が登録されている。【００２０】
図２は演算テーブル１４１の構成例を示す図である。
図２に示す演算テーブル１４１には、例として、５種類の要素（Ａ〜Ｅ）に関して、５種類の演算（ｏｐ１〜ｏｐ５）が登録されている。演算部１３０は、この演算テーブル１４１を参照し、各要素について設定された関数（ｆｕｎｃ）を行って構成データファイルを作成する。例えば、演算ｏｐ１により構成データファイルを作成する場合、要素ＡについてはｆｕｎｃＡ１、要素ＢについてはｆｕｎｃＢ１、要素ＣについてはｆｕｎｃＣ１、というように演算を行う。各関数は、２つの引数を取り、１つの値またはエラーを返す関数であり、引数の一方が「値なし」である場合を許容する。【００２１】
この演算テーブル１４１には、それぞれの演算毎に、構成データとして許されるすべての「要素名」についてどのような関数を実行すべきかが定義されている。この「演算名」、「要素名」、「関数名」は、追加、変更が可能であり、新たな演算を追加したい場合や、構成データとして新たな要素名が追加された場合には、演算や要素名を追加したり、所定の要素についての関数を他の関数に変更したりすることができる。また、図２において、各関数は、要素の種類と演算の種類に応じて名前を付けてある（例えば、要素「Ａ」についての演算「ｏｐ１」の関数はｆｕｎｃ「Ａ１」となっている）。しかし、その関数の実体は同一であっても良い（例えば、ｆｕｎｃＡ１とｆｕｎｃＡ２の内容が同一である等）。また、処理モジュールをダイナミックにロードできる環境（例えば、米国サン・マイクロシステムズ社のＪａｖａ  ＶＭを用いた環境など）を使用することにより、ユーザ定義の関数を演算テーブル中の「関数名」として指定することも可能である。【００２２】
出力部１５０は、演算部１３０により作成された新たな構成データファイルをファイル格納部１２０に格納する。ファイル格納部１２０に格納された新たな構成データファイルは、上述したように、以後の構成データの作成において用いられる。【００２３】
図３は、データ処理システム１００を実現するのに好適なコンピュータの構成例を示す図である。
図３に示すコンピュータ１０は、演算手段であるＣＰＵ（Central Processing Unit）
１０ａと、記憶手段であるメインメモリ１０ｃおよび磁気ディスク装置（ＨＤＤ：Hard Disk Drive）１０ｇを備える。また、ネットワークを介して外部装置に接続するためのネ
ットワークインターフェイス１０ｆと、表示出力を行うためのビデオカード１０ｄおよび表示装置１０ｊと、音声出力を行うための音声機構１０ｈとを備える。さらに、キーボードやマウス等の入力デバイス１０ｉを備える。【００２４】
図３に示すように、メインメモリ１０ｃおよびビデオカード１０ｄは、システムコントローラ１０ｂを介してＣＰＵ１０ａに接続されている。また、ネットワークインターフェイス１０ｆ、磁気ディスク装置１０ｇ、音声機構１０ｈおよび入力デバイス１０ｉは、Ｉ／Ｏコントローラ１０ｅを介してシステムコントローラ１０ｂと接続されている。各構成要素は、システムバスや入出力バス等の各種のバスによって接続される。例えば、ＣＰＵ１０ａとメインメモリ１０ｃの間は、システムバスやメモリバスにより接続される。また、ＣＰＵ１０ａと磁気ディスク装置１０ｇ、ネットワークインターフェイス１０ｆ、ビデオカード１０ｄ、音声機構１０ｈ、入力デバイス１０ｉ等との間は、ＰＣＩ（Peripheral Components Interconnect）、ＰＣＩ  Ｅｘｐｒｅｓｓ、シリアルＡＴＡ（AT Attachment）、ＵＳＢ（Universal Serial Bus）、ＡＧＰ（Accelerated Graphics Port）等の入出力バスにより接続される。【００２５】
なお、図３は、本実施形態が適用されるのに好適なＰＣのハードウェア構成を例示するに過ぎず、図示の構成に限定されないことは言うまでもない。例えば、ビデオカード１０ｄを設ける代わりに、ビデオメモリのみを搭載し、ＣＰＵ１０ａにてイメージデータを処理する構成としても良い。また、音声機構１０ｈを独立した構成とせず、システムコントローラ１０ｂやＩ／Ｏコントローラ１０ｅを構成するチップセットの機能として備えるようにしても良い。また、補助記憶装置として磁気ディスク装置１０ｇの他に、各種の光学ディスクやフレキシブルディスクをメディアとするドライブを設けても良い。表示装置１０ｊとしては、主として液晶ディスプレイが用いられるが、その他、ＣＲＴディスプレイやプラズマディスプレイ等、任意の方式のディスプレイを用いて良い。【００２６】
図１に示したデータ処理システム１００において、受け付け部１１０は、例えば図３の入力デバイス１０ｉとプログラム制御されたＣＰＵ１０ａとで実現される。
ファイル格納部１２０および演算テーブル格納部１４０は、例えば図３のメインメモリ１０ｃや磁気ディスク装置１０ｇ等の記憶手段により実現される。
演算部１３０および出力部１５０は、例えば図３のプログラム制御されたＣＰＵ１０ａで実現される。受け付け部１１０、演算部１３０、出力部１５０の機能を実現するためにＣＰＵ１０ａを制御するプログラムは、例えば磁気ディスク装置１０ｇに格納されており、メインメモリ１０ｃに読み込まれ、ＣＰＵ１０ａにより実行される。【００２７】
＜データ処理システム１００の動作＞
次に、データ処理システム１００の演算部１３０の動作を説明する。
以下の説明では、構成データ中の要素と要素値を、それぞれ、アトリビュート（あるいはアトリビュート名）とアトリビュート値と呼ぶ場合がある。
図４は、演算部１３０の動作を説明するフローチャートである。
初期動作として、受け付け部１１０が構成データファイルの作成に用いる既存の構成データファイルと演算方法を指定した作成指示の入力を受け付け、演算部１３０に送られているものとする。ここでは、既存の構成データファイルとしてＦｉｌｅ１およびＦｉｌｅ２が指定され、演算方法としてｏｐ１が指定されたものとする。既存の構成データファイルは、演算テーブル１４１に登録されている各要素を備えることが期待されるが、必ずしも全ての要素に対して値を有しているとは限らない。【００２８】
演算部１３０は、構成データの作成指示を受け取ると、この作成指示において指定されたＦｉｌｅ１およびＦｉｌｅ２をファイル格納部１２０から読み出し、要素ごとに分解する（ステップ４０１）。また、新たな構成データを作成し、初期設定として要素の値を全て「値なし」にする（ステップ４０２）。【００２９】
次に、演算部１３０は、未処理の要素があるか否かを判断する（ステップ４０３）。未処理の要素があれば、この１つを選択して要素Ａｔｔｒとし、Ｆｉｌｅ１およびＦｉｌｅ２における要素Ａｔｔｒに対応する値を抽出して、それぞれｖ１、ｖ２とする（ステップ４０４）。このとき、要素Ａｔｔｒに対応する値が存在しない場合は、「値なし」とする。Ｆｉｌｅ１およびＦｉｌｅ２の両方とも「値なし」である場合は、この要素Ａｔｔｒに関して演算をすることができないので、ステップ４０３に戻り、次の未処理の要素を選択して同様の処理を行う（ステップ４０５）。【００３０】
Ｆｉｌｅ１またはＦｉｌｅ２の少なくとも一方に、要素Ａｔｔｒに対応する値（ｖ１またはｖ２）がある場合、演算部１３０は、演算テーブル１４１に登録された関数を用いて演算を行う（ステップ４０６）。演算処理中にエラーとなった場合は、異常終了としてエラー通知等の処理を行い、終了する（ステップ４０７、４０９）。【００３１】
一方、エラーとならずに演算が終了した場合は、得られた演算結果の値をステップ４０２で作成した構成データの該当する要素にセットする（ステップ４０７、４０８）。なお、エラーとならなかったものの、演算結果として値が得られなかった場合は、その要素に関しては「値なし」となる。この後、ステップ４０３に戻って未処理の要素が無くなるまで処理を繰り返す。全ての要素に関して処理が行われたならば、正常終了として処理の終了をユーザに通知し、終了する（ステップ４１０）。【００３２】
＜適用例＞
次に、本実施形態のデータ処理システム１００の具体的な適用例を説明する。ここでは、コンピュータのハードウェア資源を複数の論理パーティションに分割して使用するための制御システムにデータ処理システム１００を適用した例について説明する。【００３３】
図５は、本実施形態のデータ処理システム１００が適用されるコンピュータの制御システムの構成を示す図である。
図５において、制御システム２００および制御対象の被制御システム３００は、例えば図３に示したコンピュータ１０により実現される。制御システム２００は、図１に示したデータ処理システム１００と同様の機能を備える。また、被制御システム３００には、被制御システム３００のハードウェア資源を、実際に論理パーティションごとに独立して動作させるためのサービスプロセッサ３１０が搭載されている。この被制御システム３００の例としては、たとえばＩＢＭ  Ｓｙｓｔｅｍ  ｐＳｅｒｉｅｓのコンピュータがある。  【００３４】
制御システム２００のファイル格納部１２０には、名称と値の組で表される要素として、論理パーティションの属性（アトリビュート）を記載することにより、論理パーティションを定義する構成データファイルが格納される。すなわち、この構成データファイルは、論理パーティションのアトリビュートに関するアトリビュート名とアトリビュート値の組で構成されている。論理パーティションを定義する構成データファイルの作成は、ファイル格納部１２０に格納された既存の構成データファイルに基づいて行われる。ただし、構成データファイルの作成指示は、構成データファイルのファイル名を指定するほか、パーティション・プロファイル、アクティブな（動作中の）論理パーティションの論理パーティション名、被制御システム３００の全ての資源を対象とする「ＡＬＬ」等を指定して行うことができるものとする。ファイル名以外の「ＡＬＬ」などが指定される場合には、そのデータは既存のコマンドなどによって、その時点で被制御システム３００から収集される。また、「ＡＬＬ」が指定される場合、被制御システム３００の全ての資源を対象とする論理パーティションが想定される。そして、この論理パーティションを定義する構成データファイルと、他の既存の論理パーティションを定義する構成データファイルとを用いた演算が行われることとなる。【００３５】
構成データファイルにおけるデータの種類としては、数値データ、文字列、集合、論理値（ｔｒｕｅ／ｆａｌｓｅまたは１／０）、タイプ名等がある。数値データを取るアトリビュートの例としては、メモリサイズ（最小メモリサイズを表す「ｍｉｎ＿ｍｅｍ」、最大メモリサイズを表す「ｍａｘ＿ｍｅｍ」等）がある。文字列を取るアトリビュートの例としては、論理パーティション名「ｌｐａｒ＿ｎａｍｅ」、プロファイル名「ｐｒｏｆｉｌｅ＿ｎａｍｅ」がある。集合を取るアトリビュートの例としては、Ｉ／Ｏスロット「ｉｏ＿ｓｌｏｔ」がある。論理値を取るアトリビュートの例としては、オートスタート「ａｕｔｏ＿ｓｔａｒｔ」、全ての資源を表す「ａｌｌ＿ｒｅｓｏｕｒｃｅｓ」がある。タイプ名を取るアトリビュートの例としては、論理パーティションで動作するシステムを表す「ｌｐａｒ＿ｅｎｖ」がある。【００３６】
演算テーブル格納部１４０は、論理パーティションの作成のために用いられる演算が登録された演算テーブル１４１が格納されている。
図６は、制御システム２００の演算テーブル格納部１４０に格納された演算テーブル１４１の構成例を示す図である。
図６に示す演算テーブル１４１には、演算の種類として、「ＭＩＮ」、「ＭＡＸ」、「ＰＬＵＳ」、「＊数値」、「ＭＩＮＵＳ」の５つが登録されている。また、アトリビュートの種類として、「ｍｉｎ＿ｍｅｍ」、「ｎａｍｅ」、「ｉｏ＿ｓｌｏｔ」、「ａｕｔｏ＿ｓｔａｒｔ」、「ｌｐａｒ＿ｅｎｖ」の５つが登録されている。【００３７】
図６の演算テーブル１４１によると、例えば、構成データファイル間で演算「ＭＩＮ」を行う場合、アトリビュート「ｍｉｎ＿ｍｅｍ（数値データ）」の演算では、小さい方の値を採用する処理が行われる。また、アトリビュート「ａｕｔｏ＿ｓｔａｒｔ（論理値）」の演算ではＡＮＤ（論理積）の処理が行われる。
演算「ＰＬＵＳ」を行う場合、アトリビュート「ｎａｍｅ（文字列）」の演算では、２つの文字列を「＿ＰＬＵＳ＿」で結合した文字列が作成される。また、アトリビュート「ｌｐａｒ＿ｅｎｖ（タイプ名）」において、値が一致しない場合は、演算「ＰＬＵＳ」全体がエラーとなる。
所定の構成データファイルに関して演算「＊数値」を行う場合、アトリビュート「ｍｉｎ＿ｍｅｍ（数値データ）」の演算では、構成データファイルの現在の値に「＊数値」で指定された数値が乗算される。【００３８】
受け付け部１１０は、次のようにして使用する論理パーティションおよび演算を指定した構成データの作成指示を受け付ける。
例えば、２つの既存の論理パーティション（ｃｏｎｆｉｇＡ、ｃｏｎｆｉｇＢ）を合わせたものに相当する新たな論理パーティションを作成する場合、
ｃｏｎｆｉｇＡ＋ｃｏｎｆｉｇＢ
となる。また、論理パーティションｃｏｎｆｉｇＡが存在し、被制御システム３００の残りの資源を全て使用する論理パーティションを作成する場合、
ＡＬＬ−ｃｏｎｆｉｇＡ
となる。また、既存の論理パーティションｃｏｎｆｉｇＡに対してＣＰＵの能力やメモリの記憶容量を１．５倍使用する論理パーティションを作成する場合、
ｃｏｎｆｉｇＡ＊１．５
となる。ただし、上記の各式において、「ｃｏｎｆｉｇＡ」および「ｃｏｎｆｉｇＢ」は論理パーティションを定義する構成データファイルのファイル名である。また、「＋」は図６に示した演算テーブル１４１の演算「ＰＬＵＳ」を、「−」は同演算テーブル１４１の演算「ＭＩＮＵＳ」を、「＊１．５」は同演算テーブル１４１の演算「＊数値」を、それぞれ表す。
これにより、例えば、ＩＢＭ  Ｓｙｓｔｅｍ  ｐＳｅｒｉｅｓ上の論理パーティションを作成する場合に、従来はｍｋｓｙｓｃｆｇコマンドを使用して、
mksyscfg -r lpar -m machine1 -f configA
のように、ファイルを１つだけしか指定できなかったが、
mksyscfg -r lpar -m machine1 -f "configA + configB"
のように２つのファイルの演算を指定できるようになる。【００３９】
出力部１５０は、演算部１３０の演算結果である新たな構成データを出力する。この新たな構成データは、図５の場合にはファイル格納部１２０に格納されることなく、被制御システム３００に搭載されたサービスプロセッサ３１０に送られる。サービスプロセッサ３１０は、受け取った構成データに基づき、実際に新たな論理パーティションを作成して、被制御システム３００のハードウェア資源の使用を制御する。【００４０】
次に、具体的な計算例を示す。
次のような構成データファイルで定義される２つの論理パーティションが存在するものとする。
Ｆｉｌｅ１：name=lpar1, lpar_env=aixlinux, min_mem=128, auto_start=1
Ｆｉｌｅ２：name=lpar2, lpar_env=aixlinux, min_mem=512, auto_start=0
【００４１】
これらの構成データファイルを指定して、Ｆｉｌｅ１とＦｉｌｅ２を対象とした演算「ＭＩＮ」を行う場合、次のような演算結果が得られる。
Ｄａｔａ：name=lpar1_MIN_lpar2, lpar_env=aixlinux, min_mem=128, auto_start=0
【００４２】
演算結果のＤａｔａを参照すると、図６に示した演算テーブル１４１の通りの演算がなされている。すなわち、アトリビュートｎａｍｅは、Ｆｉｌｅ１のｌｐａｒ１とＦｉｌｅ２のｌｐａｒ２とが、「＿ＭＩＮ＿」で結合されている。また、アトリビュートｌｐａｒ＿ｅｎｖは、Ｆｉｌｅ１、２のアトリビュート値と同一である。また、アトリビュートｍｉｎ＿ｍｅｍは、Ｆｉｌｅ１、２のアトリビュート値のうち小さい方の１２８が採られている。また、アトリビュートａｕｔｏ＿ｓｔａｒｔは、Ｆｉｌｅ１、２のアトリビュート値のＡＮＤ（論理積）が取られて０となっている。【００４３】
他の計算例を示す。Ｆｉｌｅ１、２が次のように定義されているものとする。
Ｆｉｌｅ１：name=lpar1, lpar_env=aixlinux, min_mem=128, auto_start=1, io_slots=21020003/none/1,21020004/none/1
Ｆｉｌｅ２：name=lpar2, lpar_env=aixlinux, min_mem=512, auto_start=0, io_slots=21020003/none/1,21020001/none/1
【００４４】
これらの構成データファイルを指定して、Ｆｉｌｅ１とＦｉｌｅ２を対象とした演算「ＭＡＸ」を行う場合、次のような演算結果が得られる。
Ｄａｔａ：name=lpar1_MAX_lpar2, lpar_env=aixlinux, min_mem=512, auto_start=1, io_slots=21020003/none/1,21020004/none/1,21020001/none/1
【００４５】
演算結果において、アトリビュートｍｉｎ＿ｍｅｍは、Ｆｉｌｅ１、２のアトリビュート値のうち大きい方の５１２が採られている。また、アトリビュートａｕｔｏ＿ｓｔａｒｔは、Ｆｉｌｅ１、２のアトリビュート値のＯＲ（論理和）が取られて１となっている。さらに、アトリビュートｉｏ＿ｓｌｏｔは、Ｆｉｌｅ１、２のアトリビュート値の和となっている。【００４６】
一方、同じＦｉｌｅ１、２で、演算「ＭＩＮＵＳ」を行うと、次のような演算結果が得られる。
Ｄａｔａ：name=lpar1_MINUS_lpar2, lpar_env=aixlinux, min_mem=384, auto_start=0, io_slots=21020004/none/1,21020001/none/1
【００４７】
演算結果において、アトリビュートｍｉｎ＿ｍｅｍは、Ｆｉｌｅ１、２のアトリビュート値のうち大きい方から小さい方が減算され、３８４となっている。アトリビュートｉｏ＿ｓｌｏｔは、ユーザが設定した関数（ＵｓｅｒＦｕｎｃ）によって、２１０２０００４／ｎｏｎｅ／１と２１０２０００１／ｎｏｎｅ／１が採られている。【００４８】
以上、本実施形態を論理パーティションの作成に用いた例を説明したが、この他、パーティション・プロファイルやシステム・プロファイル等の作成においても本実施形態を適用することができる。また一般に、アトリビュート名とアトリビュート値の組で構成される構成データファイルの演算することによって新たな構成データを作成するために、本実施形態を適用することができる。【００４９】
本実施形態を用いることにより、既存の構成データファイルを利用して新たな構成データを容易に作成、編集することができる。これにより、構成データファイルやこれによって定義される論理パーティションの作成に要する手間を大幅に削減することができる。また一般に、アトリビュート名とアトリビュート値の組で構成される構成データファイルは、様々なシステムにおいて用いられているため、既存の構成データファイルを利用（演算）することで新たな構成データを作成できることは、それらの様々なシステムにも適用が可能である。
【図面の簡単な説明】
【００５０】
【図１】本実施形態によるデータ処理システムの機能構成を示す図である。
【図２】本実施形態における演算テーブルの構成例を示す図である。
【図３】本実施形態のデータ処理システムを実現するのに好適なコンピュータの構成例を示す図である。
【図４】本実施形態の演算部の動作を説明するフローチャートである。
【図５】本実施形態のデータ処理システムが適用されるコンピュータの制御システムの構成を示す図である。
【図６】コンピュータの制御システムに適用された演算テーブルの構成例を示す図である。
【符号の説明】
【００５１】
１００…データ処理システム、１１０…受け付け部、１２０…ファイル格納部、１３０…演算部、１４０…演算テーブル格納部、１４１…演算テーブル、１５０…出力部
【図１】
2009044876.tif 000003
【図２】
2009044876.tif 000004
【図３】
2009044876.tif 000005
【図４】
2009044876.tif 000006
【図５】
2009044876.tif 000007
【図６】
2009044876.tif 000008
【国際調査報告】
2009044876.tif 000009
2009044876.tif 000010
2009044876.tif 000011