(57)【要約】【課題】オブジェクト生成のパフォーマンスを向上させることが出来る情報処理装置、および情報処理装置の情報処理方法を提供する。【解決手段】オブジェクトの構造を定義するスキーマ情報に基づいて、オブジェクト自身の複製であるクローンを生成する複製機能を持ったオブジェクトを生成する生成手段と、オブジェクトの生成要求を受け付ける受付手段と、生成要求を受け付けたオブジェクトの複製機能が利用可能であると判断した場合、オブジェクトにクローンの生成を依頼する依頼手段と、オブジェクトが生成したクローンを、オブジェクトの生成要求元に出力する出力手段と、を備える。【選択図】図２
2010176625.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトの構造を定義するスキーマ情報に基づいて、前記オブジェクト自身の複製であるクローンを生成する複製機能を持った前記オブジェクトを生成する生成手段と、
前記オブジェクトの生成要求を受け付ける受付手段と、
生成要求を受け付けた前記オブジェクトの複製機能が利用可能であると判断した場合、前記オブジェクトに前記クローンの生成を依頼する依頼手段と、
前記オブジェクトが生成した前記クローンを、前記オブジェクトの生成要求元に出力する出力手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記オブジェクトの複製機能が利用可能か否かを示す利用情報を記憶する記憶手段をさらに備え、
前記依頼手段は、前記記憶手段に記憶された前記利用情報に従って、生成要求を受け付けた前記オブジェクトの複製機能が利用可能か否かを判断することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記生成手段は、生成要求を受け付けた前記オブジェクトの複製機能が利用可能でないと判断した場合、前記スキーマ情報に基づいて、前記オブジェクトを生成し、
前記出力手段は、前記生成手段により生成した前記オブジェクトを、前記オブジェクトの生成要求元に出力することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記受付手段は、前記スキーマ情報の変更依頼を受け付け、
前記生成手段は、前記スキーマ情報の変更依頼を受け付けた場合、前記スキーマ情報を変更するとともに、変更後の前記スキーマ情報に基づいて、前記オブジェクトを生成し、
前記依頼手段は、変更後の前記スキーマ情報に基づいて生成された前記オブジェクトの複製機能が利用可能であると判断した場合、前記オブジェクトにより生成された前記クローンをバージョンアップすることを特徴とする請求項１から３のいずれか一に記載の情報処理装置。
【請求項５】
生成手段が、オブジェクトの構造を定義するスキーマ情報に基づいて、前記オブジェクト自身の複製であるクローンを生成する複製機能を持った前記オブジェクトを生成する生成工程と、
受付手段が、前記オブジェクトの生成要求を受け付ける受付工程と、
依頼手段が、生成要求を受け付けた前記オブジェクトの複製機能が利用可能であると判断した場合、前記オブジェクトに前記クローンの生成を依頼する依頼工程と、
出力手段が、前記オブジェクトが生成した前記クローンを、前記オブジェクトの生成要求元に出力する出力工程と、
を有することを特徴とする情報処理装置の情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースを更新する技術に関し、特に、オブジェクト指向のデータベースを更新する情報処理装置、および情報処理装置の情報処理方法に関するものである。
【背景技術】
【０００２】
近年のデータベースにおいては、属性、関連、および手続きの組み合わせを１つのまとまりとしたオブジェクトを管理する、いわゆるオブジェクト指向データベース（ＯＯＤＢ：Object  Oriented  Data  Base）が主流となりつつある。
【０００３】
オブジェクト指向データベースでは、通常、オブジェクトの構造を定義するスキーマ情報が、オブジェクトと対応付けて管理されている。従って、あるオブジェクトのスキーマ情報を変更する場合、そのスキーマ情報と対応付けられたオブジェクトについても変更する必要がある。
【０００４】
例えば、特許文献１には、スキーマ情報の変更に伴う属性、関連、手続きの各変更情報を部品オブジェクトとして保持することにより、スキーマ情報と独立にオブジェクトへの属性、関連、手続きの変更を行うことを可能にして、スキーマ情報の変更を高速に行う技術が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、スキーマ情報を変更した場合、変更したスキーマ情報を元のオブジェクトに反映させる必要がある。しかしながら、上述の特許文献１の技術では、スキーマ情報の変更を高速に行うことはできるが、頻発するオブジェクトの生成処理については、一切の改善が行われていないため、オブジェクトの生成要求を受け付ける度に、スキーマ情報に基づいてオブジェクトを生成しなければならず、オブジェクトの生成要求に対して高速な処理を行うのが難しい、という課題がある。特に、組み込み機器のように、限られたＣＰＵ（Central  Processing  Unit）において、オブジェクトの生成要求に対して高速な処理を行うことは難しい。
【０００６】
本発明は、上記に鑑みてなされたものであって、オブジェクト生成のパフォーマンスを向上させることが出来る情報処理装置、および情報処理装置の情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、オブジェクトの構造を定義するスキーマ情報に基づいて、前記オブジェクト自身の複製であるクローンを生成する複製機能を持った前記オブジェクトを生成する生成手段と、前記オブジェクトの生成要求を受け付ける受付手段と、生成要求を受け付けた前記オブジェクトの複製機能が利用可能であると判断した場合、前記オブジェクトに前記クローンの生成を依頼する依頼手段と、前記オブジェクトが生成した前記クローンを、前記オブジェクトの生成要求元に出力する出力手段と、を備えたことを特徴とする。
【０００８】
また、本発明は、生成手段が、オブジェクトの構造を定義するスキーマ情報に基づいて、前記オブジェクト自身の複製であるクローンを生成する複製機能を持った前記オブジェクトを生成する生成工程と、受付手段が、前記オブジェクトの生成要求を受け付ける受付工程と、依頼手段が、生成要求を受け付けた前記オブジェクトの複製機能が利用可能であると判断した場合、前記オブジェクトに前記クローンの生成を依頼する依頼工程と、出力手段が、前記オブジェクトが生成した前記クローンを、前記オブジェクトの生成要求元に出力する出力工程と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、スキーマ情報に基づいてオブジェクトを構築する必要がなくなるので、オブジェクト生成のパフォーマンスを向上させることができる、という効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施の形態にかかるＰＣのハードウェア構成を示すブロック図である。
【図２】図２は、ＰＣの機能構成を示すブロック図である。
【図３】図３は、クローン管理部が記憶する利用情報の一例を示す図である。
【図４】図４は、クローン生成処理の概略を示す図である。
【図５】図５は、オブジェクトの生成処理および利用情報の登録処理の手順を示すシーケンス図である。
【図６】図６は、クローンの生成処理の手順を示すシーケンス図である。
【図７】図７は、スキーマ情報の変更処理の手順を示すシーケンス図である。
【図８】図８は、図２に示す各部を複数のＶＭが連携する環境において実現した例を示す図である。
【図９】図９は、ＭＶＭにおける従来のオブジェクト生成処理の手順を示すシーケンス図である。
【図１０】図１０は、第２実施の形態にかかるＭＶＭにおけるオブジェクト生成処理の手順を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、この発明にかかる情報処理装置、および情報処理装置の情報処理方法の最良な実施の形態を詳細に説明する。以下の実施の形態では、本発明の情報処理装置をパーソナルコンピュータ（ＰＣ）に適用した例を示す。但し、ＰＣに限られず、サーバなど、データベースに記憶されるオブジェクトの管理を行うものであれば、本発明を適用することができる。
【００１２】
（第１実施の形態）
図１は、本実施の形態にかかるＰＣのハードウェア構成を示すブロック図である。本実施の形態にかかるＰＣ１は、コンピュータの主要部であって各部を集中的に制御するＣＰＵ（Central  Processing  Unit）２を備えている。このＣＰＵ２には、ＢＩＯＳなどを記憶した読出し専用メモリであるＲＯＭ（Read  Only  Memory）３と、各種データを書換え可能に記憶するＲＡＭ（Random  Access  Memory）４とがバス５で接続されている。
【００１３】
さらにバス５には、各種のプログラム等を格納するＨＤＤ（Hard  Disk  Drive）６と、配布されたプログラムであるコンピュータソフトウェアを読み取るための機構としてＣＤ（Compact  Disc）−ＲＯＭ７を読み取るＣＤ−ＲＯＭドライブ８と、ＰＣ１とネットワーク９との通信を司る通信制御装置１０と、各種操作指示を行うキーボードやマウスなどの入力装置１１と、各種情報を表示するＣＲＴ（Cathode  Ray  Tube）、ＬＣＤ（Liquid  Crystal  Display）などの表示装置１２とが、図示しないＩ／Ｏを介して接続されている。
【００１４】
ＲＡＭ４は、各種データを書換え可能に記憶する性質を有していることから、ＣＰＵ２の作業エリアとして機能してバッファ等の役割を果たす。
【００１５】
ＣＤ−ＲＯＭ７は、この発明の記憶媒体を実施するものであり、ＯＳ（Operating  System）や各種のプログラムが記憶されている。ＣＰＵ２は、ＣＤ−ＲＯＭ７に記憶されているプログラムをＣＤ−ＲＯＭドライブ８で読み取り、ＨＤＤ６にインストールする。
【００１６】
なお、記憶媒体としては、ＣＤ−ＲＯＭ７のみならず、ＤＶＤなどの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク等、半導体メモリ等の各種方式のメディアを用いることができる。また、通信制御装置１０を介してインターネットなどのネットワーク９からプログラムをダウンロードし、ＨＤＤ６にインストールするようにしても良い。この場合に、送信側のサーバでプログラムを記憶している記憶装置も、この発明の記憶媒体である。なお、プログラムは、所定のＯＳ上で動作するものであっても良いし、その場合に後述する各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであっても良い。
【００１７】
このシステム全体の動作を制御するＣＰＵ２は、このシステムの主記憶装置として使用されるＨＤＤ６上にロードされたプログラムに基づいて各種処理を実行する。
【００１８】
次に、ＰＣ１のＨＤＤ６にインストールされている各種のプログラムがＣＰＵ２に実行させる機能のうち、本実施の形態にかかるＰＣ１が備える特長的な機能について説明する。
【００１９】
図２は、ＰＣの機能構成を示すブロック図である。図２に示すように、本実施の形態にかかるＰＣ１は、オブジェクト生成プログラムに従うことにより、スキーマ管理部２０１、要求受付部２０２、およびクローン管理部２０３を実現する。
【００２０】
スキーマ管理部２０１は、オブジェクトの構造を定義するスキーマ情報に基づいて、オブジェクト自身の複製であるクローンを生成する複製機能を持ったオブジェクトを生成するものである。また、スキーマ管理部２０１は、スキーマ情報の変更依頼が発生した場合に、オブジェクト指向データベースにおいてオブジェクトと対応付けて記憶されるスキーマ情報を変更する。さらに、スキーマ管理部２０１は、スキーマ情報が変更される毎に、変更後のスキーマ情報に基づいて、オブジェクトを生成する。さらに、スキーマ管理部２０１は、後述するクローン生成部２０３に対して、スキーマ情報を変更したオブジェクトが生成したクローンのバージョンアップを要求する。
【００２１】
要求受付部２０２は、入力装置１１を介して、オブジェクトの生成要求を受け付け、後述するクローン管理部２０３に対して、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを問い合せる。そして、要求受付部２０２は、生成要求を受け付けたオブジェクトの複製機能が利用可能である場合、クローン管理部２０３に対してクローンの生成を要求し、生成されたクローンを、オブジェクトの生成要求元（例えば、表示装置１２など）に出力する。一方、要求受付部２０２は、生成要求を受け付けたオブジェクトの複製機能が利用不可である場合、スキーマ管理部２０１に対してオブジェクトの生成を要求し、生成されたオブジェクトを、オブジェクトの生成要求元（例えば、表示装置１２など）に出力する。また、要求受付部２０２は、スキーマ情報に基づくオブジェクトの生成を行う毎に、クローン管理部２０３に対して、オブジェクトの複製機能が利用可能か否かを判断するための利用情報の登録を要求する。
【００２２】
クローン管理部２０３は、クローンの複製元であるオブジェクトの利用情報をスキーマ情報毎に管理するものである。具体的には、クローン管理部２０３は、要求受付部２０２からの利用情報の登録の要求に応じて、利用情報を記憶する。図３は、クローン管理部が記憶する利用情報の一例を示す図である。本実施の形態では、クローン管理部２０３は、図３に示すように、利用情報（「Ｙｅｓ（Ｙ）」または「Ｎｏ（Ｎ）」）を、オブジェクトの生成に用いたスキーマ情報を特定するための情報（例えば、「スキーマ名」）およびクローンを生成したオブジェクトを特定するための情報である複製元オブジェクトへのリンク（例えば、「アドレス値」）と対応付けて記憶するものとする。このように、クローン管理部２０３が、複製元オブジェクトへのリンクのみを保持することにより、オブジェクトの実体の保存先を自由に変更することができる。
【００２３】
利用情報は、入力装置１１からの入力に応じて、「Ｙｅｓ（Ｙ）」／「Ｎｏ（Ｎ）」を選択可能であるものとする。なお、利用情報に「Ｎ」が選択された場合、「アドレス値」には、「なし」が設定されるものとする。
【００２４】
なお、クローン管理部２０３が管理するオブジェクトの実体は、ＰＣ１内の記憶領域上に存在するものに限定するものではなく、ネットワーク９を介して接続されたサーバ（図示しない）の記憶領域上に存在するものであっても良い。
【００２５】
また、クローン管理部２０３は、要求受付部２０２から、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かの問い合わせがあった場合、利用情報に基づいて、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを判断する。そして、クローン管理部２０３は、生成要求を受け付けたオブジェクトの利用情報を記憶しており、かつその利用情報が「Ｙ」である場合、要求受付部２０２に対してオブジェクトの複製機能が利用可能であることを通知する。さらに、クローン管理部２０３は、生成要求を受け付けたオブジェクトの利用情報と対応付けて記憶される「スキーマ名」および「アドレス値」を用いて、生成要求を受け付けたオブジェクトにアクセスし、クローンの生成を依頼する。
【００２６】
図４は、クローン生成処理の概略を示す図である。図４に示すように、まず、クローン管理部２０３が、クローンを生成するオブジェクトである複製元オブジェクト４０１に対して、クローンの生成を依頼する。次いで、複製元オブジェクト４０１が、自身が備える複製機能を用いて、クローン４０２を生成する。
【００２７】
次に、図５を用いて、オブジェクトの生成処理および利用情報の登録処理の手順について説明する。図５は、オブジェクトの生成処理および利用情報の登録処理の手順を示すシーケンス図である。
【００２８】
まず、要求受付部２０２は、入力装置１１を介してオブジェクトの生成要求を受け付けると（ステップＳ５０１）、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを問い合せる（ステップＳ５０２）。
【００２９】
クローン管理部２０３は、要求受付部２０２から問い合わせがあると、予め記憶する利用情報に基づいて、生成要求を受け付けたオブジェクトの複製機能が利用可能であるか否かを判断し、生成要求を受け付けたオブジェクトの複製機能が利用可能であると判断した場合、その旨（「Ｙｅｓ」）を要求受付部２０２に通知する（ステップＳ５０３）。なお、図示しないが、生成要求を受け付けたオブジェクトの複製機能が利用不可であると判断した場合、要求受付部２０２は、毎回、スキーマ管理部２０１に対してオブジェクトの生成を要求するものとする。
【００３０】
次に、オブジェクトの複製機能が利用可能である旨の通知を受けると、要求受付部２０２は、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトのクローンが既に存在するか否かを確認する（ステップＳ５０４）。クローン管理部２０３は、オブジェクトに対して行ったクローンの生成依頼の履歴に基づいて、生成要求を受け付けたオブジェクトのクローンが存在するか否かを確認し、クローンが存在しない場合には、クローンが存在しない旨（「Ｎｏ」）を要求受付部２０２に通知する（ステップＳ５０５）。
【００３１】
なお、クローンが既に存在すると判断した場合、クローン管理部２０３は、生成要求を受け付けたオブジェクトにより生成済みのクローンを要求受付部２０２に渡すものとする。これにより、オブジェクトの生成要求を受け付ける毎に、スキーマ管理部２０１に対してスキーマ情報に基づくオブジェクトの生成処理を要求する必要がなくなるので、全体的にオブジェクト生成処理のパフォーマンスを向上させることができる。
【００３２】
要求受付部２０２は、クローン管理部２０３からクローンが存在しない旨（「Ｎｏ」）の通知を受けた場合、スキーマ管理部２０１に対してオブジェクトの生成を要求する（ステップＳ５０６）。スキーマ管理部２０１は、スキーマ情報に基づいて、生成要求を受け付けたオブジェクトを生成し、生成したオブジェクトを要求受付部２０２に渡す（ステップＳ５０７）。なお、要求受付部２０２は、オブジェクトの生成に用いるスキーマ情報を特定するための情報（例えば、スキーマ名など）を特定して、スキーマ管理部２０１に対してオブジェクトの生成要求を行うものとする。
【００３３】
そして、要求受付部２０２は、クローン管理部２０３に対して利用情報の登録を要求するとともに（ステップＳ５０８）、スキーマ管理部２０１から受け取ったオブジェクトを表示装置１２に出力する（ステップＳ５０９）。このように、オブジェクトを生成する一連の処理の流れにおいて、オブジェクトの利用情報を登録することにより、利用情報の登録にかかるコストを削減することができる。
【００３４】
次に、図６を用いて、クローンの生成処理の手順について説明する。図６は、クローンの生成処理の手順を示すシーケンス図である。
【００３５】
まず、要求受付部２０２は、入力装置１１を介してオブジェクトの生成要求を受け付けると（ステップＳ６０１）、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを問い合せる（ステップＳ６０２）。
【００３６】
クローン管理部２０３は、要求受付部２０２から問い合わせがあると、予め記憶する利用情報に基づいて、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを判断し、生成要求を受け付けたオブジェクトの複製機能が利用可能であると判断した場合、その旨（「Ｙｅｓ」）を要求受付部２０２に通知する（ステップＳ６０３）。さらに、クローン管理部２０３は、オブジェクトに対して行ったクローンの生成依頼の履歴に基づいて、生成要求を受け付けたオブジェクトのクローンが存在するか否かを確認する（ステップＳ６０４）。
【００３７】
次に、オブジェクトの複製機能が利用可能である旨の通知を受けると、要求受付部２０２は、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトのクローンの生成を要求する（ステップＳ６０５）。
【００３８】
クローン管理部２０３は、クローンの生成要求を受けると、複製元オブジェクト４０１に対してオブジェクト自身の複製であるクローンの生成を依頼する（ステップＳ６０６）。なお、複製元オブジェクト４０１に対してクローンの生成を依頼する際、クローン管理部２０３は、オブジェクトが持つ属性のうち、必要な属性を指定し、指定した属性だけを持つクローン（オブジェクト）の生成を依頼しても良い。また、クローン管理部２０３は、生成要求を受け付けたオブジェクトのクローンが既に存在する場合、新たなクローンの生成処理を行わず、存在するクローンを要求受付部２０２に渡しても良い。
【００３９】
複製元オブジェクト４０１は、クローン管理部２０３からクローンの生成が依頼されると、複製機能によりクローン４０２を生成する（ステップＳ６０７）。なお、複製元オブジェクト４０１は、クローン管理部２０３から属性の指定を受けた場合、指定された属性だけを含むオブジェクト（クローン４０２）を生成するものとする。そして、複製元オブジェクト４０１は、生成したクローン４０２を、生成要求を受け付けたオブジェクトとしてクローン管理部２０３に渡す（ステップＳ６０８）。
【００４０】
クローン管理部２０３は、複製元オブジェクト４０１により生成されたクローン４０２を、生成要求を受け付けたオブジェクトとして要求受付部２０２に渡す（ステップＳ６０９）。そして、要求受付部２０２は、クローン管理部２０３から受け取ったクローン４０２を、生成要求を受け付けたオブジェクトとして表示装置１２に出力する（ステップＳ６１０）。これにより、要求受付部２０２がオブジェクトの生成要求を受け付ける度に、スキーマ管理部２０１によるスキーマ情報を用いたオブジェクトの生成処理を行う必要がなくなるので、オブジェクトの生成を高速に処理することができる。
【００４１】
次に、図７を用いて、スキーマ情報の変更処理の手順について説明する。図７は、スキーマ情報の変更処理の手順を示すシーケンス図である。
【００４２】
まず、スキーマ管理部２０１は、スキーマ情報の変更依頼が発生した場合（ステップＳ７０１）、スキーマ情報の変更を行う（ステップＳ７０２）。そして、スキーマ管理部２０１は、変更前のスキーマ情報に基づいて生成されたオブジェクトが、複製機能が利用可能なものであるか否かをクローン管理部２０３に対して問い合せる（ステップＳ７０３）。さらに、スキーマ管理部２０１は、変更後のスキーマ情報に基づいてオブジェクト（複製元オブジェクト４０１）を生成する（ステップＳ７０４）。これにより、スキーマ情報が頻繁に変更される場合に、スキーマ管理部２０１は、複製元オブジェクト４０１のみを更新するだけで済むため、オブジェクトの更新に割く時間が少なくなり、全体的なオブジェクト生成処理のパフォーマンスを向上させることができる。
【００４３】
なお、スキーマ管理部２０１は、変更前のスキーマ情報に基づいて生成されたオブジェクトが複製機能を利用可能なものであった場合、クローン管理部２０３に対して、変更したスキーマ情報を指定してクローンのバージョンアップを要求する（ステップＳ７０５）。クローン管理部２０３は、指定されたスキーマ情報に基づいて生成されたオブジェクトが生成したクローンをバージョンアップする。これにより、スキーマ情報の変更が発生した場合でも、複製元オブジェクト４０１の構造とクローン４０２の構造との間でずれが発生することを防止することができる。
【００４４】
このように、本実施の形態にかかるＰＣ１によれば、生成要求を受け付けたオブジェクトが複製機能を有する場合、複製元オブジェクト４０１がクローン４０２を生成することにより、オブジェクトの生成要求を受け付ける度に、スキーマ管理部２０１がスキーマ情報に基づくオブジェクトの生成処理を行う必要がなくなるので、オブジェクト生成のパフォーマンスを向上させることができる。
【００４５】
（第２実施の形態）
本実施の形態は、複数のJava（登録商標）仮想マシンが連携する環境（ＭＶＭ：Multi  Virtual  Machine）に、本発明を適用した例である。ＭＶＭは、３ｒｄベンダによるプラグインにより、故意・過失を問わず、ＶＭの動作に悪影響を及ぼすようなケースで、安全性を確保するために採用されている。そのため、自社製品と、３ｒｄベンダ追加用のＶＭと、を分けることで、自社製品が３ｒｄベンダの悪影響を受けることを防止できる。拡張性と安全性を考慮すると、非常に重要な用件である。なお、以下の説明では、ＰＣのハードウェア構成など上述の実施の形態と同様の部分については説明を省略し、異なる部分についてのみ説明する。
【００４６】
図８は、図２に示す各部を複数のＶＭが連携する環境において実現した例を示す図である。ＶＭ１（スレーブ）８０１は、要求受付部２０２、クローン管理部２０３、およびスキーマ管理プロキシ８０３を備えて構成される。なお、要求受付部２０２およびクローン管理部２０３における処理は、上述の実施の形態と同様であるため、説明を省略する。
【００４７】
スキーマ管理プロキシ８０３は、インターネットなどのネットワーク９を介して、後述するＶＭ２（マスタ）８０２とＶＭ１との接続を実現させるものである。具体的には、スキーマ管理プロキシ８０３は、ＶＭ２（マスタ）８０２に対して、オブジェクトの生成を要求したり、ＶＭ２（マスタ）８０２において生成されたオブジェクトを受け取ったりするものである。
【００４８】
ＶＭ２（マスタ）８０２は、スキーマ管理部２０１を備えて構成される。なお、スキーマ管理部２０１における処理は、上述の実施の形態と同様であるため、説明を省略する。
【００４９】
ここで、図９を用いて、ＭＶＭにおける従来のオブジェクト生成処理の手順について説明する。図９は、ＭＶＭにおける従来のオブジェクト生成処理の手順を示すシーケンス図である。
【００５０】
まず、要求受付部２０２は、入力装置１１を介してオブジェクトの生成要求を受け付けると（ステップＳ９０１）、スキーマ管理プロキシ８０３に対してオブジェクトの生成を要求する（ステップＳ９０２）。なお、オブジェクトの生成の要求は、スキーマ情報を指定して行うものとする。
【００５１】
スキーマ管理プロキシ８０３は、要求受付部２０２からオブジェクトの生成が要求されると、ネットワーク９を介して、ＶＭ２（マスタ）８０２が備えるスキーマ管理部２０１に対してオブジェクトの生成を要求する（ステップＳ９０３）。
【００５２】
ＶＭ２（マスタ）８０２が備えるスキーマ管理部２０１は、オブジェクトの生成が要求されると、指定されたスキーマ情報を取得し（ステップＳ９０４）、取得したスキーマ情報に基づいて、オブジェクトを生成する（ステップＳ９０５）。そして、スキーマ管理部２０１は、ネットワーク９を介して、生成したオブジェクトをスキーマ管理プロキシ８０３に渡す（ステップＳ９０６）。
【００５３】
スキーマ管理プロキシ８０３は、ＶＭ２（マスタ）８０２からオブジェクトを受け取るとともに、受け取ったオブジェクトを要求受付部２０２に渡す（ステップＳ９０７）。そして、要求受付部２０２が、スキーマ管理プロキシ８０３から渡されたオブジェクトを表示装置１２に出力する（ステップＳ９０８）。
【００５４】
このように、従来のＭＶＭにおけるオブジェクト生成処理では、各ＶＭにおいて管理されるスキーマ情報にずれが生じることを防止するため、１つのＶＭでスキーマ情報を集中的に管理し、そのＶＭでスキーマ情報に基づくオブジェクトの生成を行っていた。そのため、オブジェクトの生成処理を行う際に、ＶＭ間でのプロセス間通信が発生し、コスト高を招いていた。さらに、オブジェクト生成処理に時間がかかっていた。
【００５５】
一方、本実施の形態にかかるＭＶＭにおけるオブジェクト生成処理では、生成要求を受け付けたオブジェクトが複製機能を持っている場合、プロセス間通信を行わずに、オブジェクトを生成することができる。なお、スキーマ情報の変更が発生した場合には、上述の実施の形態と同様に、ＶＭ２（マスタ）８０２のスキーマ管理部２０１からクローン管理部２０３に対してバージョンアップが要求されるものとする。これにより、スキーマ情報の変更が発生した場合でも、同じスキーマ情報に基づいて生成されたオブジェクト間における構造の整合性を保つことができる。
【００５６】
次に、図１０を用いて、本実施の形態にかかるＭＶＭにおけるオブジェクト生成処理について説明する。図１０は、本実施の形態にかかるＭＶＭにおけるオブジェクト生成処理の手順を示すシーケンス図である。
【００５７】
まず、要求受付部２０２は、入力装置１１を介してオブジェクトの生成要求を受け付けると（ステップＳ１００１）、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを問い合せる（ステップＳ１００２）。
【００５８】
クローン管理部２０３は、要求受付部２０２から問い合わせがあると、予め記憶する利用情報に基づいて、生成要求を受け付けたオブジェクトの複製機能が利用可能か否かを判断し、生成要求を受け付けたオブジェクトの複製機能が利用可能であると判断した場合、その旨（「Ｙｅｓ」）を要求受付部２０２に通知する（ステップＳ１００３）。
【００５９】
次に、オブジェクトの複製機能が利用可能である旨の通知を受けると、要求受付部２０２は、クローン管理部２０３に対して、生成要求を受け付けたオブジェクトのクローンの生成を要求する（ステップＳ１００４）。
【００６０】
クローン管理部２０３は、クローンの生成要求を受けると、複製元オブジェクト４０１にクローン４０２の生成を依頼する（ステップＳ１００５）。そして、複製元オブジェクト４０１によりクローン４０２が生成されると、クローン管理部２０３は、複製元オブジェクト４０１により生成されたクローン４０２を、生成要求を受け付けたオブジェクトとして要求受付部２０２に渡す（ステップＳ１００６）。
【００６１】
要求受付部２０２は、クローン管理部２０３から受け取ったクローン４０２を、生成要求を受け付けたオブジェクトとして表示装置１２に出力する（ステップＳ１００７）。
【００６２】
このように、本実施の形態にかかるＭＶＭによれば、オブジェクト生成処理が行われる際に、プロセス間通信を行う必要がないので、プロセス間通信によるコスト高を防止することができ、かつオブジェクト生成処理を高速に行うことができる。
【００６３】
また、第１実施の形態および第２実施の形態を画像形成装置のデータ処理部分に適用することにより、コピー、ファクシミリ、プリンタ、その他の機能の設定値の読み出し、ログの書き込み速度を向上させことができるので、全体的なパフォーマンスを向上させることができる。
【００６４】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【００６５】
１  ＰＣ
２０１  スキーマ管理部
２０２  要求受付部
２０３  クローン管理部
【先行技術文献】
【特許文献】
【００６６】
【特許文献１】特開平７−２００３８１号公報
【図１】
2010176625.tif 000003
【図２】
2010176625.tif 000004
【図３】
2010176625.tif 000005
【図４】
2010176625.tif 000006
【図５】
2010176625.tif 000007
【図６】
2010176625.tif 000008
【図７】
2010176625.tif 000009
【図８】
2010176625.tif 000010
【図９】
2010176625.tif 000011
【図１０】
2010176625.tif 000012