(57)【要約】【課題】自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくする。【解決手段】情報処理装置１０において、ＰＤＬ変換ソフトウェア起動部３０は、印刷指示情報の受信状態を受信停止状態に設定してＰＤＬ変換ソフトウェアを起動する。そして、この起動時又はその後の定期的な処理時に、プリントサーバ動作判定部３４が、自装置で仮想プリントサーバが動作しているかどうかを判定し、動作していれば、プリントサーバ情報取得部３５が、プリントサーバに定義されたプリンタ名を取得し、宛先プリンタ情報取得部３６が、ＰＤＬ変換ソフトウェアの宛先に指定されたプリンタ名を取得し、プリンタ情報比較部３７が、これらのプリンタ名を比較し、受信状態設定部３８が、プリンタ名が一致したプリンタに関して受信状態を受信開始状態に設定する。【選択図】図６
2014164527.tif 000002
【特許請求の範囲】
【請求項１】
１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が当該各仮想印刷制御部に対して定義された印刷装置での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する判定手段と、
前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御する制御手段と
を備えたことを特徴とする印刷制御装置。
【請求項２】
前記判定手段は、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを、定期的に判定することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記複数の仮想印刷制御部の各仮想印刷制御部は、自装置を含む印刷制御装置群であって当該各仮想印刷制御部に対応する印刷制御装置群を束ねて１つの印刷制御装置として見せ、かつ、当該各仮想印刷制御部に対応する印刷制御装置群のうちの自装置以外の他の印刷制御装置で動作しているときに当該他の印刷制御装置に障害が発生したことにより自装置で動作を開始することを特徴とする請求項１又は請求項２に記載の印刷制御装置。
【請求項４】
前記判定手段は、自装置を起動する際において、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作することになっているかどうかを判定し、
前記制御手段は、自装置を起動する際において、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作することになっていると判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御することを特徴とする請求項３に記載の印刷制御装置。
【請求項５】
前記判定手段は、自装置を起動する際において、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作することになっているかどうかを判定し、
前記制御手段は、自装置を起動する際において、前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作することになっていないと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御することを特徴とする請求項３に記載の印刷制御装置。
【請求項６】
前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該仮想印刷制御部に対して定義された印刷装置を特定する第１の特定手段と、
前記仮想印刷制御部により仮想的に実現される装置で動作し、第１の種類の印刷装置での印刷を指示する印刷指示情報を生成する第１の生成手段と、
前記仮想印刷制御部により仮想的に実現される装置で動作し、第２の種類の印刷装置での印刷を指示する印刷指示情報を生成する第２の生成手段と、
前記第１の生成手段により生成された印刷指示情報を、前記第２の生成手段が印刷指示情報を生成するために用いる情報に変換する変換手段と、
前記変換手段による変換後の情報の出力先として当該変換手段に指定された前記第２の生成手段に対応する印刷装置を特定する第２の特定手段と、
前記第１の特定手段により特定された印刷装置と、前記第２の特定手段により特定された印刷装置とに共通する印刷装置を特定する第３の特定手段と
を更に備え、
前記制御手段は、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、前記第３の特定手段により特定された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御することを特徴とする請求項１乃至請求項５の何れかに記載の印刷制御装置。
【請求項７】
媒体に画像を印刷する複数の印刷装置と、
前記複数の印刷装置での印刷を制御する印刷制御装置と
を備え、
前記印刷制御装置は、
１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が前記複数の印刷装置のうちの当該各仮想印刷制御部に対して定義された印刷装置群での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する判定手段と、
前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置群での印刷を指示する印刷指示情報を受信する状態となるように制御する制御手段と
を備えたことを特徴とする印刷システム。
【請求項８】
コンピュータに、
１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が当該各仮想印刷制御部に対して定義された印刷装置での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する機能と、
前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定された場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定された場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御する機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御装置、印刷システム、プログラムに関する。
【背景技術】
【０００２】
デバイス毎のデバイス情報とそのデバイスの物理アドレスを定め、この物理アドレスに対して論理アドレスを対応させた接続テーブルを設け、システム立ち上げ時にチェックを行い、作動可能なデバイスの物理アドレスに対し論理アドレスを対応させて接続テーブルの更新を行い、この更新した接続テーブルに基づきホストが論理アドレスにより所望のデバイスにアクセスするようにする入出力制御装置は知られている（例えば、特許文献１参照）。
【０００３】
情報処理装置と、情報処理装置と通信ネットワークを介して通信可能に接続し情報処理装置から送信されるデータの書き込み／読み出し要求に応じて記憶デバイスに対するデータの書き込み／読み出しを行うストレージ装置と、を含むストレージシステムにおいて、実資源の運用を管理し、実資源を割り当てることにより仮想資源を設定し、実資源の稼働状態に応じて設定を変更するようにする資源運用管理方法も知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平４−２４５５２４号公報
【特許文献２】特開２００５−２１６１５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくすることにある。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明は、１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が当該各仮想印刷制御部に対して定義された印刷装置での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する判定手段と、前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御する制御手段とを備えたことを特徴とする印刷制御装置である。
請求項２に記載の発明は、前記判定手段は、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを、定期的に判定することを特徴とする請求項１に記載の印刷制御装置である。
請求項３に記載の発明は、前記複数の仮想印刷制御部の各仮想印刷制御部は、自装置を含む印刷制御装置群であって当該各仮想印刷制御部に対応する印刷制御装置群を束ねて１つの印刷制御装置として見せ、かつ、当該各仮想印刷制御部に対応する印刷制御装置群のうちの自装置以外の他の印刷制御装置で動作しているときに当該他の印刷制御装置に障害が発生したことにより自装置で動作を開始することを特徴とする請求項１又は請求項２に記載の印刷制御装置である。
請求項４に記載の発明は、前記判定手段は、自装置を起動する際において、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作することになっているかどうかを判定し、前記制御手段は、自装置を起動する際において、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作することになっていると判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御することを特徴とする請求項３に記載の印刷制御装置である。
請求項５に記載の発明は、前記判定手段は、自装置を起動する際において、前記複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作することになっているかどうかを判定し、前記制御手段は、自装置を起動する際において、前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作することになっていないと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御することを特徴とする請求項３に記載の印刷制御装置である。
請求項６に記載の発明は、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該仮想印刷制御部に対して定義された印刷装置を特定する第１の特定手段と、前記仮想印刷制御部により仮想的に実現される装置で動作し、第１の種類の印刷装置での印刷を指示する印刷指示情報を生成する第１の生成手段と、前記仮想印刷制御部により仮想的に実現される装置で動作し、第２の種類の印刷装置での印刷を指示する印刷指示情報を生成する第２の生成手段と、前記第１の生成手段により生成された印刷指示情報を、前記第２の生成手段が印刷指示情報を生成するために用いる情報に変換する変換手段と、前記変換手段による変換後の情報の出力先として当該変換手段に指定された前記第２の生成手段に対応する印刷装置を特定する第２の特定手段と、前記第１の特定手段により特定された印刷装置と、前記第２の特定手段により特定された印刷装置とに共通する印刷装置を特定する第３の特定手段とを更に備え、前記制御手段は、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、前記第３の特定手段により特定された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御することを特徴とする請求項１乃至請求項５の何れかに記載の印刷制御装置である。
請求項７に記載の発明は、媒体に画像を印刷する複数の印刷装置と、前記複数の印刷装置での印刷を制御する印刷制御装置とを備え、前記印刷制御装置は、１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が前記複数の印刷装置のうちの当該各仮想印刷制御部に対して定義された印刷装置群での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する判定手段と、前記判定手段が前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定した場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記判定手段が前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定した場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置群での印刷を指示する印刷指示情報を受信する状態となるように制御する制御手段とを備えたことを特徴とする印刷システムである。
請求項８に記載の発明は、コンピュータに、１つの装置で動作することにより当該１つの装置に仮想的に複数の装置を実現する複数の仮想印刷制御部であって、各仮想印刷制御部が当該各仮想印刷制御部に対して定義された印刷装置での印刷を制御する複数の仮想印刷制御部のうち、何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する機能と、前記複数の仮想印刷制御部のうちの何れの仮想印刷制御部も自装置で動作を開始しなかったと判定された場合に、印刷装置での印刷を指示する印刷指示情報の受信に関する状態が、当該印刷指示情報を受信しない状態となるように制御し、その後、前記複数の仮想印刷制御部のうちの何れかの仮想印刷制御部が自装置で動作を開始したと判定された場合に、当該受信に関する状態が、当該仮想印刷制御部に対して定義された印刷装置での印刷を指示する印刷指示情報を受信する状態となるように制御する機能とを実現させるためのプログラムである。
【発明の効果】
【０００７】
請求項１の発明によれば、本構成を有していない場合に比較して、自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくすることができる。
請求項２の発明によれば、本構成を有していない場合に比較して、仮想印刷制御部が自装置で動作を開始したことを検知するまでの時間を短縮することができる。
請求項３の発明によれば、本構成を有していない場合に比較して、他の印刷制御装置に障害が発生したことにより自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくすることができる。
請求項４の発明によれば、自装置を起動する際に、自装置で動作することになっている仮想印刷制御部が通常通りに印刷装置での印刷を制御することができる。
請求項５の発明によれば、自装置を起動する際に、自装置で動作することになっていない仮想印刷制御部が印刷装置での印刷を制御することを、仮想印刷制御部が自装置で動作を開始するまで停止することができる。
請求項６の発明によれば、第１の種類の印刷装置での印刷を指示する印刷指示情報を第２の種類の印刷装置での印刷を指示する印刷指示情報に変換する変換手段に指定された印刷装置も加味して、印刷指示情報を受信する状態とする印刷装置を特定することができる。
請求項７の発明によれば、本構成を有していない場合に比較して、自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくすることができる。
請求項８の発明によれば、本構成を有していない場合に比較して、自装置で動作を開始した仮想印刷制御部が印刷装置での印刷を制御する際に自装置で動作する他の仮想印刷制御部に与える影響を小さくすることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態が適用される印刷システムの構成例を示した図である。
【図２】本発明の実施の形態における情報処理装置のハードウェア構成例を示した図である。
【図３】本発明の実施の形態における画像処理装置のハードウェア構成例を示した図である。
【図４】情報処理装置に障害が発生した場合のプリントサーバの移行処理について示した図である。
【図５】複数の情報処理装置に障害が発生した場合のプリントサーバの移行処理について示した図である。
【図６】本発明の実施の形態における情報処理装置の機能構成例を示したブロック図である。
【図７】本発明の実施の形態における情報処理装置の起動時の動作例を示したフローチャートである。
【図８】本発明の実施の形態における情報処理装置で定期的に実行される監視処理の動作例を示したフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
図１は、本実施の形態が適用される印刷システムの全体構成例を示したものである。
図示するように、この印刷システムは、情報処理装置１０１，１０２，１０３，１０４と、画像処理装置４０１，４０２，４０３，４０４とが、ＬＡＮ（Local Area Network）等のネットワーク８０に接続されることにより構成されている。ここで、情報処理装置１０１，１０２，１０３，１０４は、これらを区別しない場合は、情報処理装置１０と称し、その台数は４つには限らないものとする。また、画像処理装置４０１，４０２，４０３，４０４は、これらを区別しない場合は、画像処理装置４０と称し、その台数は４つには限らないものとする。
【００１０】
情報処理装置１０は、画像処理装置４０での印刷を制御する印刷制御装置の一例であるプリントサーバとして機能するコンピュータ装置である。具体的には、情報処理装置１０は、仮想印刷制御部の一例である仮想プリントサーバが自装置で動作することにより、仮想的にプリントサーバを実現する。即ち、情報処理装置１０は、図示しない端末装置から画像処理装置４０での印刷を指示する印刷指示情報を受信し、この印刷指示情報に基づいてＰＤＬ（Page Description Language）データを含む印刷データを生成し、この印刷データを出力先の画像処理装置４０に送信する。また、幾つかの情報処理装置１０に対しては、仮想的なプリントサーバとしての可用性を高めるため、例えばＷＳＦＣ（Windows Server Failover Clustering）により、クラスタリングが行われている。即ち、通常時は、情報処理装置１０のクラスタ内のある情報処理装置１０が、自装置で仮想プリントサーバが動作することにより、仮想的にプリントサーバを実現するが、その情報処理装置１０に障害が発生すると、そのクラスタ内の別の情報処理装置１０が、自装置で仮想プリントサーバが動作することにより、仮想的にプリントサーバを実現するようになる。図では、点線で囲んで示すように、情報処理装置１０１、１０２に対してクラスタリングが行われると共に、情報処理装置１０２、１０３に対してクラスタリングが行われている。一方、情報処理装置１０４に対しては、クラスタリングは行われていない。尚、以下では、クラスタリングが行われた情報処理装置１０は「クラスタ環境にある」と称し、クラスタリングが行われていない情報処理装置１０は「クラスタ環境にない」と称する。また、情報処理装置１０のクラスタ内で、通常時に仮想プリントサーバが動作する情報処理装置１０を「通常稼働系」と称し、通常稼働系の情報処理装置１０に障害が発生したときに仮想プリントサーバが動作する情報処理装置１０を「待機系」と称する。
【００１１】
画像処理装置４０は、紙等の記録媒体に画像を形成し、印刷媒体として出力する装置である。ここで、画像処理装置４０としては、プリンタ機能のみを備えた装置を用いてもよいし、これに加えてスキャナ機能、ファクシミリ機能等の他の画像処理機能を備えた装置を用いてもよい。本実施の形態では、印刷装置の一例として、画像処理装置４０を設けている。
【００１２】
次に、情報処理装置１０のハードウェア構成について説明する。
図２は、情報処理装置１０のハードウェア構成を示した図である。
図示するように、情報処理装置１０は、演算手段であるＣＰＵ（Central Processing Unit）１１と、記憶手段であるメインメモリ１２及びＨＤＤ（Hard Disk Drive）１３とを備える。ここで、ＣＰＵ１１は、ＯＳ（Operating System）やアプリケーション等の各種ソフトウェアを実行し、後述する各機能を実現する。また、メインメモリ１２は、各種ソフトウェアやその実行に用いるデータ等を記憶する記憶領域であり、ＨＤＤ１３は、各種ソフトウェアに対する入力データや各種ソフトウェアからの出力データ等を記憶する記憶領域である。
更に、情報処理装置１０は、外部との通信を行うための通信インターフェース（以下、「通信Ｉ／Ｆ」と表記する）１４と、ビデオメモリやディスプレイ等からなる表示機構１５と、キーボードやマウス等の入力デバイス１６とを備える。
【００１３】
次に、画像処理装置４０のハードウェア構成について説明する。
図３は、画像処理装置４０のハードウェア構成例を示した図である。
図示するように、画像処理装置４０は、ＣＰＵ４１と、ＲＡＭ（Random Access Memory）４２と、ＲＯＭ（Read Only Memory）４３と、ＨＤＤ４４と、操作パネル４５と、画像読取部４６と、画像形成部４７と、通信Ｉ／Ｆ４８とを備える。
【００１４】
ＣＰＵ４１は、ＲＯＭ４３等に記憶された各種プログラムをＲＡＭ４２にロードして実行することにより、後述する各機能を実現する。
ＲＡＭ４２は、ＣＰＵ４１の作業用メモリ等として用いられるメモリである。
ＲＯＭ４３は、ＣＰＵ４１が実行する各種プログラム等を記憶するメモリである。
ＨＤＤ４４は、画像読取部４６が読み取った画像データや画像形成部４７における画像形成にて用いる画像データ等を記憶する例えば磁気ディスク装置である。
操作パネル４５は、各種情報の表示やユーザからの操作入力の受付を行う例えばタッチパネルである。
【００１５】
画像読取部４６は、紙等の記録媒体に記録された画像を読み取る。ここで、画像読取部４６は、例えばスキャナであり、光源から原稿に照射した光に対する反射光をレンズで縮小してＣＣＤ(Charge Coupled Devices)で受光するＣＣＤ方式や、ＬＥＤ光源から原稿に順に照射した光に対する反射光をＣＩＳ(Contact Image Sensor)で受光するＣＩＳ方式のものを用いるとよい。
【００１６】
画像形成部４７は、記録媒体に画像を形成する。ここで、画像形成部４７は、例えばプリンタであり、感光体に付着させたトナーを記録媒体に転写して像を形成する電子写真方式や、インクを記録媒体上に吐出して像を形成するインクジェット方式のものを用いるとよい。
通信Ｉ／Ｆ４８は、ネットワーク８０を介して他の装置との間で各種情報の送受信を行う。
【００１７】
ところで、本実施の形態では、上述したように、情報処理装置１０のクラスタ内のある情報処理装置１０が仮想的にプリントサーバを実現している際に、その情報処理装置１０に障害が発生すると、その情報処理装置１０からそのクラスタ内の別の情報処理装置１０へプリントサーバを移行する。
図４は、このようなプリントサーバの移行処理について模式的に示した図である。尚、図では、図１に示した情報処理装置１０１，１０２からなるクラスタを例にとり、情報処理装置１０１に障害が発生した場合について示している。
【００１８】
まず、情報処理装置１０１に障害が発生する前の状態について述べる。
情報処理装置１０１は、障害が発生する前において、破線で囲んで示したプリントサーバを実現している。具体的には、情報処理装置１０１は、自装置で仮想プリントサーバ２０ａが動作することにより、共有ディスク２４ａと共にプリントサーバを実現している。また、情報処理装置１０１では、第１プリンタドライバ２１ａと、ＰＤＬ変換ソフトウェア２２ａと、第２プリンタドライバ２３ａとが動作している。ここで、第１プリンタドライバ２１ａは、例えば専用のプリンタに対応するプリンタドライバであり、第１の種類の印刷装置での印刷を指示する印刷指示情報を生成する第１の生成手段の一例である。また、第２プリンタドライバ２３ａは、例えば専用プリンタに出力する印刷物を一般的なプリンタに切り替えて出力する場合のその一般的なプリンタに対応するプリンタドライバであり、第２の種類の印刷装置での印刷を指示する印刷指示情報を生成する第２の生成手段の一例である。情報処理装置１０１で第２プリンタドライバ２３ａのみを動作させたのでは出力結果が満足なものにならない場合があるという事情から、ＰＤＬ変換ソフトウェア２２ａを導入し、このＰＤＬ変換ソフトウェア２２ａが、第１プリンタドライバ２１ａが生成したＰＤＬデータを、第２プリンタドライバ２３ａへの入力データに変換するようにしている。即ち、ＰＤＬ変換ソフトウェア２２ａは、第１の生成手段により生成された印刷指示情報を第２の生成手段が印刷指示情報を生成するために用いる情報に変換する変換手段の一例である。尚、これらのプログラムのうち、第１プリンタドライバ２１ａ及び第２プリンタドライバ２３ａは仮想プリントサーバ２０ａ上で動作するものである。一方で、ＰＤＬ変換ソフトウェア２２ａは仮想プリントサーバ２０ａ上で動作するものでなく、実ＯＳ上で動作するものであるが、図面作成の都合上、仮想プリントサーバ２０ａ内に示している。
【００１９】
この状態で、情報処理装置１０１に障害が発生したとする。
すると、プリントサーバが情報処理装置１０１から情報処理装置１０２へ移行し、情報処理装置１０２が、実線で囲んで示したプリントサーバを実現する。具体的には、情報処理装置１０２が、自装置で仮想プリントサーバ２０ａが動作することにより、共有ディスク２４ａと共にプリントサーバを実現する。その際、情報処理装置１０２でも、第１プリンタドライバ２１ａと、ＰＤＬ変換ソフトウェア２２ａと、第２プリンタドライバ２３ａとが動作する。
【００２０】
さて、このようにプリントサーバが移行する際、情報処理装置１０１で処理中であった印刷指示情報は、その処理で一時的に作成された中間ファイルと共に、共有ディスク２４ａを介して情報処理装置１０２に渡される。
しかしながら、情報処理装置１０１で処理中であった印刷指示情報に関する情報が情報処理装置１０２で変化することで、正常に印刷指示情報を引き継ぐことができない状態が発生するという問題があった。具体的には、情報処理装置１０１で処理中であった印刷指示情報の識別番号が情報処理装置１０２で変化する一方で、中間ファイルを作成した印刷指示情報の識別番号としては情報処理装置１０１で動作していたときの識別番号がそのまま情報処理装置１０２に渡されるので、情報処理装置１０２では、識別番号の不整合が起こり、その結果、中間ファイルが残存して、以降の印刷を継続することができない状態が発生していた。
このような問題を解決するためには、情報処理装置１０２が、ＯＳスプーラを再起動することにより初期化した状態で、情報処理装置１０１から渡された印刷指示情報を処理することが考えられる。
【００２１】
ところが、このようなＯＳスプーラの再起動では問題が解決できない場合もある。
図５は、そのような場合におけるプリントサーバの移行処理について模式的に示した図である。尚、図では、図１に示した情報処理装置１０１，１０２からなるクラスタ及び情報処理装置１０２，１０３からなるクラスタを例にとり、情報処理装置１０１，１０３に障害が発生した場合について示している。
【００２２】
まず、情報処理装置１０１，１０３に障害が発生する前の状態について述べる。
情報処理装置１０１は、障害が発生する前において、自装置で仮想プリントサーバ２０ａが動作することにより、プリントサーバを実現している。また、情報処理装置１０１では、第１プリンタドライバ２１ａと、ＰＤＬ変換ソフトウェア２２ａと、第２プリンタドライバ２３ａとが動作している。尚、これらのプログラムについては、既に説明したので、ここでの説明は省略する。
一方、情報処理装置１０３は、障害が発生する前において、自装置で仮想プリントサーバ２０ｂが動作することにより、プリントサーバを実現している。また、情報処理装置１０３では、第１プリンタドライバ２１ｂと、ＰＤＬ変換ソフトウェア２２ｂと、第２プリンタドライバ２３ｂとが動作している。尚、これらのプログラムは、それぞれ、第１プリンタドライバ２１ａ、ＰＤＬ変換ソフトウェア２２ａ、第２プリンタドライバ２３ａに対応するものなので、説明は省略する。また、以下の説明で、仮想プリントサーバ２０ａ，２０ｂ、第１プリンタドライバ２１ａ，２１ｂ、ＰＤＬ変換ソフトウェア２２ａ，２２ｂ、第２プリンタドライバ２３ａ，２３ｂは、これらを区別しない場合は、それぞれ、仮想プリントサーバ２０、第１プリンタドライバ２１、ＰＤＬ変換ソフトウェア２２、第２プリンタドライバ２３と称するものとする。
【００２３】
この状態で、情報処理装置１０１に障害が発生したとする。
すると、プリントサーバが情報処理装置１０１から情報処理装置１０２へ移行し、情報処理装置１０２が、自装置で仮想プリントサーバ２０ａが動作することにより、プリントサーバを実現する。その際、情報処理装置１０２でも、第１プリンタドライバ２１ａと、ＰＤＬ変換ソフトウェア２２ａと、第２プリンタドライバ２３ａとが動作する。
その後、情報処理装置１０３に障害が発生したとする。
すると、プリントサーバが情報処理装置１０３から情報処理装置１０２へ移行し、情報処理装置１０２が、自装置で仮想プリントサーバ２０ｂが動作することにより、プリントサーバを実現する。その際、情報処理装置１０２でも、第１プリンタドライバ２１ｂと、ＰＤＬ変換ソフトウェア２２ｂと、第２プリンタドライバ２３ｂとが動作する。
【００２４】
即ち、クラスタにおける通常稼働系と待機系の定義の仕方によっては、１台の情報処理装置１０上で複数の仮想プリントサーバ２０が起動する状態が発生する。
例えば、情報処理装置１０２で仮想プリントサーバ２０ａが起動した後に仮想プリントサーバ２０ｂが起動する場合、上述したようにＯＳスプーラを再起動することとすると、情報処理装置１０３から引き継いだ印刷指示情報だけでなく、情報処理装置１０１から引き継いで既に処理されている印刷指示情報も初期化されてしまう。即ち、ＯＳスプーラの再起動によって、上記問題は解決できない。
【００２５】
そこで、本実施の形態では、各情報処理装置１０が、自装置がクラスタ環境にある場合に、自装置で仮想プリントサーバ２０が動作中かどうかを判断する。そして、仮想プリントサーバ２０が動作中であれば、ＯＳスプーラからの印刷指示情報の受信に関する状態（以下、「受信状態」という）を、印刷指示情報の受信を開始すべき状態（以下、「受信開始状態」という）に設定してＰＤＬ変換ソフトウェア２２を起動する。また、仮想プリントサーバ２０が動作中でなければ、受信状態を、印刷指示情報の受信を停止すべき状態（以下、「受信停止状態」という）に設定してＰＤＬ変換ソフトウェア２２を起動し、他の情報処理装置１０に障害が発生したことにより自装置にプリントサーバが移行されてきた時点で、受信状態を受信開始状態に設定する。尚、各情報処理装置１０は、自装置がクラスタ環境にない場合に、受信状態を受信開始状態に設定してＰＤＬ変換ソフトウェア２２を起動する。
【００２６】
次に、このような動作を実現する情報処理装置１０の構成について説明する。
図６は、情報処理装置１０の機能構成例を示したブロック図である。
図示するように、情報処理装置１０は、ＯＳの機能として、クラスタ管理部３１と、ネットワーク情報管理部３２とを備えている。即ち、これらの機能は、ソフトウェア（ＯＳ）とハードウェア資源とが協働することにより実現される。具体的には、ＣＰＵ１１（図２参照）が、ＯＳの機能のうちクラスタ管理部３１及びネットワーク情報管理部３２を実現するプログラムを例えばＨＤＤ１３（図２参照）からメインメモリ１２（図２参照）に読み込んで実行することにより、これらの機能は実現される。
【００２７】
クラスタ管理部３１は、情報処理装置１０を含むクラスタに関する情報（クラスタ情報）によりクラスタを管理する。ここで、クラスタ情報は、自装置がクラスタ環境にあるかどうかを示す情報を含む。また、自装置がクラスタ環境にある場合は、クラスタに含まれるリソースの種類、名称、状態を示す情報等も含む。具体的には、リソースの種類がプリントサーバであるとすると、リソースの名称はプリントサーバ名であり、リソースの状態は例えば自装置でプリントサーバが動作しているかどうかである。
ネットワーク情報管理部３２は、ネットワーク８０について定義された情報を管理する。ここで、ネットワーク８０について定義された情報とは、例えばプリントサーバに定義されているプリンタ名である。
【００２８】
また、情報処理装置１０は、ＰＤＬ変換ソフトウェアの機能として、ＰＤＬ変換ソフトウェア起動部３０と、リソースリスト取得部３３と、プリントサーバ動作判定部３４と、プリントサーバ情報取得部３５と、宛先プリンタ情報取得部３６と、プリンタ情報比較部３７と、受信状態設定部３８とを備えている。即ち、これらの機能は、ソフトウェア（ＰＤＬ変換ソフトウェア）とハードウェア資源とが協働することにより実現される。具体的には、ＣＰＵ１１（図２参照）が、ＰＤＬ変換ソフトウェアの機能のうちＰＤＬ変換ソフトウェア起動部３０、リソースリスト取得部３３、プリントサーバ動作判定部３４、プリントサーバ情報取得部３５、宛先プリンタ情報取得部３６、プリンタ情報比較部３７及び受信状態設定部３８を実現するプログラムを例えばＨＤＤ１３（図２参照）からメインメモリ１２（図２参照）に読み込んで実行することにより、これらの機能は実現される。
【００２９】
ＰＤＬ変換ソフトウェア起動部３０は、自装置がクラスタ環境にあるかどうかをクラスタ管理部３１に問い合わせる。そして、ＰＤＬ変換ソフトウェア起動部３０は、自装置がクラスタ環境にある旨の応答をクラスタ管理部３１から受けると、ＰＤＬ変換ソフトウェアを、受信状態を受信停止状態に設定して起動し、自装置がクラスタ環境にない旨の応答をクラスタ管理部３１から受けると、ＰＤＬ変換ソフトウェアを、受信状態を受信開始状態に設定して起動する。
リソースリスト取得部３３は、クラスタに含まれるリソースのリスト（リソースリスト）をクラスタ管理部３１から取得する。
プリントサーバ動作判定部３４は、リソースリスト取得部３３が取得したリソースリストにリソースとして含まれるプリントサーバが自装置で動作しているかどうかを、クラスタ管理部３１に問い合わせることによって判定する。本実施の形態では、複数の仮想印刷制御部のうち何れかの仮想印刷制御部が自装置で動作を開始したかどうかを判定する判定手段、及び、自装置を起動する際において複数の仮想印刷制御部のうち何れかの仮想印刷制御部が自装置で動作することになっているかどうかを判定する判定手段の一例として、プリントサーバ動作判定部３４を設けている。
プリントサーバ情報取得部３５は、リソースリスト取得部３３が取得したリソースリストにリソースとして含まれるプリントサーバが自装置で動作しているとプリントサーバ動作判定部３４により判定された場合に、そのプリントサーバに関する情報（プリントサーバ情報）を取得する。ここで、プリントサーバ情報は、プリントサーバ名及びプリントサーバに定義されているプリンタ名のリスト（プリンタリスト）を含む。本実施の形態では、仮想印刷制御部に対して定義された印刷装置を特定する第１の特定手段の一例として、プリントサーバ情報取得部３５を設けている。
【００３０】
宛先プリンタ情報取得部３６は、ＰＤＬ変換ソフトウェアの宛先に指定されているプリンタに関する情報（宛先プリンタ情報）を取得する。ここで、宛先プリンタ情報とは、例えば、宛先に指定されているプリンタのプリンタ名（宛先プリンタ名）である。図４及び図５に示したように、ＰＤＬ変換ソフトウェアから出力された情報は第２プリンタドライバ２３に入力されるので、この第２プリンタドライバ２３に関連付けられているプリンタのプリンタ名を調べることにより、宛先プリンタ名は取得される。本実施の形態では、第２の生成手段に対応する印刷装置を特定する第２の特定手段の一例として、宛先プリンタ情報取得部３６を設けている。
プリンタ情報比較部３７は、プリントサーバ情報取得部３５が取得したプリントリストに含まれるプリンタ名と、宛先プリンタ情報取得部３６が取得した宛先プリンタ名とを比較し、一致するプリンタ名を取得する。本実施の形態では、第１の特定手段により特定された印刷装置と第２の特定手段により特定された印刷装置とに共通する印刷装置を特定する第３の特定手段の一例として、プリンタ情報比較部３７を設けている。
受信状態設定部３８は、受信状態を、プリンタ情報比較部３７による比較で一致したプリンタ名のプリンタに対する印刷指示情報の受信を開始すべき受信開始状態に設定する。本実施の形態では、受信に関する状態が印刷指示情報を受信する状態となるように制御する制御手段、自装置を起動する際において受信に関する状態が印刷指示情報を受信する状態となるように制御する制御手段、及び、自装置を起動する際において受信に関する状態が印刷指示情報を受信しない状態となるように制御する制御手段の一例として、受信状態設定部３８を設けている。
【００３１】
次いで、本実施の形態における情報処理装置１０の動作について説明する。
図７は、情報処理装置１０を起動する際の動作例を示したフローチャートである。
図示するように、情報処理装置１０では、ＰＤＬ変換ソフトウェアの起動が開始されると、ＰＤＬ変換ソフトウェア起動部３０が、クラスタ管理部３１に問い合わせることにより、自装置がクラスタ環境にあるかどうかを判定する（ステップ３０１）。その結果、自装置がクラスタ環境にないと判定すれば、ＰＤＬ変換ソフトウェア起動部３０は、受信状態を受信開始状態に設定してＰＤＬ変換ソフトウェアの起動を完了させる（ステップ３０２）。一方、自装置がクラスタ環境にあると判定すれば、ＰＤＬ変換ソフトウェア起動部３０は、受信状態を受信停止状態に設定してＰＤＬ変換ソフトウェアの起動を完了させる（ステップ３０３）。
【００３２】
これにより、ＰＤＬ変換ソフトウェアは、以下のような処理を行う。
即ち、まず、リソースリスト取得部３３が、クラスタ管理部３１からリソースリストを取得する（ステップ３１１）。そして、リソースリストから１つのリソースを取り出し、そのリソースがプリントサーバであるかどうかを判定する（ステップ３１２）。
リソースがプリントサーバであると判定されれば、プリントサーバ動作判定部３４が、クラスタ管理部３１に問い合わせることにより、自装置でそのプリントサーバが動作しているかどうかを判定する（ステップ３１３）。
その結果、自装置でそのプリントサーバが動作していると判定されれば、プリントサーバ情報取得部３５が、クラスタ管理部３１からそのプリントサーバのプリントサーバ名を取得し（ステップ３１４）、ネットワーク情報管理部３２からそのプリントサーバに定義されているプリンタリストを取得する（ステップ３１５）。一方で、宛先プリンタ情報取得部３６が、ＰＤＬ変換ソフトウェアに指定されている宛先プリンタ名を取得する（ステップ３１６）。
【００３３】
すると、プリンタリストはプリントサーバ情報取得部３５からプリンタ情報比較部３７へ、宛先プリンタ名は宛先プリンタ情報取得部３６からプリンタ情報比較部３７へ、それぞれ渡され、プリンタ情報比較部３７が、プリンタリストから１つのプリンタ名を取り出し、このプリンタ名が宛先プリンタ名と一致するかどうかを判定する（ステップ３１７）。通常、ＰＤＬ変換ソフトウェアに指定されている宛先プリンタ名はプリントサーバに定義されているプリンタリストに含まれているはずであるが、ＰＤＬ変換ソフトウェアに宛先プリンタ名が指定された後に何らかの事情によりこのプリンタ名がプリントサーバに定義されているプリンタリストから外されている可能性もあるので、このような判定を行っている。
【００３４】
その結果、プリンタリストに含まれるプリンタ名が宛先プリンタ名と一致すると判定されれば、受信状態設定部３８は、受信状態を、この一致すると判定されたプリンタ名のプリンタに対する印刷指示情報の受信を開始すべき受信開始状態に設定する（ステップ３１８）。一方、プリンタリストに含まれるプリンタ名が宛先プリンタ名と一致しないと判定されれば、受信状態設定部３８は、受信状態を、受信開始状態に設定せず、受信停止状態のままにしておく。
その後、プリンタ情報比較部３７は、プリンタリストにまだ取り出していないプリンタ名があるかどうかを判定する（ステップ３１９）。そして、そのようなプリンタがあると判定すれば、ステップ３１７へ戻り、そのようなプリンタがないと判定すれば、ステップ３２０へ進む。また、ステップ３１２でリソースがプリントサーバでないと判定された場合、及び、ステップ３１３で自装置でそのプリントサーバが動作していないと判定された場合も、ステップ３２０へ進む。これにより、リソースリスト取得部３３は、まだ取り出していないリソースがあるかどうかを判定する（ステップ３２０）。そして、そのようなリソースがあると判定すれば、ステップ３１２へ戻り、そのようなリソースがないと判定すれば、処理を終了する。
【００３５】
図８は、情報処理装置１０で定期的に実行される監視処理の動作例を示したフローチャートである。
情報処理装置１０では、ＰＤＬ変換ソフトウェアが、定期的に以下のような処理を行う。
即ち、まず、リソースリスト取得部３３が、クラスタ管理部３１からリソースリストを取得する（ステップ３５１）。そして、リソースリストから１つのリソースを取り出し、そのリソースがプリントサーバであるかどうかを判定する（ステップ３５２）。
リソースがプリントサーバであると判定されれば、プリントサーバ動作判定部３４が、クラスタ管理部３１に問い合わせることにより、自装置でそのプリントサーバが動作しているかどうかを判定する（ステップ３５３）。
その結果、自装置でそのプリントサーバが動作していると判定されれば、プリントサーバ情報取得部３５が、クラスタ管理部３１からそのプリントサーバのプリントサーバ名を取得し（ステップ３５４）、ネットワーク情報管理部３２からそのプリントサーバに定義されているプリンタリストを取得する（ステップ３５５）。一方で、宛先プリンタ情報取得部３６が、ＰＤＬ変換ソフトウェアに指定されている宛先プリンタ名を取得する（ステップ３５６）。
【００３６】
すると、プリンタリストはプリントサーバ情報取得部３５からプリンタ情報比較部３７へ、宛先プリンタ名は宛先プリンタ情報取得部３６からプリンタ情報比較部３７へ、それぞれ渡され、プリンタ情報比較部３７が、プリンタリストから１つのプリンタ名を取り出し、このプリンタ名が宛先プリンタ名と一致するかどうかを判定する（ステップ３５７）。通常、ＰＤＬ変換ソフトウェアに指定されている宛先プリンタ名はプリントサーバに定義されているプリンタリストに含まれているはずであるが、ＰＤＬ変換ソフトウェアに宛先プリンタ名が指定された後に何らかの事情によりこのプリンタ名がプリントサーバに定義されているプリンタリストから外されている可能性もあるので、このような判定を行っている。
【００３７】
その結果、プリンタリストに含まれるプリンタ名が宛先プリンタ名と一致すると判定されれば、受信状態設定部３８は、受信状態を、この一致すると判定されたプリンタ名のプリンタに対する印刷指示情報の受信を開始すべき受信開始状態に設定する（ステップ３５８）。一方、プリンタリストに含まれるプリンタ名が宛先プリンタ名と一致しないと判定されれば、受信状態設定部３８は、受信状態を、受信開始状態に設定せず、受信停止状態のままにしておく。
その後、プリンタ情報比較部３７は、プリンタリストにまだ取り出していないプリンタ名があるかどうかを判定する（ステップ３５９）。そして、そのようなプリンタがあると判定すれば、ステップ３５７へ戻り、そのようなプリンタがないと判定すれば、ステップ３６０へ進む。また、ステップ３５２でリソースがプリントサーバでないと判定された場合、及び、ステップ３５３で自装置でそのプリントサーバが動作していないと判定された場合も、ステップ３６０へ進む。これにより、リソースリスト取得部３３は、まだ取り出していないリソースがあるかどうかを判定する（ステップ３６０）。そして、そのようなリソースがあると判定すれば、ステップ３５２へ戻り、そのようなリソースがないと判定すれば、処理を終了する。
【００３８】
以上、本実施の形態における情報処理装置１０の構成及び動作について述べてきた。
ところで、本実施の形態では、１台の情報処理装置１０上で複数の仮想プリントサーバ２０が起動する状態が、図５に示したように、各仮想プリントサーバ２０が動作していた他の情報処理装置１０に障害が発生したことにより生じたものであることを前提としたが、これには限らない。１台の情報処理装置１０上で複数の仮想プリントサーバ２０が起動する状態が、他の情報処理装置１０に障害が発生したこと以外の何らかの理由により生じたものであることを前提としてもよい。
【００３９】
尚、本実施の形態を実現するプログラムは、通信手段により提供することはもちろん、ＣＤ−ＲＯＭ等の記録媒体に格納して提供することも可能である。
【符号の説明】
【００４０】
１０…情報処理装置、２０…仮想プリントサーバ、２１…第１プリンタドライバ、２２…ＰＤＬ変換ソフトウェア、２３…第２プリンタドライバ、３０…ＰＤＬ変換ソフトウェア起動部、３１…クラスタ管理部、３２…ネットワーク情報管理部、３３…リソースリスト取得部、３４…プリントサーバ動作判定部、３５…プリントサーバ情報取得部、３６…宛先プリンタ情報取得部、３７…プリンタ情報比較部、３８…受信状態設定部、４０…画像処理装置、８０…ネットワーク
【図１】
2014164527.tif 000003
【図２】
2014164527.tif 000004
【図３】
2014164527.tif 000005
【図４】
2014164527.tif 000006
【図５】
2014164527.tif 000007
【図６】
2014164527.tif 000008
【図７】
2014164527.tif 000009
【図８】
2014164527.tif 000010