(57)【要約】【課題】情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させる。【解決手段】第１制御部は、第１記憶部に情報を記憶させるときに、第２記憶部に同一の情報を記憶させることによりミラーリングを行う書き込み処理を実行し、第１制御部による情報を読み出すタスクと第２制御部による情報を読み出すタスクのいずれか一方のタスクが発生したとき、他方のタスクが発生していない場合は、第１制御部及び第２制御部は第１記憶部から情報を読み出し、第１制御部による情報を読み出すタスクと第２制御部による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生した場合は、第１制御部及び第２制御部のいずれか一方は第１記憶部から情報を読み出し、他方は第２記憶部から情報を読み出す。【選択図】図６
2019049787.tif 000002
【特許請求の範囲】
【請求項１】
情報を記憶する第１記憶部と、
情報を記憶する第２記憶部と、
前記第１記憶部及び前記第２記憶部に記憶された情報を読み出し可能な第１制御部と、
前記第１記憶部及び前記第２記憶部に記憶された情報を読み出し可能な第２制御部と、を備え、
前記第１制御部は、前記第１記憶部に情報を記憶させるときに、前記第２記憶部に同一の情報を記憶させることによりミラーリングを行う書き込み処理を実行し、
前記第１制御部による情報を読み出すタスクと前記第２制御部による情報を読み出すタスクのいずれか一方のタスクが発生したとき、他方のタスクが発生していない場合は、前記第１制御部又は前記第２制御部は第１記憶部から情報を読み出し、
前記第１制御部による情報を読み出すタスクと前記第２制御部による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生した場合は、タスクを実行中の前記第１制御部及び前記第２制御部のいずれか一方は前記第１記憶部から情報を読み出し、他方は前記第２記憶部から情報を読み出す
ことを特徴とする情報処理装置。
【請求項２】
前記第１制御部は、
前記第１制御部による情報を読み出すタスクと前記第２制御部による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生したことを検知し、
他方のタスクを実行する前記第１制御部又は前記第２制御部が前記第２記憶部から情報を読み出すように制御する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１制御部は、
前記ミラーリングを行う書き込み処理を実行したとき、前記第２記憶部に記憶させた情報のリストを作成し、
前記第１制御部による情報を読み出すタスクと前記第２制御部による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生したことを検知したとき、前記リストを参照し、他方のタスクにおいて読み出す情報が前記第２記憶部に記憶されているか否かを判定し、
他方のタスクにおいて読み出す情報が前記第２記憶部に記憶されていると判定した場合は、他方のタスクを実行する前記第１制御部又は前記第２制御部が前記第２記憶部から情報を読み出すように制御する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１制御部は、前記第１記憶部に情報を記憶させる処理と、前記ミラーリングを行う書き込み処理とを、同時に行う
ことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第２制御部は、
ＤＭＡコントローラを有し、
前記ＤＭＡコントローラを介して、前記第１記憶部又は前記第２記憶部から情報を読み出す
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ミラーリングの技術を採用する情報処理装置に関する。
【背景技術】
【０００２】
従来から、データを格納する記憶装置として、例えばハードディスクなどの磁気ディスクを備える情報処理装置には、記憶装置の障害の対策として、ミラーリングの技術を採用するものがある。ミラーリングとは、複数の記憶装置に同一のデータを格納することである。
【０００３】
引用文献１では、ミラード構成のディスク装置を備え、２つ以上の読み込み要求が連続し、かつ２台のディスクが正常である場合には、各ディスクのヘッド位置を考慮してヘッドの位置が近いどちらか一方のディスク装置に対して読み込み要求を発行する装置が開示されている。
【０００４】
引用文献２では、ミラーリングシステムを構成する一の記憶装置に設けられた第１記憶領域及び他の記憶装置に設けられた第２記憶領域のアクセススピードを取得し、アクセススピードが高い記憶装置を選択してデータを読み出すＭＦＰ(Multi Function Printer:複合機)コントローラが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平５−１６５５７９号公報
【特許文献２】特開２０１０−２６９６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、ミラーリングの技術を採用し、且つ、記憶装置に格納された情報を読み出し可能な複数のハードウェアを備える情報処理装置では、情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させることが望まれている。
【０００７】
しかしながら、特許文献１や特許文献２に開示された技術では、複数のハードウェアで、記憶装置に格納された情報を読み出すタスクが同時に発生する場合、複数のハードウェアが同時に同一の記憶装置にアクセスする可能性がある。この場合、各ハードウェアと記憶装置とを接続するバスでのアクセスの衝突が発生する。また、いずれかのハードウェアが情報を読み出した後で、他のハードウェアが情報を読み出したり、両ハードウェアによる情報の読み出しを並列的に行ったりする制御が必要となる。このため、情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させることが困難であった。
【０００８】
本発明は、上記の状況に鑑みてなされたものであり、情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させることを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決し、本発明の目的を達成するため、本発明の情報処理装置は、情報を記憶する第１記憶部と、情報を記憶する第２記憶部と、第１記憶部及び第２記憶部に記憶された情報を読み出し可能な第１制御部と、第１記憶部及び第２記憶部に記憶された情報を読み出し可能な第２制御部と、を備える。第１制御部は、第１記憶部に情報を記憶させるときに、第２記憶部に同一の情報を記憶させることによりミラーリングを行う書き込み処理を実行し、第１制御部による情報を読み出すタスクと第２制御部による情報を読み出すタスクのいずれか一方のタスクが発生したとき、他方のタスクが発生していない場合は、第１制御部又は第２制御部は第１記憶部から情報を読み出し、第１制御部による情報を読み出すタスクと第２制御部による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生した場合は、タスクを実行中の第１制御部及び第２制御部のいずれか一方は第１記憶部から情報を読み出し、他方は第２記憶部から情報を読み出す。
【発明の効果】
【００１０】
本発明によれば、情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させることができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係るミラーリング構成の記憶装置を備えた画像形成装置の概要を示す図である。
【図２】図１の画像形成装置の構成例を示すブロック図である。
【図３】図１の画像形成装置の要部を説明するための図である。
【図４】本発明の実施形態に係るデータ管理テーブルを示す図である。
【図５】本発明の実施形態に係るタスク開始コマンド受信時処理の一例を示すフローチャートである。
【図６】本発明の実施形態に係るタスク開始処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明を実施するための形態（以下、実施形態）を詳細に説明する。
【００１３】
［画像形成装置の概要］
まず、本発明を採用した情報処理装置としての画像形成装置の概要を図１乃至図３を用いて説明する。
図１は、ミラーリング構成の記憶装置を備えた画像形成装置１の概要を示す図である。図２は、画像形成装置１の構成例を示すブロック図である。また、図３は、画像形成装置１の要部を説明するための図である。
画像形成装置１は、図１に示すように第１画像読取部１９と、画像形成部１８を備える。第１画像読取部１９は、ユーザーにより原稿台にセットされた原稿の画像を読み取る。
【００１４】
画像形成部１８は、第１画像読取部１９が原稿を読み取って生成したスキャン画像データや、図示しないユーザー端末等のネットワーク上の外部装置から受信した原稿のデータに基づいて、トナー等の色材を用いて用紙上に画像を形成する。
【００１５】
また、画像形成装置１は、画像形成部１８より下流の用紙の搬送経路上に、画像が形成された用紙の用紙面を読み取る第２画像読取部２２を備えている。画像形成装置１は、第２画像読取部２２が用紙面を読み取ることで生成したスキャン画像データに基づいて、色ずれ等の異常を検出する検査を実施する。
【００１６】
画像形成装置１は、図２に示すように、第１制御部１１、第１記憶部１２、第２記憶部１３、操作部１４、表示部１５、通信部１６、画像処理部１７、画像形成部１８、第１画像読取部１９、画像検査部２０、第２制御部２１及び第２画像読取部２２を備えて構成されている。これらは、互いに内部バスで接続されている。
【００１７】
第１制御部１１は、第１記憶部１２に記憶されているプログラムを読み出し、当該プログラムを実行することにより画像形成装置１の各部を制御する。第１制御部１１は、図３に示すように、ＣＰＵ（Central Processing Unit）３０、ＲＡＭ（Random Access Memory）３１、サウスブリッジ部３３、ＤＭＡ（Direct Memory Access）コントローラ（図示省略）等により構成されている。また、ＣＰＵ３０は、コア部３２を備える。コア部３２は、例えば画像処理部１７と接続されている。
【００１８】
サウスブリッジ部３３は、ＣＰＵ３０と各種周辺装置とを接続するためのチップセットである。サウスブリッジ部３３には、例えば画像検査部２０、第２制御部２１、第１記憶部１２や第２記憶部１３が接続されている。
【００１９】
ＲＡＭ３１には、第１記憶部アクセスフラグ格納領域が設けられている。第１記憶部アクセスフラグは、第２制御部２１が第１記憶部１２にアクセスするタスクを実行しているか否かを示すフラグである。第１記憶部アクセスフラグ格納領域に「１」が格納されている場合は、第２制御部２１が第１記憶部１２にアクセスするタスクを実行していることを示し、「０」が格納されている場合は、第２制御部２１が第１記憶部１２にアクセスするタスクを実行していないことを示す。
【００２０】
第１制御部１１は、第１画像読取部１９が読み取って生成したスキャン画像データを、ＲＡＭ３１、第１記憶部１２及び第２記憶部１３に記憶させる。また、第１制御部１１は、スキャン画像データを画像処理部１７により画像処理させて、画像処理後の画像データに基づいて、画像形成部１８により用紙上に画像を形成させる。
【００２１】
第１記憶部１２は、書き換え可能なハードディスクなどの磁気ディスクからなる大容量メモリーにより構成されている。第１記憶部１２は、第１制御部１１により読み取り可能なプログラム、プログラムの実行時に用いられるデータ等を記憶している。
第２記憶部１３は、第１記憶部１２と同様に、書き換え可能なハードディスクなどの磁気ディスクからなる大容量メモリーで構成されている。
【００２２】
操作部１４及び表示部１５は、図１に示すように画像形成装置１の上部にユーザーインターフェイスとして設けられている。
操作部１４は、ユーザーの操作に応じた操作信号を生成し、第１制御部１１に出力する。操作部１４としては、例えばキー、表示部１５と一体に構成されたタッチパネル等が挙げられる。
【００２３】
表示部１５は、第１制御部１１の指示にしたがって操作画面等を表示する。表示部１５としては、ＬＣＤ（Liquid Crystal Display）、ＯＥＬＤ（Organic Electro Luminescence Display）等を用いることができる。
【００２４】
通信部１６は、ユーザー端末、サーバー、他の画像形成装置等のネットワーク上の外部装置と通信する。例えば、通信部１６は、ユーザー端末からネットワークを介してページ記述言語（ＰＤＬ：Page Description Language）で記述された原稿のデータを受信する。
【００２５】
画像処理部１７は、ＡＳＩＣ（application specific integrated circuit）などの集積回路によって構成されている。画像処理部１７は、ページ記述言語で記述された原稿のデータに基づいて、画素ごとに階調値を有するビットマップ形式の画像データを、Ｃ（シアン）、Ｍ（マジェンタ）、Ｙ（イエロー）及びＫ（黒）の色ごとに生成する。また、画像処理部１７は、第１画像読取部１９が読み取った原稿のスキャン画像データに基づいて、Ｃ（シアン）、Ｍ（マジェンタ）、Ｙ（イエロー）及びＫ（黒）の色ごとのビットマップ形式の画像データを生成する。階調値は、画像の濃淡を表すデータ値であり、例えば８ｂｉｔのデータ値は０〜２５５階調の濃淡を表す。
【００２６】
また、画像処理部１７は、生成した画像データに必要な画像処理、例えば階調処理、中間調処理を施す。
階調処理は、各画素の階調値を、用紙上に形成された画像の濃度特性が目標の濃度特性と一致するように補正された階調値に変換する処理である。また、中間調処理は、例えば誤差拡散処理、組織的ディザ法を用いたスクリーン処理等である。
【００２７】
画像形成部１８は、画像処理部１７により生成された画像データの各画素の階調値に応じて、複数の色からなる画像を用紙上に形成する。
画像形成部１８は、図１に示すように、４つの書込みユニット１８１、中間転写ベルト１８２、２次転写ローラー１８３、定着装置１８４、給紙トレイ１８５及び反転機構１８６を備えている。各書込みユニット１８１は、中間転写ベルト１８２のベルト面に沿って直列に配置されている。中間転写ベルト１８２は、複数のローラーにより巻き回されて回転する。複数のローラーの１つは２次転写ローラー１８３を構成している。２次転写ローラー１８３及び定着装置１８４は、給紙トレイ１８５から搬送される用紙の搬送経路上に配置されている。給紙トレイ１８５は、用紙を収容している。
【００２８】
４つの書込みユニット１８１は、それぞれＣ、Ｍ、Ｙ及びＫの色の画像を形成する。各書込みユニット１８１の構成は同じであり、露光部１８ａ、感光体１８ｂ、現像部１８ｃ、帯電部１８ｄ及びクリーニング部１８ｅを備えている。
各書込みユニット１８１は、帯電部１８ｄにより感光体１８ｂに電圧を印加して帯電させた後、各色Ｃ、Ｍ、Ｙ及びＫに対応する画像データの各画素の階調値に応じて露光部１８ａによりレーザービームを照射し、感光体１８ｂを露光する。各書込みユニット１８１が現像部１８ｃによりトナー等の色材を供給して、感光体１８ｂ上に形成された静電潜像を現像すると、各書込みユニット１８１の感光体１８ｂ上に各色の画像が形成される。
【００２９】
各感光体１８ｂ上の画像は中間転写ベルト１８２上に順次重ねて転写され、中間転写ベルト１８２上には複数の色からなる画像が形成される。画像の転写後、各書込みユニット１８１は、転写後に感光体１８ｂ上に残留する色材をクリーニング部１８ｅにより除去する。
給紙トレイ１８５により用紙を給紙し、２次転写ローラー１８３によって中間転写ベルト１８２上の複数の色からなる画像を用紙上に転写すると、定着装置１８４により当該用紙を加熱及び加圧して、画像を用紙に定着させる。用紙の両面に画像を形成する場合は、反転機構１８６により用紙面を反転させて再度２次転写ローラー１８３へ用紙を搬送する。
【００３０】
第２画像読取部２２は、図１に示すように用紙の搬送経路上に配置されるラインセンサー、エリアセンサー等である。第２画像読取部２２は、画像形成部１８により画像が形成された用紙面を読み取って、ビットマップ形式のスキャン画像データを生成する。
【００３１】
画像検査部２０は、ＡＳＩＣなどの集積回路によって構成されている。画像検査部２０は、第２画像読取部２２により生成されたスキャン画像データに各種画像処理を施す。なお、第１制御部１１は、画像検査部２０によって各種画像処理が施されたスキャン画像データを、第１記憶部１２及び第２記憶部１３に記憶させる。
【００３２】
第２制御部２１は、図３に示すように、ＧＰＵ（Ｇｒａｐｈｉｃ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）４０と、ＤＭＡコントローラ４１を有する。ＤＭＡコントローラ４１は、あらかじめ決められた動作を行うモジュールで第１記憶部１２及び第２記憶部１３からデータを読み出す。
【００３３】
第２制御部２１のＧＰＵ４０は、第１記憶部１２及び第２記憶部１３に第２画像読取部２２が生成したスキャン画像データ（以下の説明において、「出力スキャン画像データ」と称する場合がある）が記憶されると、画像検査処理を実行する。画像検査処理において、ＧＰＵ４０は、第１記憶部１２又は第２記憶部１３から出力スキャン画像データを読み出す。また、ＧＰＵ４０は、読み出した出力スキャン画像データに対応する第１画像読取部１９が生成したスキャン画像データ（以下の説明において、「原稿スキャン画像データ」と称する場合がある）を、第１記憶部１２又は第２記憶部１３から読み出す。そして、ＧＰＵ４０は、読み出した出力スキャン画像データと原稿スキャン画像データとを比較することにより、出力スキャン画像データ中の異常を検出する。画像検査処理により検出できる異常の種類には、画像の欠陥、色ずれ及び位置ずれがあり、画像検査処理では、これらの種類のうちの少なくとも１種類の異常を検出する。
【００３４】
欠陥の検出時、第２制御部２１のＧＰＵ４０は、スキャン画像中のスジ、しわ、汚れ、画像の誤り、消失等の欠陥を検出する。例えば、ＧＰＵ４０は、出力スキャン画像データと原稿スキャン画像データの特徴点を決定し、当該特徴点の特徴量を算出して判別分析法により類似するか否かを判別し、類似しないと判別された特徴点を欠陥が生じた画像領域として検出する。
【００３５】
色ずれの検出時、第２制御部２１のＧＰＵ４０は、階調値が異なる画像領域を色ずれが生じた画像領域として検出する。ＧＰＵ４０は、原稿スキャン画像データの階調値を基準値として、出力スキャン画像データの階調値と基準値との差を色ずれ量として算出する
【００３６】
位置ずれの検出時、第２制御部２１のＧＰＵ４０は、位置が異なる画像領域を位置ずれが生じた画像領域として検出する。ＧＰＵ４０は、出力スキャン画像データと原稿スキャン画像データの位置ずれ検出用の画像の位置、例えば用紙の端部から所定の画像までの距離等を比較し、位置が異なる画像領域を位置ずれが生じた画像領域として検出する。
【００３７】
［ミラーリング構成］
次に、画像形成装置１におけるミラーリング構成について説明する。上述のとおり、第１制御部１１は、データ、例えば第１画像読取部１９が生成した原稿スキャン画像データ、及び、第２画像読取部２２が生成した出力スキャン画像データ、を第１記憶部１２及び第２記憶部１３に記憶させる。具体的には、第１制御部１１は、第１記憶部１２にデータを記憶させる際に、同一のデータを、同時（リアルタイム）に、第２記憶部１３にも記憶させることによりミラーリングを行う書き込み処理を実行する。すなわち、画像形成装置１は、ミラーリング（ＲＡＩＤ１：Ｒｅｄｕｎｄａｎｔ Ａｒｒａｙｓ ｏｆ Ｉｎｅｘｐｅｎｓｉｖｅ Ｄｉｓｋｓ １）の技術を採用している。これによって、画像形成装置１は、第１記憶部１２をマスター領域とし、第２記憶部１３をミラーリング領域とするミラーリング構成を備えている。
【００３８】
なお、本実施形態では、第２記憶部１３を第１記憶部１２のバックアップとして機能させるため、原則的には、第１記憶部１２にデータを記憶させる際には、同一のデータが、同時に、第２記憶部１３にも記憶される。しかしこれに代えて、第１記憶部１２に所定のデータを記憶させる際にのみ、同一のデータを、同時に、第２記憶部１３にも記憶させるようにしてもよい。
【００３９】
図４は、本実施形態に係るデータ管理テーブルＴ１を示す図である。
データ管理テーブルＴ１は、第１記憶部１２に記憶されている。第１制御部１１は、第１記憶部１２にデータを記憶させる際に、データ管理テーブルＴ１に記憶させるデータについての情報を追加する。
【００４０】
データ管理テーブルＴ１は、ＩＤ、ファイル名、ミラーリングフラグ、第１記憶部アドレス、第２記憶部アドレスの各フィールドを有している。ＩＤフィールドには、データ生成時にデータに付される固有のＩＤ（例えば「１」、「２」）が格納される。ファイル名フィールドには、データ生成時にデータに付される名称が格納される。
【００４１】
ミラーリングフラグは、第１制御部１１が、第１記憶部１２に記憶させるデータと、同一のデータを、第２記憶部１３に記憶させる場合には「１」が格納され、記憶させない場合には「０」が格納される。すなわち、ミラーリングフラグが「１」のデータは、第１記憶部１２及び第２記憶部１３の両方に記憶されていることになる。
【００４２】
第１記憶部アドレスは、第１記憶部１２において当該データが記憶されている領域の場所を示すアドレスが格納される。第２記憶部アドレスは、第２記憶部１３において当該データが記憶されている領域の場所を示すアドレスが格納される。これらアドレスは、第１制御部１１及び第２制御部２１が、第１記憶部１２及び第２記憶部１３からデータを読み出す際に用いられる。なお、第１制御部１１及び第２制御部２１が、データを読み出す態様については、後述する。
【００４３】
［データの読み出しに係る処理］
次に、図５及び図６を参照して、記憶されているデータの読み出しに係る処理について、説明する。
図５は、タスク開始コマンド受信時処理の一例を示すフローチャートである。図６は、タスク開始処理の一例を示すフローチャートである。
【００４４】
本実施形態においては、画像処理部１７が上述の各種画像処理を行う際に、第１制御部１１のＣＰＵ３０が、第１記憶部１２又は第２記憶部１３から原稿スキャン画像データを読み出す。また、第２制御部２１のＧＰＵ４０が、上述の画像検査処理を行う際に、第１記憶部１２又は第２記憶部１３から原稿スキャン画像データ及び出力スキャン画像データを読み出す。すなわち、これらの処理には、記憶されているデータを読み出すタスクが含まれる。
【００４５】
［タスク開始コマンド受信時処理］
第２制御部２１のＧＰＵ４０は、記憶されているデータを読み出すタスクを開始する際、第１制御部１１にタスク開始コマンドを送信する。タスク開始コマンドには、読み出すデータのＩＤ又はデータのファイル名が含まれている。
【００４６】
第１制御部１１のＣＰＵ３０は、第２制御部２１からタスク開始コマンドを受信すると、図５に示すタスク開始コマンド受信時処理を行う。
タスク開始コマンド受信時処理において、第１制御部１１のＣＰＵ３０は、まず自身が第１記憶部１２にアクセスするタスクを実行しているか否かを判定する（Ｓ１）。第１記憶部１２にアクセスするタスクを実行している場合（ステップＳ１がＹＥＳ判定の場合）、第１制御部１１のＣＰＵ３０は、第２制御部２１が読み出すデータが第２記憶部１３に記憶されているか否かを判定する（Ｓ２）。具体的には、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１（図４参照）を参照し、受信したタスク開始コマンドに含まれているデータのＩＤ又はデータのファイル名に対応するミラーリングフラグの状態に応じて、読み出すデータが第２記憶部１３に記憶されているか否かを判定する。
【００４７】
第２制御部２１が読み出すデータが第２記憶部１３に記憶されていない場合（Ｓ２がＮＯ判定の場合）、第１制御部１１のＣＰＵ３０は、処理をステップＳ５に移行させる。一方、第２制御部２１が読み出すデータが第２記憶部１３に記憶されている場合（Ｓ２がＹＥＳ判定の場合）、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１を参照し、読み出すデータの第２記憶部アドレスを第２制御部２１へ通知する（Ｓ３）。具体的には、第１制御部１１のＣＰＵ３０は、第２記憶部アドレスを含むコマンドを第２制御部２１へ送信する。ステップＳ３を実行後、第１制御部１１のＣＰＵ３０は、タスク開始コマンド受信時処理を終了する。
【００４８】
説明をステップＳ１に戻し、ステップＳ１の処理で、第１記憶部１２にアクセスするタスクを実行していないと判定する場合（ステップＳ１がＮＯ判定の場合）、第１制御部１１のＣＰＵ３０は、ＲＡＭ３１に設けられている第１記憶部アクセスフラグ（第２制御部２１が第１記憶部１２にアクセスするタスクを実行していることを示すフラグ）をＯＮに設定する（Ｓ４）。すなわち、第１制御部１１のＣＰＵ３０は、ＲＡＭ３１の第１記憶部アクセスフラグ格納領域に「１」を格納する。その後、処理をステップＳ５に移行させる。
【００４９】
ステップＳ２で、第２制御部２１が読み出すデータが第２記憶部１３に記憶されていないと判定する場合（Ｓ２がＮＯ判定の場合）、又は、ステップＳ４の後、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１を参照し、読み出すデータの第１記憶部アドレスを第２制御部２１へ通知する（Ｓ５）。具体的には、第１制御部１１のＣＰＵ３０は、第１記憶部アドレスを含むコマンドを第２制御部２１へ送信する。そして、第１制御部１１のＣＰＵ３０は、タスク開始コマンド受信時処理を終了する。
【００５０】
第２制御部２１のＧＰＵ４０は、第１制御部１１から第２記憶部アドレスを含むコマンドを受信すると、ＤＭＡコントローラ４１に、第２記憶部１３からのデータの読み出しを指示する。また、ＧＰＵ４０は、第１制御部１１から第１記憶部アドレスを含むコマンドを受信すると、ＤＭＡコントローラ４１に、第１記憶部１２からのデータの読み出しを指示する。なお、ステップＳ２及びステップＳ５の処理を経て第１制御部１１から第１記憶部アドレスを含むコマンドが送信された場合は、第１制御部１１が第１記憶部１２からデータを読み出すタスクを終了した後で、第２制御部２１のＧＰＵ４０が、第１記憶部１２からの情報の読み出しを行うことになる。
【００５１】
なお、第２制御部２１のＧＰＵ４０は、記憶されているデータを読み出すタスクを終了する際に、その旨を示すタスク終了コマンドを、第１制御部１１に送信する。第１制御部１１のＣＰＵ３０は、タスク終了コマンドを受信すると、第１記憶部アクセスフラグをＯＦＦに設定する。具体的には、第１制御部１１のＣＰＵ３０は、ＲＡＭ３１の第１記憶部アクセスフラグ格納領域に「０」を格納する。
【００５２】
［タスク開始処理］
第１制御部１１のＣＰＵ３０は自身が記憶されているデータを読み出すタスクを開始する際に、図６に示すタスク開始処理を行う。
タスク開始処理において、第１制御部１１のＣＰＵ３０は、第１記憶部１２にアクセスする他のタスクが発生しているか否かを判定する（Ｓ１１）。具体的には、ＲＡＭ３１の第１記憶部アクセスフラグ格納領域に「１」が格納されているか否かを確認する。
【００５３】
第１記憶部１２にアクセスする他のタスクが発生していない場合（ステップＳ１１がＮＯ判定の場合）、第１制御部１１のＣＰＵ３０は、第１記憶部１２にアクセスする（Ｓ１２）。具体的には、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１（図４参照）を参照し、読み出すデータの第１記憶部アドレスが示す領域にアクセスし、データを読み出す。そして、第１制御部１１のＣＰＵ３０は、タスク開始処理を終了する。
【００５４】
一方、第１記憶部１２にアクセスする他のタスクが発生している場合（ステップＳ１１がＹＥＳ判定の場合）、第１制御部１１のＣＰＵ３０は、読み出すデータが第２記憶部１３に記憶されているか否かを判定する（Ｓ１３）。具体的には、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１（図４参照）を参照し、読み出すデータのＩＤ又はデータのファイル名に対応するミラーリングフラグの状態に基づいて、読み出すデータが第２記憶部１３に記憶されているか否かを判定する。読み出すデータが第２記憶部１３に記憶されている場合（Ｓ１３がＹＥＳ判定の場合）、第１制御部１１のＣＰＵ３０は、データ管理テーブルＴ１を参照し、第２記憶部１３の第２記憶部アドレスが示す領域にアクセスし、データを読み出す（Ｓ１４）。そして、第１制御部１１のＣＰＵ３０は、タスク開始処理を終了する。
【００５５】
一方、ステップＳ１３で、読み出すデータが第２記憶部１３に記憶されていないと判定する場合（Ｓ１３がＮＯ判定の場合）、第２制御部２１が他のタスクを終了した後、すなわち、他のタスクに係るタスク終了コマンドを受信した後、第１制御部１１のＣＰＵ３０は、第１記憶部１２の第１記憶部アドレスが示す領域にアクセスし、データを読み出す（Ｓ１５）。そして、第１制御部１１のＣＰＵ３０は、タスク開始処理を終了する。なお、第１制御部１１のＣＰＵ３０は、第１制御部１１が備えるＤＭＡコントローラを用いて、記憶されているデータを読み出してもよい。
【００５６】
以上説明した実施形態に係る画像形成装置１では、第１制御部１１が第１記憶部１２に記憶されている情報を読み出すタスクを実行しているときに、第２制御部２１が記憶されている情報を読み出すタスクを開始する場合は、第２制御部２１は、第２記憶部１３から情報を読み出す。また、第２制御部２１が第１記憶部１２に記憶されている情報を読み出すタスクを実行しているときに、第１制御部１１が記憶されている情報を読み出すタスクを開始する場合は、第１制御部１１は、第２記憶部１３から情報を読み出す。すなわち、第１制御部１１による情報を読み出すタスクと第２制御部２１による情報を読み出すタスクのいずれか一方のタスクの実行中に他方のタスクが発生した場合は、第１制御部１１及び第２制御部２１のいずれか一方は第１記憶部から情報を読み出し、他方は第２記憶部から情報を読み出す。
【００５７】
このため、一つの記憶装置に複数のハードウェアからのアクセスが集中しないため、記憶装置と各部を接続するバスでのアクセスの衝突の発生を防止できる。また、先に発生したタスクの完了を待つことや、一つの記憶装置へのアクセスを並列的に行う必要がない。このため、情報を読み出す両タスクの完了に要する時間を短縮することができる。すなわち、情報を読み出すための時間を短縮して装置全体としてのパフォーマンスを向上させることができる。
【００５８】
また、第２制御部２１が情報を読み出す際に、ＧＰＵ４０は、第２制御部２１のＤＭＡコントローラ４１に情報の読み出しを指示する。ここで、ＧＰＵ４０が、情報の読み出しに、第１制御部１１が有するＤＭＡコントローラ（図示省略）を用いる場合は、第１制御部１１及び第２制御部２１で情報を読み出すタスクが発生していると、ＤＭＡコントローラへの指示（命令）が競合し、障害が発生する可能性がある。本実施形態では、上述のとおり、ＧＰＵ４０は、第２制御部２１のＤＭＡコントローラ４１に情報の読み出しを指示するため、上記障害の発生を防止することができる。
【００５９】
さらに、本発明は上述した実施形態例に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、その他種々の応用例、変形例を取り得ることは勿論である。
【００６０】
例えば、本実施形態では、第２制御部２１のＧＰＵ４０は、記憶されているデータを読み出すタスクを開始する際、第１制御部１１にタスク開始コマンドを送信する態様を説明した。しかしながら、第２制御部２１のＧＰＵ４０は、記憶されているデータを読み出すタスクに限らず、何らかのタスクを開始する際に、第１制御部１１にタスク開始コマンドを送信してもよい。この場合のタスク開始コマンドには、第２制御部２１で開始するタスクが、記憶されているデータを読み出すタスクであるか否かを示す情報が含まれる。また、第１制御部１１のＣＰＵ３０は、タスク開始コマンド受信時処理において、図５に示すステップＳ１の処理の前に、受信したタスク開始コマンドに基づいて、第２制御部２１が開始するタスクが記憶されているデータを読み出すタスクであるか否かを判定する処理を行う。そして、データを読み出すタスクでない場合は、タスク開始コマンドを終了し、一方で、データを読み出すタスクの場合は、ステップＳ１以降の処理を行う。
【００６１】
また、本実施形態では、第２制御部２１がＧＰＵ４０を有する態様を説明した。しかし、ＧＰＵ４０に代えて、第２制御部２１が、ＣＰＵや記憶部に記憶されている情報を読み出し可能な他の処理装置を有していてもよい。
【００６２】
また、本実施形態では、情報処理装置として画像形成装置１を例に説明したが、情報処理装置はこれに限定されない。例えば、情報処理装置は、クライアント装置に各種情報を提供可能なネットワーク上のサーバーであってもよい。
【符号の説明】
【００６３】
１…画像形成装置、  １１…第１制御部、  １２…第１記憶部、  １３…第２記憶部、  １４…操作部、  １５…表示部、  １６…通信部、  １７…画像処理部、  １８…画像形成部、  １９…第１画像読取部、  ２０…画像検査部、  ２１…第２制御部、  ２２…第２画像読取部、  ３０…ＣＰＵ、  ３１…ＲＡＭ、  ３２…コア部、  ３３…サウスブリッジ部、  ４０…ＧＰＵ、  ４１…ＤＭＡコントローラ、  Ｔ１…データ管理テーブル
【図１】
2019049787.tif 000003
【図２】
2019049787.tif 000004
【図３】
2019049787.tif 000005
【図４】
2019049787.tif 000006
【図５】
2019049787.tif 000007
【図６】
2019049787.tif 000008