(57)【特許請求の範囲】
【請求項１】
第１および第２の固定記憶装置と、
故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、
前記第１および前記第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを判別する判別手段と、
前記判別手段が前記リビルド処理中であると判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度と、前記リビルド処理中であるデータの優先度とを取得する優先度取得手段と、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中であるデータの優先度よりも高いか否かを判別する優先度判別手段と、
前記優先度判別手段が、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いと判別した場合、前記リビルド処理を停止する停止手段と、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開手段とを備えた、画像形成装置。
【請求項２】
前記判別手段は、
前記ＣＰＵから前記少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記ＣＰＵからの要求に従って、前記コントローラーから前記ＣＰＵへ前記リビルド処理中であるか否かを示す情報を送信する情報送信手段と、
前記情報送信手段から受信した情報に基づいて、前記リビルド処理中であるか否かを、前記ＣＰＵを用いて判別するＣＰＵ側判別手段とを含み、
前記優先度取得手段は、
前記リビルド処理中であると前記判別手段にて判別した場合に、前記ＣＰＵを用いて前記リビルド処理中であるデータを読み出すＣＰＵ読出手段と、
前記ＣＰＵ読出手段にて読み出したデータの優先度を、前記ＣＰＵを用いて特定する優先度特定手段とを含み、
前記優先度判別手段は、
前記優先度特定手段にて特定した優先度に基づいて、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを、前記ＣＰＵを用いて判別するＣＰＵ側優先度判別手段を含み、
前記停止手段は、
前記ＣＰＵから前記コントローラーへ前記リビルド処理の停止を要求する停止要求手段を含み、
前記再開手段は、
前記ＣＰＵから前記コントローラーへ前記リビルド処理の再開を要求する再開要求手段を含む、請求項１に記載の画像形成装置。
【請求項３】
前記判別手段は、
前記ＣＰＵから前記少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを、前記コントローラーを用いて判別するコントローラー側判別手段を含み、
前記優先度取得手段は、
前記リビルド処理中であると前記判別手段にて判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度を指標する情報を、前記ＣＰＵから前記コントローラーに送信するＣＰＵ側優先度送信手段を含み、
前記優先度判別手段は、
前記ＣＰＵ側優先度送信手段から受信した情報に基づいて、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを、前記コントローラーを用いて判別するコントローラー側優先度判別手段を含む、請求項１に記載の画像形成装置。
【請求項４】
前記リビルド処理を開始する場合に、前記リビルド処理の開始を前記コントローラーから前記ＣＰＵに通知する開始通知手段と、
前記リビルド処理を終了する場合に、前記リビルド処理の終了を前記コントローラーから前記ＣＰＵに通知する終了通知手段とをさらに備え、
前記判別手段は、
前記開始通知手段および前記終了通知手段の各々の通知に基づいて、前記リビルド処理中であるか否かを、前記ＣＰＵを用いて判別する通知判別手段を含む、請求項１に記載の画像形成装置。
【請求項５】
第１および第２の固定記憶装置と、
故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、
前記第１および前記第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置に対してデータを書き込むジョブである書込ジョブの実行指示を受け付ける書込ジョブ受付手段と、
前記書込ジョブの実行指示を受け付けた場合に、前記ＣＰＵを用いて、前記書込ジョブの対象となる書込データを、前記書込データを一時的に保存するためのメモリに書き込むメモリ書込手段と、
前記メモリ書込手段にて前記書込データを前記メモリに書き込む場合に、前記メモリの空き容量が第１の閾値未満であるか否かを判別する第１の残量判別手段と、
前記第１の残量判別手段が、前記メモリの空き容量が前記第１の閾値未満であると判別することにより、前記ＣＰＵから前記少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理を停止する停止手段と、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開手段とを備えた、画像形成装置。
【請求項６】
第１および第２の固定記憶装置と、
故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、
前記第１および前記第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置からデータを読み出すジョブである読出ジョブの実行指示を受け付ける読出ジョブ受付手段と、
前記読出ジョブの実行指示の受け付けにより、前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理を停止する停止手段と、
前記読出ジョブの実行指示を受け付けた場合であって、前記停止手段にて前記リビルド処理を停止した後に、前記ＣＰＵを用いて、前記読出ジョブの対象となる読出データを前記第１または前記第２の固定記憶装置から前記読出データを一時的に保存するためのメモリに読み出す読出手段と、
前記読出手段にて前記読出データを前記メモリに読み出す場合に、前記メモリの空き容量が第２の閾値未満であるか否かを判別する第２の残量判別手段と、
前記第２の残量判別手段が、前記メモリの空き容量が前記第２の閾値未満であると判別することにより、前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開手段とを備えた、画像形成装置。
【請求項７】
前記再開手段にて前記リビルド処理を再開した後で、未出力の前記読出データが存在する場合に、前記メモリの空き容量が第３の閾値以上であるか否かを判別する第３の残量判別手段と、
前記メモリの空き容量が前記第３の閾値以上であると前記第３の残量判別手段にて判別した場合に、前記リビルド処理を再度停止する再度停止手段とをさらに備えた、請求項６に記載の画像形成装置。
【請求項８】
前記リビルド処理は、前記第１の固定記憶装置に記憶されていたデータを複数の分割データに分割し、前記複数の分割データの各々を前記第２の固定記憶装置に順次複製する処理であり、
前記停止手段は、
前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記複数の分割データのうち前記リビルド処理中の分割データの前記リビルド処理が完了してから、次の分割データの前記リビルド処理を開始するまでのウェイト時間を増加するウェイト時間増加手段を含む、請求項１〜７のいずれかに記載の画像形成装置。
【請求項９】
前記コントローラーは、前記第１および第２の固定記憶装置のうち一方の固定記憶装置のデータを他方の固定記憶装置にコピーするミラーリング処理を実行可能である、請求項１〜８のいずれかに記載の画像形成装置。
【請求項１０】
第１および第２の固定記憶装置と、故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、前記第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とを備えた、画像形成装置の制御プログラムであって、
前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを判別する判別ステップと、
前記リビルド処理中であると前記判別ステップにて判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度と、前記リビルド処理中であるデータの優先度とを取得する優先度取得ステップと、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別ステップと、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いと前記優先度判別ステップにて判別した場合に、前記リビルド処理を停止する停止ステップと、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開ステップとをコンピューターに実行させるための、画像形成装置の制御プログラム。
【請求項１１】
前記判別ステップは、
前記ＣＰＵから前記少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記ＣＰＵからの要求に従って、前記コントローラーから前記ＣＰＵへ前記リビルド処理中であるか否かを示す情報を送信する情報送信ステップと、
前記情報送信ステップにおいて受信した情報に基づいて、前記リビルド処理中であるか否かを、前記ＣＰＵを用いて判別するＣＰＵ側判別ステップとを含み、
前記優先度取得ステップは、
前記リビルド処理中であると前記判別ステップにて判別した場合に、前記ＣＰＵを用いて前記リビルド処理中であるデータを読み出すＣＰＵ読出ステップと、
前記ＣＰＵ読出ステップにて読み出したデータの優先度を、前記ＣＰＵを用いて特定する優先度特定ステップとを含み、
前記優先度判別ステップは、
前記優先度特定ステップにて特定した優先度に基づいて、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを、前記ＣＰＵを用いて判別するＣＰＵ側優先度判別ステップを含み、
前記停止ステップは、
前記ＣＰＵから前記コントローラーへ前記リビルド処理の停止を要求する停止要求ステップを含み、
前記再開ステップは、
前記ＣＰＵから前記コントローラーへ前記リビルド処理の再開を要求する再開要求ステップを含む、請求項１０に記載の画像形成装置の制御プログラム。
【請求項１２】
前記判別ステップは、
前記ＣＰＵから前記少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを、前記コントローラーを用いて判別するコントローラー側判別ステップを含み、
前記優先度取得ステップは、
前記リビルド処理中であると前記判別ステップにて判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度を指標する情報を、前記ＣＰＵから前記コントローラーに送信するＣＰＵ側優先度送信ステップを含み、
前記優先度判別ステップは、
前記ＣＰＵ側優先度送信ステップにて受信した情報に基づいて、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを、前記コントローラーを用いて判別するコントローラー側優先度判別ステップを含む、請求項１０に記載の画像形成装置の制御プログラム。
【請求項１３】
第１および第２の固定記憶装置と、故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、前記第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とを備えた、画像形成装置の制御プログラムであって、
前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置に対してデータを書き込むジョブである書込ジョブの実行指示を受け付ける書込ジョブ受付ステップと、
前記書込ジョブの実行指示を受け付けた場合に、前記ＣＰＵを用いて、前記書込ジョブの対象となる書込データを、前記書込データを一時的に保存するためのメモリに書き込むメモリ書込ステップと、
前記メモリ書込ステップにて前記書込データを前記メモリに書き込む場合に、前記メモリの空き容量が第１の閾値未満であるか否かを判別する第１の残量判別ステップと、
前記メモリの空き容量が前記第１の閾値未満であると前記第１の残量判別ステップにて判別することにより、前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理を停止する停止ステップと、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開ステップとをコンピューターに実行させるための、画像形成装置の制御プログラム。
【請求項１４】
第１および第２の固定記憶装置と、故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、前記第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とを備えた、画像形成装置の制御プログラムであって、
前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置からデータを読み出すジョブである読出ジョブの実行指示を受け付ける読出ジョブ受付ステップと、
前記読出ジョブの実行指示を受け付けることにより、前記ＣＰＵから前記第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理を停止する停止ステップと、
前記読出ジョブの実行指示を受け付けた場合であって、前記停止ステップにて前記リビルド処理を停止した後に、前記ＣＰＵを用いて、前記読出ジョブの対象となる読出データを前記第１または前記第２の固定記憶装置から前記読出データを一時的に保存するためのメモリに読み出す読出ステップと、
前記読出ステップにて前記読出データを前記メモリに読み出す場合に、前記メモリの空き容量が第２の閾値未満であるか否かを判別する第２の残量判別ステップと、
前記メモリの空き容量が前記第２の閾値未満であると前記第２の残量判別ステップにて判別することにより、前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開ステップとをコンピューターに実行させるための、画像形成装置の制御プログラム。
【請求項１５】
前記再開ステップにて前記リビルド処理を再開した後で、未出力の前記読出データが存在する場合に、前記メモリの空き容量が第３の閾値以上であるか否かを判別する第３の残量判別ステップと、
前記メモリの空き容量が前記第３の閾値以上であると前記第３の残量判別ステップにて判別した場合に、前記リビルド処理を再度停止する再度停止ステップとをさらにコンピューターに実行させる、請求項１４に記載の画像形成装置の制御プログラム。
【請求項１６】
第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）との間で通信を行うコントローラーであって、
故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うリビルド処理手段と、
前記ＣＰＵから前記第１および前記第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを判別する判別手段と、
前記判別手段が前記リビルド処理中であると判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度と、前記リビルド処理中であるデータの優先度とを取得する優先度取得手段と、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別手段と、
前記優先度判別手段が、前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いと判別した場合、前記リビルド処理を停止する停止手段と、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開手段とを備えた、コントローラー。
【請求項１７】
第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）との間で通信を行うコントローラーの制御プログラムであって、
故障した前記第２の固定記憶装置が復旧した場合に、前記第１の固定記憶装置に記憶されていたデータを、前記第２の固定記憶装置に複製するリビルド処理を行うリビルド処理ステップと、
前記ＣＰＵから前記第１および前記第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、前記リビルド処理中であるか否かを判別する判別ステップと、
前記リビルド処理中であると前記判別ステップにて判別した場合に、前記ＣＰＵによるアクセスの対象となるデータの優先度と、前記リビルド処理中であるデータの優先度とを取得する優先度取得ステップと、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別ステップと、
前記ＣＰＵによるアクセスの対象となるデータの優先度が、前記リビルド処理中のデータの優先度よりも高いと前記優先度判別ステップにて判別した場合、前記リビルド処理を停止する停止ステップと、
前記ＣＰＵから前記少なくとも一方の固定記憶装置へのアクセスが終了した場合に、前記リビルド処理を再開する再開ステップとをコンピューターに実行させる、コントローラーの制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、画像形成装置の制御プログラム、コントローラー、およびコントローラーの制御プログラムに関する。より特定的には、本発明は、リビルド処理を行う画像形成装置、画像形成装置の制御プログラム、コントローラー、およびコントローラーの制御プログラムに関する。
【背景技術】
【０００２】
動画データおよび画像データの高精細化や、ネットワークの普及などに伴い、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの固定記憶装置の大容量化が求められている。固定記憶装置を備えた画像形成装置では、データを高速に読み書きできるようにすること（パフォーマンス性能の向上）と、データを安全に保存すること（バックアップ機能の向上）とが求められる。
【０００３】
画像形成装置が１台の固定記憶装置に全てのデータを記憶する場合には、固定記憶装置に障害が発生すると全てのデータが失われる。特に、ＨＤＤは可動部分を有しているために障害が発生しやすい。
【０００４】
そこで、画像形成装置のパフォーマンス性能やバックアップ機能を向上しうる技術に、複数の固定記憶装置を利用したＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）がある。このＲＡＩＤには、ＲＡＩＤ０、ＲＡＩＤ１などの複数の書込方式が存在する。
【０００５】
ＲＡＩＤ０は、ストライピングと呼ばれる技術である。ＲＡＩＤ０におけるデータの書き込み時には、データがブロック単位で複数の分割データに分割され、複数の分割データの各々が、対応する固定記憶装置に書き込まれる。ＲＡＩＤ０におけるデータの読み出し時には、複数の固定記憶装置の各々から分割データが並行して読み出される。これにより、固定記憶装置への書込速度を向上することができ、画像形成装置のパフォーマンス性能を向上することができる。
【０００６】
ＲＡＩＤ１は、ミラーリングと呼ばれる技術である。ＲＡＩＤ１におけるデータの書き込み時には、データが複製され、複数の同一のデータの各々が複数の固定記憶装置の各々に書き込まれる。ＲＡＩＤ１におけるデータの読み出し時には、複数の固定記憶装置のうち正常な１つの固定記憶装置のみからデータが読み出される。これにより、複数の固定記憶装置のいずれかに障害が発生した場合にも、正常な固定記憶装置からデータを読み出すことができ、画像形成装置のバックアップ機能を向上することができる。
【０００７】
ミラーリングを行う複数の固定記憶装置のうち１つの固定記憶装置が故障した場合、画像形成装置はリビルド処理を行う。リビルド処理とは、正常に動作している固定記憶装置に記憶されていたデータを、故障から復旧した（または取り替えられた新品の）固定記憶装置に複製する処理である。
【０００８】
画像形成装置において、リビルド処理を行う主体と、固定記憶装置へアクセスする主体（固定記憶装置へのデータの書き込み、または固定記憶装置からのデータの読み出しを行う主体）とは、互いに異なっている。すなわち、リビルド処理やＲＡＩＤに関する処理は、一般的にＲＡＩＤコントローラーが行う。一方、固定記憶装置へのアクセスは、画像形成装置全体の動作を制御するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が行う。リビルド処理は、ＲＡＩＤコントローラーの判断で実行される。
【０００９】
なお、下記特許文献１および２には、リビルド処理に関する技術が開示されている。下記特許文献１には、ＨＤＤのリビルド処理を行う場合に、ホストからのアクセス要求が一定時間無い場合には、リビルド処理の１回の処理サイズを、リビルド処理の通常の１回の処理サイズよりも大きくすることが開示されている。これにより、リビルド処理に要する時間を短縮することができる。
【００１０】
下記特許文献２には、リビルド処理にリソースを割り当て、リビルド処理中に所定の処理が要求された場合、要求された処理を実行するだけの残リソースがあるか否かに応じて、要求された処理に残リソースを割り当てる技術が開示されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００７−９４９９４号公報
【特許文献２】特開２０１３−５８１０３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ＣＰＵは、リビルド処理中であるか否かに関わらずに固定記憶装置にアクセスする。その結果、従来においては、ＣＰＵがリビルド処理中に固定記憶装置にアクセスした場合には、リビルド処理の複製元である固定記憶装置からのＲＡＩＤコントローラーによるデータの読み出しと、リビルド処理の複製元である固定記憶装置へのＣＰＵによるアクセスとが競合することがあった。また、リビルド処理の複製先である固定記憶装置へのＲＡＩＤコントローラーによるデータの書き込みと、リビルド処理の複製先である固定記憶装置へのＣＰＵによるアクセスとが競合することがあった。その結果、ＣＰＵによる固定記憶装置へのアクセス速度が低下し、処理の遅延が発生していた。
【００１３】
特に画像形成装置が、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）である場合、ＭＦＰのＣＰＵは、コピージョブ、プリントジョブ、またはスキャンジョブなどを実行する際に、処理対象である画像データを固定記憶装置に書き込んだり、固定記憶装置から読み出したりする。ＭＦＰの画像処理回路の動作速度と比較して、固定記憶装置への転送速度は遅いので、固定記憶装置へのアクセス速度の低下は、ＭＦＰ自体の性能の低下につながる。具体的には、リビルド処理中のＣＰＵによるＨＤＤへのアクセス速度は、リビルド処理中でない場合のＣＰＵによるＨＤＤへのアクセス速度の約４０％程度まで低下する。
【００１４】
本発明は、上記課題を解決するためのものであり、その目的は、高性能な画像形成装置、画像形成装置の制御プログラム、コントローラー、およびコントローラーの制御プログラムを提供することである。
【課題を解決するための手段】
【００１５】
本発明の一の局面に従う画像形成装置は、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵと、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを判別する判別手段と、判別手段がリビルド処理中であると判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度と、リビルド処理中であるデータの優先度とを取得する優先度取得手段と、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中であるデータの優先度よりも高いか否かを判別する優先度判別手段と、優先度判別手段が、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと判別した場合、リビルド処理を停止する停止手段と、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開手段とを備える。
【００１８】
上記画像形成装置において好ましくは、判別手段は、ＣＰＵから少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、ＣＰＵからの要求に従って、コントローラーからＣＰＵへリビルド処理中であるか否かを示す情報を送信する情報送信手段と、情報送信手段から受信した情報に基づいて、リビルド処理中であるか否かを、ＣＰＵを用いて判別するＣＰＵ側判別手段とを含み、優先度取得手段は、リビルド処理中であると判別手段にて判別した場合に、ＣＰＵを用いてリビルド処理中であるデータを読み出すＣＰＵ読出手段と、ＣＰＵ読出手段にて読み出したデータの優先度を、ＣＰＵを用いて特定する優先度特定手段とを含み、優先度判別手段は、優先度特定手段にて特定した優先度に基づいて、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを、ＣＰＵを用いて判別するＣＰＵ側優先度判別手段を含み、停止手段は、ＣＰＵからコントローラーへリビルド処理の停止を要求する停止要求手段を含み、再開手段は、ＣＰＵからコントローラーへリビルド処理の再開を要求する再開要求手段を含む。
【００１９】
上記画像形成装置において好ましくは、判別手段は、ＣＰＵから少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを、コントローラーを用いて判別するコントローラー側判別手段を含み、優先度取得手段は、リビルド処理中であると判別手段にて判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度を指標する情報を、ＣＰＵからコントローラーに送信するＣＰＵ側優先度送信手段を含み、優先度判別手段は、ＣＰＵ側優先度送信手段から受信した情報に基づいて、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを、コントローラーを用いて判別するコントローラー側優先度判別手段を含む。
【００２０】
上記画像形成装置において好ましくは、リビルド処理を開始する場合に、リビルド処理の開始をコントローラーからＣＰＵに通知する開始通知手段と、リビルド処理を終了する場合に、リビルド処理の終了をコントローラーからＣＰＵに通知する終了通知手段とをさらに備え、判別手段は、開始通知手段および終了通知手段の各々の通知に基づいて、リビルド処理中であるか否かを、ＣＰＵを用いて判別する通知判別手段を含む。
【００２２】
本発明の他の局面に従う画像形成装置は、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置に対してデータを書き込むジョブである書込ジョブの実行指示を受け付ける書込ジョブ受付手段と、書込ジョブの実行指示を受け付けた場合に、ＣＰＵを用いて、書込ジョブの対象となる書込データを、書込データを一時的に保存するためのメモリに書き込むメモリ書込手段と、メモリ書込手段にて書込データをメモリに書き込む場合に、メモリの空き容量が第１の閾値未満であるか否かを判別する第１の残量判別手段と、第１の残量判別手段が、メモリの空き容量が第１の閾値未満であると判別することにより、ＣＰＵから少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理を停止する停止手段と、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開手段とを備える。
【００２３】
本発明のさらに他の局面に従う画像形成装置は、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置からデータを読み出すジョブである読出ジョブの実行指示を受け付ける読出ジョブ受付手段と、読出ジョブの実行指示の受け付けにより、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理を停止する停止手段と、読出ジョブの実行指示を受け付けた場合であって、停止手段にてリビルド処理を停止した後に、ＣＰＵを用いて、読出ジョブの対象となる読出データを第１または第２の固定記憶装置から読出データを一時的に保存するためのメモリに読み出す読出手段と、読出手段にて読出データをメモリに読み出す場合に、メモリの空き容量が第２の閾値未満であるか否かを判別する第２の残量判別手段と、第２の残量判別手段が、メモリの空き容量が第２の閾値未満であると判別することにより、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開手段とを備える。
【００２４】
上記画像形成装置において好ましくは、再開手段にてリビルド処理を再開した後で、未出力の読出データが存在する場合に、メモリの空き容量が第３の閾値以上であるか否かを判別する第３の残量判別手段と、メモリの空き容量が第３の閾値以上であると第３の残量判別手段にて判別した場合に、リビルド処理を再度停止する再度停止手段とをさらに備える。
上記画像形成装置において好ましくは、リビルド処理は、第１の固定記憶装置に記憶されていたデータを複数の分割データに分割し、複数の分割データの各々を第２の固定記憶装置に順次複製する処理であり、停止手段は、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、複数の分割データのうちリビルド処理中の分割データのリビルド処理が完了してから、次の分割データのリビルド処理を開始するまでのウェイト時間を増加するウェイト時間増加手段を含む。
【００２５】
上記画像形成装置において好ましくは、コントローラーは、第１および第２の固定記憶装置のうち一方の固定記憶装置のデータを他方の固定記憶装置にコピーするミラーリング処理を実行可能である。
【００２６】
本発明のさらに他の局面に従う画像形成装置の制御プログラムは、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵとを備えた、画像形成装置の制御プログラムであって、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを判別する判別ステップと、リビルド処理中であると判別ステップにて判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度と、リビルド処理中であるデータの優先度とを取得する優先度取得ステップと、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別ステップと、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと優先度判別ステップにて判別した場合に、リビルド処理を停止する停止ステップと、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開ステップとをコンピューターに実行させるためのものである。
上記画像形成装置の制御プログラムにおいて好ましくは、判別ステップは、ＣＰＵから少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、ＣＰＵからの要求に従って、コントローラーからＣＰＵへリビルド処理中であるか否かを示す情報を送信する情報送信ステップと、情報送信ステップにおいて受信した情報に基づいて、リビルド処理中であるか否かを、ＣＰＵを用いて判別するＣＰＵ側判別ステップとを含み、優先度取得ステップは、リビルド処理中であると判別ステップにて判別した場合に、ＣＰＵを用いてリビルド処理中であるデータを読み出すＣＰＵ読出ステップと、ＣＰＵ読出ステップにて読み出したデータの優先度を、ＣＰＵを用いて特定する優先度特定ステップとを含み、優先度判別ステップは、優先度特定ステップにて特定した優先度に基づいて、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを、ＣＰＵを用いて判別するＣＰＵ側優先度判別ステップを含み、停止ステップは、ＣＰＵからコントローラーへリビルド処理の停止を要求する停止要求ステップを含み、再開ステップは、ＣＰＵからコントローラーへリビルド処理の再開を要求する再開要求ステップを含む。
上記画像形成装置の制御プログラムにおいて好ましくは、判別ステップは、ＣＰＵから少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを、コントローラーを用いて判別するコントローラー側判別ステップを含み、優先度取得ステップは、リビルド処理中であると判別ステップにて判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度を指標する情報を、ＣＰＵからコントローラーに送信するＣＰＵ側優先度送信ステップを含み、優先度判別ステップは、ＣＰＵ側優先度送信ステップにて受信した情報に基づいて、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを、コントローラーを用いて判別するコントローラー側優先度判別ステップを含む。
本発明のさらに他の局面に従う画像形成装置の制御プログラムは、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とを備えた、画像形成装置の制御プログラムであって、第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置に対してデータを書き込むジョブである書込ジョブの実行指示を受け付ける書込ジョブ受付ステップと、書込ジョブの実行指示を受け付けた場合に、ＣＰＵを用いて、書込ジョブの対象となる書込データを、書込データを一時的に保存するためのメモリに書き込むメモリ書込ステップと、メモリ書込ステップにて書込データをメモリに書き込む場合に、メモリの空き容量が第１の閾値未満であるか否かを判別する第１の残量判別ステップと、メモリの空き容量が第１の閾値未満であると第１の残量判別ステップにて判別することにより、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理を停止する停止ステップと、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開ステップとをコンピューターに実行させるためのものである。
本発明のさらに他の局面に従う画像形成装置の制御プログラムは、第１および第２の固定記憶装置と、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うコントローラーと、第１および第２の固定記憶装置の各々にアクセスするＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）とを備えた、画像形成装置の制御プログラムであって、第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置からデータを読み出すジョブである読出ジョブの実行指示を受け付ける読出ジョブ受付ステップと、読出ジョブの実行指示を受け付けることにより、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理を停止する停止ステップと、読出ジョブの実行指示を受け付けた場合であって、停止ステップにてリビルド処理を停止した後に、ＣＰＵを用いて、読出ジョブの対象となる読出データを第１または第２の固定記憶装置から読出データを一時的に保存するためのメモリに読み出す読出ステップと、読出ステップにて読出データをメモリに読み出す場合に、メモリの空き容量が第２の閾値未満であるか否かを判別する第２の残量判別ステップと、メモリの空き容量が第２の閾値未満であると第２の残量判別ステップにて判別することにより、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開ステップとをコンピューターに実行させるためのものである。
上記画像形成装置の制御プログラムにおいて好ましくは、再開ステップにてリビルド処理を再開した後で、未出力の読出データが存在する場合に、メモリの空き容量が第３の閾値以上であるか否かを判別する第３の残量判別ステップと、メモリの空き容量が第３の閾値以上であると第３の残量判別ステップにて判別した場合に、リビルド処理を再度停止する再度停止ステップとをさらにコンピューターに実行させるためのものである。
【００２７】
本発明のさらに他の局面に従うコントローラーは、第１および第２の固定記憶装置の各々にアクセスするＣＰＵとの間で通信を行うコントローラーであって、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うリビルド処理手段と、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを判別する判別手段と、判別手段がリビルド処理中であると判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度と、リビルド処理中であるデータの優先度とを取得する優先度取得手段と、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別手段と、優先度判別手段が、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと判別した場合、リビルド処理を停止する停止手段と、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開手段とを備える。
【００２８】
本発明のさらに他の局面に従うコントローラーの制御プログラムは、第１および第２の固定記憶装置の各々にアクセスするＣＰＵとの間で通信を行うコントローラーの制御プログラムであって、故障した第２の固定記憶装置が復旧した場合に、第１の固定記憶装置に記憶されていたデータを、第２の固定記憶装置に複製するリビルド処理を行うリビルド処理ステップと、ＣＰＵから第１および第２の固定記憶装置のうち少なくとも一方の固定記憶装置にアクセスする必要が生じた場合に、リビルド処理中であるか否かを判別する判別ステップと、リビルド処理中であると判別ステップにて判別した場合に、ＣＰＵによるアクセスの対象となるデータの優先度と、リビルド処理中であるデータの優先度とを取得する優先度取得ステップと、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを判別する優先度判別ステップと、ＣＰＵによるアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと優先度判別ステップにて判別した場合、リビルド処理を停止する停止ステップと、ＣＰＵから少なくとも一方の固定記憶装置へのアクセスが終了した場合に、リビルド処理を再開する再開ステップとをコンピューターに実行させるためのものである。
【発明の効果】
【００２９】
本発明によれば、高性能な画像形成装置、画像形成装置の制御プログラム、コントローラー、およびコントローラーの制御プログラムを提供することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の第１の実施の形態における画像形成装置の概略的な構成を示す断面図である。
【図２】本発明の第１の実施の形態における画像形成装置の構成を示すブロック図である。
【図３】本発明の第１の実施の形態においてＲＡＩＤコントローラー１５０が実行するリビルド処理を説明する図である。
【図４】本発明の第１の実施の形態における画像形成装置の動作を説明する図である。
【図５】本発明の第１の実施の形態における画像形成装置の動作を示すフローチャートである。
【図６】本発明の第２の実施の形態における優先度テーブルを模式的に示す図である。
【図７】本発明の第２の実施の形態における画像形成装置の動作を示すフローチャートである。
【図８】本発明の第３の実施の形態における画像形成装置の動作を説明する図である。
【図９】本発明の第３の実施の形態における画像形成装置の動作を示すフローチャートである。
【図１０】本発明の第４の実施の形態において、画像形成装置が書込ジョブを実行する場合の画像形成装置の動作を説明する図である。
【図１１】本発明の第４の実施の形態において、画像形成装置が読出ジョブを実行する場合の画像形成装置の動作を説明する図である。
【図１２】本発明の第４の実施の形態における画像形成装置の動作を示すフローチャートである。
【図１３】図１２の書込処理（Ｓ５）のサブルーチンの第１の部分である。
【図１４】図１２の書込処理（Ｓ５）のサブルーチンの第２の部分である。
【図１５】図１２の読出処理（Ｓ７）のサブルーチンの第１の部分である。
【図１６】図１２の読出処理（Ｓ７）のサブルーチンの第２の部分である。
【図１７】本発明の第５の実施の形態におけるＲＡＩＤコントローラー１５０の動作を示すフローチャートである。
【図１８】本発明の第５の実施の形態におけるＣＰＵ１１０の動作を示すフローチャートである。
【図１９】本発明の第６の実施の形態におけるＣＰＵ１１０の動作を示すフローチャートである。
【図２０】本発明の第７の実施の形態における画像形成装置の動作を示すタイミングチャートである。
【発明を実施するための形態】
【００３１】
以下、本発明の実施の形態について、図面に基づいて説明する。
【００３２】
以下の実施の形態では、画像形成装置が、スキャナー機能、複写機能、プリンターとしての機能、ファクシミリ機能、データ通信機能、およびサーバー機能を備えるＭＦＰである場合について説明する。画像形成装置は、ＭＦＰである場合の他、ファクシミリ装置、プリンター、または複写機などであってもよい。
【００３３】
本明細書において、固定記憶装置へのアクセスとは、固定記憶装置へのデータの書き込み、および固定記憶装置からのデータの読み出しのうち少なくともいずれか一方の動作を意味している。
【００３４】
また本明細書において、リビルド処理の再開には、リビルド処理を停止する前に、復旧した固定記憶装置（複製先の固定記憶装置）に既に複製したデータの一部または全部を上書きするように、データの複製を再開する場合が含まれている。
【００３５】
［第１の実施の形態］
【００３６】
始めに、本実施の形態における画像形成装置の構成について説明する。
【００３７】
図１は、本発明の第１の実施の形態における画像形成装置の概略的な構成を示す断面図である。図２は、本発明の第１の実施の形態における画像形成装置の構成を示すブロック図である。
【００３８】
図１および図２を参照して、本実施の形態における画像形成装置は、ＣＰＵ１１０と、メモリ１２０と、画像処理装置１３０と、印刷装置１４０と、ＲＡＩＤコントローラー１５０（コントローラーの一例）と、第１のＨＤＤ１５１（第１の固定記憶装置の一例）と、第２のＨＤＤ１５２（第２の固定記憶装置の一例）と、表示装置１６０と、スキャナー装置１７０と、ファクシミリ送受信部１８０とを備えている。ＣＰＵ１１０と、メモリ１２０、画像処理装置１３０、印刷装置１４０、ＲＡＩＤコントローラー１５０、第１のＨＤＤ１５１、第２のＨＤＤ１５２、表示装置１６０、スキャナー装置１７０、およびファクシミリ送受信部１８０の各々とは、相互に接続されており、通信が可能となっている。
【００３９】
ＣＰＵ１１０は、画像形成装置全体の動作を制御する。ＣＰＵ１１０は、制御プログラムに基づいて処理を行う。またＣＰＵ１１０は、所要のタイミングで第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々にアクセスする。
【００４０】
メモリ１２０は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２１と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１２２とを含んでいる。ＲＯＭ１２１は、ＣＰＵ１１０が実行する制御プログラムや各種テーブルなどを記憶する。ＲＡＭ１２２はＣＰＵ１１０の作業用のメモリであり、各種ジョブに関するデータを一時的に保存する。
【００４１】
画像処理装置１３０は、画像データを編集する画像編集部１３１と、画像データを記憶する画像記憶部１３２とを含んでいる。
【００４２】
印刷装置１４０は、印刷を行う印刷部１４１と、印刷後の用紙に対してステープルを行うステープル部１４２とを含んでいる。印刷部１４１は、おおまかに、トナー像形成部、定着装置、および用紙搬送部などで構成される。印刷部１４１は、たとえば電子写真方式で用紙に画像を形成する。トナー像形成部は、いわゆるタンデム方式で４色の画像を合成し、用紙（記録媒体）にカラー画像を形成する。トナー像形成部は、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）、Ｋ（ブラック）の各色について設けられた感光体と、感光体からトナー像が転写（１次転写）される中間転写ベルトと、中間転写ベルトから用紙に画像を転写（２次転写）する転写部などで構成される。定着装置は、加熱ローラーおよび加圧ローラーを有する。定着装置は、加熱ローラーと加圧ローラーとでトナー像が形成された用紙を挟みながら搬送し、その用紙に加熱および加圧を行なう。これにより、定着装置は、用紙に付着したトナーを溶融させて用紙に定着させ、用紙に画像を形成する。用紙搬送部は、給紙ローラー、搬送ローラー、およびそれらを駆動するモーターなどで構成されている。用紙搬送部は、用紙を給紙カセットから給紙して、画像形成装置の筐体の内部で搬送する。また、用紙搬送部は、画像が形成された用紙を画像形成装置の筐体から排紙トレイなどに排出する。
【００４３】
ＲＡＩＤコントローラー１５０は、第１のＨＤＤ１５１および第２のＨＤＤ１５２を用いて、所要のタイミングでミラーリング処理またはリビルド処理を実行可能である。ミラーリング処理とは、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち一方のデータを他方にコピーする処理である。ＲＡＩＤコントローラー１５０は、ＲＡＩＤコントローラー１５０が実行する処理を制御するＣＰＵ１５０ａと、ＣＰＵ１５０ａが実行する制御プログラムを記憶するＲＯＭ１５０ｂと、ＣＰＵ１５０ａの作業用のメモリであるＲＡＭ１５０ｃなどを含んでいる。
【００４４】
第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々は、各種データを保存する。第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々は、互いに独立して動作する。ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０を介して第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々にアクセスする。第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々は、画像形成装置に対して外付けされるものであってもよい。
【００４５】
表示装置１６０は、各種情報を表示する表示パネル１６１と、表示パネルへの入力操作を検出する検出部１６２とを含んでいる。
【００４６】
スキャナー装置１７０は、原稿の画像を読み取り、その画像データを作成する。スキャナー装置１７０は、原稿の画像を読み取る読取部１７１を含んでいる。
【００４７】
ファクシミリ送受信部１８０は、ファクシミリを用いたデータの送受信を行う。
【００４８】
次に、本実施の形態においてＲＡＩＤコントローラー１５０が実行するリビルド処理について説明する。
【００４９】
図３は、本発明の第１の実施の形態においてＲＡＩＤコントローラー１５０が実行するリビルド処理を説明する図である。なお、以降の説明では、第１のＨＤＤ１５１がマスター（データの複製元）であり、第２のＨＤＤ１５２がスレーブ（データの複製先）であるものとする。
【００５０】
図３を参照して、ＲＡＩＤコントローラー１５０は、所要のタイミングで、第１のＨＤＤ１５１および第２のＨＤＤ１５２を用いてミラーイング処理を行う。その結果、第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々には、同一のデータＤＴが保存されている。
【００５１】
ここで、第２のＨＤＤ１５２が故障した場合には、画像形成装置の管理者やサービスマンなどによって、故障した第２のＨＤＤ１５２が修理されたり、新品のものに交換されたりする。これにより、第２のＨＤＤ１５２が復旧する。第２のＨＤＤ１５２が復旧した場合、ＲＡＩＤコントローラー１５０はリビルド処理を行う。具体的には、ＲＡＩＤコントローラー１５０は、矢印ＰＲ１で示すように、正常に動作している第１のＨＤＤ１５１に保存されているデータＤＴを、復旧した第２のＨＤＤ１５２に複製する。
【００５２】
一方、ＣＰＵ１１０は、矢印ＰＲ２で示すように、リビルド処理中であるか否かに関わらずに、所要のタイミングで、第１のＨＤＤ１５１および第２のＨＤＤ１５２の各々にアクセスする。
【００５３】
続いて、本実施の形態における画像形成装置の動作について説明する。
【００５４】
図４は、本発明の第１の実施の形態における画像形成装置の動作を説明する図である。
【００５５】
図４を参照して、ＲＡＩＤコントローラー１５０は、矢印ＰＲ１０で示すように、第１のＨＤＤ１５１から第２のＨＤＤ１５２にデータを複製するリビルド処理を行っている。リビルド処理中に、ＣＰＵ１１０が第１のＨＤＤ１５１または第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じた場合、ＣＰＵ１１０は、矢印ＰＲ１１で示すように、ＲＡＩＤコントローラー１５０に対して、リビルド処理中であるか否かを示す情報（以降、ステータスと記すことがある）の送信を要求する。ＲＡＩＤコントローラー１５０は、矢印ＰＲ１２で示すように、ＣＰＵ１１０からの要求に従って、ステータスをＣＰＵ１１０に送信する。
【００５６】
ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０から受信したステータスに基づいて、リビルド処理中であるか否かを判別する。ＣＰＵ１１０は、リビルド処理中である場合に、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する。ＲＡＩＤコントローラー１５０は、矢印ＰＲ１３で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する。
【００５７】
ＲＡＩＤコントローラー１５０がリビルド処理を停止した後で、ＣＰＵ１１０は、矢印ＰＲ１４で示すように、必要なＨＤＤへアクセスする（必要なＨＤＤは、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくとも一方のＨＤＤであればよい。以降の説明では、必要なＨＤＤが第１のＨＤＤ１５１である場合を想定している）。必要なＨＤＤへのアクセスが終了すると、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求する。ＲＡＩＤコントローラー１５０は、矢印ＰＲ１５で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する。
【００５８】
図５は、本発明の第１の実施の形態における画像形成装置の動作を示すフローチャートである。
【００５９】
図５を参照して、ＣＰＵ１１０は、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたか否かを判別する（Ｓ１０１）。第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判別するまで、ＣＰＵ１１０は、ステップＳ１０１の処理を繰り返す。
【００６０】
ステップＳ１０１において、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判別した場合（Ｓ１０１でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０のステータスを確認する（Ｓ１０３）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、ステータスを送信する（Ｓ１５１）。Ｓ１０３の処理に続いて、ＣＰＵ１１０は、ステータスに基づいて、リビルド処理中であるか否かを判別する（Ｓ１０５）。
【００６１】
ステップＳ１０５において、リビルド処理中であると判別した場合（Ｓ１０５でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する（Ｓ１０７）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する（Ｓ１５３）。Ｓ１０７の処理に続いて、ＣＰＵ１１０は、必要なＨＤＤにアクセスし（Ｓ１０９）、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求し（Ｓ１１１）、処理を終了する。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する（Ｓ１５５）。
【００６２】
ステップＳ１０５において、リビルド処理中でないと判別した場合（Ｓ１０５でＮＯ）、ＣＰＵ１１０は、必要なＨＤＤにアクセスし（Ｓ１１３）、処理を終了する。
【００６３】
本実施の形態では、ＣＰＵ１１０がＨＤＤへのアクセスを行う場合に、ＣＰＵ１１０はリビルド処理中であるか否かを判別する。ＣＰＵ１１０は、リビルド処理中である場合、ＲＡＩＤコントローラー１５０に対してリビルド処理の停止を要求する。ＣＰＵ１１０は、リビルド処理が停止してから必要なＨＤＤにアクセスする。ＣＰＵ１１０は、必要なＨＤＤへのアクセスが終了した後で、ＲＡＩＤコントローラー１５０に対してリビルド処理の再開を要求する。これにより、リビルド処理中のＣＰＵ１１０のＨＤＤへのアクセス速度の低下および画像形成装置のパフォーマンスの低下を防ぐことができ、高性能な画像形成装置を実現することができる。
【００６４】
［第２の実施の形態］
【００６５】
本実施の形態では、ＣＰＵ１１０は、リビルド処理中に第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくとも一方のＨＤＤにアクセスする必要が生じた場合に、優先度テーブルに基づいて優先度を比較する。具体的には、ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの優先度と、リビルド処理中であるデータの優先度とを比較する。ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高い場合に、リビルド処理の停止を要求する。
【００６６】
図６は、本発明の第２の実施の形態における優先度テーブルを模式的に示す図である。図６においては、Ａ→Ｂ→Ｃという順序で優先度が高くなっている。
【００６７】
図６を参照して、優先度テーブルは、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度と、リビルド処理の対象となるデータの優先度とを示すテーブルである。本実施の形態では、優先度テーブルはＲＯＭ１２１に格納されている。
【００６８】
優先度テーブルでは、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータのうち、「コピー」（コピージョブのデータ）、「スキャン  ｔｏ  ＢＯＸ」（スキャンした画像データをＨＤＤのＢＯＸ領域に保存するジョブの対象となる画像データ）、「ＦＡＸ」（ファクシミリ送信または受信ジョブの対象となるデータ）の各々は、「Ａ」という優先度を有している。これらのデータは、ＨＤＤに迅速に保存される必要があるため、優先度が最も高くなっている。また、「ＢＯＸプリント」（ＨＤＤのＢＯＸ領域に保存されているデータをプリントするジョブの対象となるデータ）、および「ＰＣプリント」（ＰＣログイン名から受信したデータをプリントするジョブの対象となるデータ）の各々は、「Ｂ」という優先度を有している。さらに、「ネットワークアクセス」（ネットワークを通じて外部機器から受信したデータ）は、「Ｃ」という優先度を有している。ネットワークを通じて外部機器から受信したデータは、ＨＤＤに迅速に保存される必要性が他のデータよりも低いものと推測されるためである。
【００６９】
優先度テーブルでは、リビルド処理の対象となるデータのうち、「アドレス帳」、「ＦＡＸ受信データ」（ファクシミリ受信ジョブで受信したデータ）、および「プログラム」の各々は、「Ｂ」という優先度を有している。また、「ＢＯＸデータ」（ＨＤＤのＢＯＸ領域に保存されているデータ）は、「Ｃ」という優先度を有している。ＨＤＤのＢＯＸ領域に保存されているデータは、使用頻度や重要性が他のデータよりも低いものと推測されるためである。
【００７０】
ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高ければ、リビルド処理を停止させる。一方、ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度と同じか、それより低ければ、リビルド処理を停止させない。この場合ＣＰＵ１１０は、リビルド処理と並行して必要なＨＤＤへのアクセスを行う。
【００７１】
図７は、本発明の第２の実施の形態における画像形成装置の動作を示すフローチャートである。
【００７２】
図７を参照して、始めにＣＰＵ１１０は、図５のフローチャートにおけるステップＳ１０１〜Ｓ１０５の処理と同様の処理を行う。
【００７３】
ステップＳ１０５において、リビルド処理中であると判別した場合（Ｓ１０５でＹＥＳ）、ＣＰＵ１１０は、リビルド処理中のセクタのデータを読み出す（Ｓ２０１）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理中のセクタのデータの読み出しを受け付ける（Ｓ１５２）。ステップＳ２０１の処理に続いて、ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの種別と、リビルド処理中のセクタのデータの種別との各々を特定し、特定した種別に対応する優先度を優先度テーブルから特定する。そしてＣＰＵ１１０は、特定した優先度に基づいて、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを判別する（Ｓ２０３）。
【００７４】
ステップＳ２０３において、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと判別した場合（Ｓ２０３でＹＥＳ）、ＣＰＵ１１０は、ステップＳ１０７以降の処理を行う。
【００７５】
ステップＳ２０３において、必要なＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度と同じか、それよりも低いと判別した場合（Ｓ２０３でＮＯ）、ＣＰＵ１１０は、ステップＳ１１３以降の処理を行う。
【００７６】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【００７７】
本実施の形態によれば、第１の実施の形態と同様の効果を得ることができる。加えて、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度と、リビルド処理中のデータの優先度とに基づいて、リビルド処理を停止するか否かを決定するので、ＣＰＵ１１０によるＨＤＤへのアクセスと、リビルド処理との各々の速度の調和をとることができ、リビルド処理の不要な停止を回避することができる。
【００７８】
［第３の実施の形態］
【００７９】
第１および第２の実施の形態では、リビルド処理の停止および再開などを、ＣＰＵ１１０が主体的に行う場合について説明した。本実施の形態では、リビルド処理の停止および再開などを、ＲＡＩＤコントローラー１５０が主体的に行う場合について説明する。
【００８０】
図８は、本発明の第３の実施の形態における画像形成装置の動作を説明する図である。
【００８１】
図８を参照して、ＲＡＩＤコントローラー１５０は、矢印ＰＲ２０で示すように、第１のＨＤＤ１５１から第２のＨＤＤ１５２にデータを複製するリビルド処理を行っている。リビルド処理中に、ＣＰＵ１１０が第１のＨＤＤ１５１または第２のＨＤＤ１５２のうち少なくともいずれか一方のＨＤＤにアクセスする必要が生じた場合、ＣＰＵ１１０は、矢印ＰＲ２１で示すように、ＲＡＩＤコントローラー１５０に対して、必要なＨＤＤへのアクセスを要求する。またＣＰＵ１１０は、矢印ＰＲ２２で示すように、必要なＨＤＤへのアクセスの対象となるデータの種別（優先度を指標する情報の一例）をＲＡＩＤコントローラー１５０に通知する。
【００８２】
ＲＡＩＤコントローラー１５０は、必要なＨＤＤへのアクセスの要求をＣＰＵ１１０から受け付けた場合に、優先度テーブルを用いて、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度を特定する。ＲＡＩＤコントローラー１５０は、特定した優先度と、リビルド処理中のデータの優先度とを比較する。なお、優先度テーブルは、ＲＡＩＤコントローラー１５０のＲＯＭ１５０ｂ（図２）に保存されていることが好ましい。そしてＲＡＩＤコントローラー１５０は、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度の方が高い場合、矢印ＰＲ２３で示すように、リビルド処理を停止する。
【００８３】
ＲＡＩＤコントローラー１５０がリビルド処理を停止した後で、ＣＰＵ１１０は、矢印ＰＲ２４で示すように、必要なＨＤＤへアクセスする。必要なＨＤＤへのアクセスが終了すると、ＲＡＩＤコントローラー１５０は、矢印ＰＲ２５で示すように、リビルド処理を再開する。
【００８４】
図９は、本発明の第３の実施の形態における画像形成装置の動作を示すフローチャートである。
【００８５】
図９を参照して、ＣＰＵ１１０は、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じた場合に、ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａに対して、必要なＨＤＤへのアクセスを要求する（Ｓ３０１）。次にＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの種別を特定し、ＣＰＵ１５０ａに対して特定した種別を通知する（Ｓ３０３）。
【００８６】
なお、ステップＳ３０３において、ＣＰＵ１１０は、必要なＨＤＤへのアクセスの対象となるデータの種別の代わりに優先度を、ＣＰＵ１５０ａに対して通知してもよい。データの優先度を通知する場合、図６に示す優先度テーブルは、ＲＯＭ１２１（図２）にも保存されていることが好ましい。
【００８７】
ＣＰＵ１５０ａは、ＨＤＤへのアクセスの要求をＣＰＵ１１０から受け付けたか否かを判別する（Ｓ３５１）。ＨＤＤへのアクセスの要求をＣＰＵ１１０から受け付けたと判別するまで、ＣＰＵ１５０ａはステップＳ３５１の処理を繰り返す。
【００８８】
ステップＳ３５１において、ＨＤＤへのアクセスの要求をＣＰＵ１１０から受け付けたと判別した場合（Ｓ３５１でＹＥＳ）、ＣＰＵ１５０ａは、リビルド処理を実行中であるか否かを判別する（Ｓ３５３）。
【００８９】
ステップＳ３５３において、リビルド処理を実行中であると判別した場合（Ｓ３５３でＹＥＳ）、ＣＰＵ１５０ａは、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの種別の通知をＣＰＵ１１０から受信したか否かを判別する（Ｓ３５５）。データの種別の通知をＣＰＵ１１０から受信したと判別するまで、ＣＰＵ１５０ａはステップＳ３５５の処理を繰り返す。
【００９０】
ステップＳ３５５において、データの種別の通知をＣＰＵ１１０から受信したと判別した場合（Ｓ３５５でＹＥＳ）、ＣＰＵ１５０ａは、ＣＰＵ１１０から受信したデータの種別の優先度を優先度テーブルから特定する。またＣＰＵ１５０ａは、リビルド処理中のセクタのデータの種別を特定し、特定した種別に対応する優先度を優先度テーブルから特定する。そしてＣＰＵ１５０ａは、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いか否かを判別する（Ｓ３５７）。
【００９１】
ステップＳ３５７において、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度よりも高いと判別した場合（Ｓ３５７でＹＥＳ）、ＣＰＵ１５０ａは、リビルド処理を停止し（Ｓ３５９）、ＣＰＵ１１０による必要なＨＤＤへのアクセスを受け入れる（Ｓ３６１）。ＣＰＵ１１０は、必要なＨＤＤへアクセスする（Ｓ３０５）。続いてＣＰＵ１５０ａは、リビルド処理を再開し（Ｓ３６３）、処理を終了する。
【００９２】
ステップＳ３５３において、リビルド処理を実行中でないと判別した場合（Ｓ３５３でＮＯ）、またはステップＳ３５７において、ＣＰＵ１１０によるＨＤＤへのアクセスの対象となるデータの優先度が、リビルド処理中のデータの優先度と同じか、それよりも低いと判別した場合（Ｓ３５７でＮＯ）、ＣＰＵ１５０ａは、ＣＰＵ１１０によるＨＤＤへのアクセスを受け入れる（Ｓ３６５）。ＣＰＵ１１０は、必要なＨＤＤへアクセスする（Ｓ３０５）。その後ＣＰＵ１５０ａは処理を終了する。
【００９３】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１および第２の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【００９４】
［第４の実施の形態］
【００９５】
本実施の形態では、画像形成装置が、各種ジョブを実行するのに伴って、リビルド処理を停止して必要なＨＤＤへアクセスする場合について説明する。
【００９６】
図１０は、本発明の第４の実施の形態において、画像形成装置が書込ジョブを実行する場合の画像形成装置の動作を説明する図である。
【００９７】
図１０を参照して、ＲＡＩＤコントローラー１５０は、矢印ＰＲ３０で示すように、第１のＨＤＤ１５１から第２のＨＤＤ１５２にデータを複製するリビルド処理を行っている。
【００９８】
ＣＰＵ１１０は、リビルド処理中に書込ジョブを実行している。書込ジョブとは、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくとも一方のＨＤＤに対してデータを書き込むジョブである。具体的には、書込ジョブとは、コピージョブ、スキャンジョブ、ファクシミリ受信ジョブ、およびボックス保存ジョブなどである。
【００９９】
ＣＰＵ１１０は、矢印ＰＲ３１で示すように、書込データをバンド単位またはページ単位でメモリ１２０に保存する。書込ジョブがコピージョブまたスキャンジョブである場合、保存対象となる書込データは、読み取った原稿の画像データである。書込ジョブがファクシミリ受信ジョブである場合、保存対象となる書込データは、ファクシミリを通じて受信したデータである。書込ジョブがボックス保存ジョブである場合、保存対象となる書込データはボックスへの保存対象となるデータである。
【０１００】
ＣＰＵ１１０は、書込データの保存によってメモリ１２０の残量（空き容量）が閾値Ｔ１未満となった場合に、ＣＰＵ１１０が第１のＨＤＤ１５１または第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判断する。ＣＰＵ１１０は、矢印ＰＲ３２で示すように、ＲＡＩＤコントローラー１５０に対して、ステータスの送信を要求する。そしてＣＰＵ１１０は、ＲＡＩＤコントローラー１５０から受信したステータスに基づいて、リビルド処理中であるか否かを判別する。ＣＰＵ１１０は、リビルド処理中である場合に、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する。
【０１０１】
ＲＡＩＤコントローラー１５０は、矢印ＰＲ３３で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する。
【０１０２】
ＲＡＩＤコントローラー１５０がリビルド処理を停止した後で、ＣＰＵ１１０は、矢印ＰＲ３４で示すように、必要なＨＤＤ（ここでは第１のＨＤＤ１５１）へアクセスする。これにより、ＣＰＵ１１０は、メモリ１２０に記憶した書込データを、必要なＨＤＤに転送する。ＣＰＵ１１０は、ＨＤＤに転送した書込データをメモリ１２０から消去する。
【０１０３】
ＣＰＵ１１０は、メモリ１２０からＨＤＤへの書込データの転送が完了すると、矢印ＰＲ３５で示すように、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求する。ＲＡＩＤコントローラー１５０は、矢印ＰＲ３６で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する。
【０１０４】
書込データをメモリ１２０からＨＤＤに転送すると、メモリ１２０の残量は閾値Ｔ２（≧Ｔ１）以上のレベルまで増加する。この場合ＣＰＵ１１０は、未処理の書込データ（メモリ１２０またはＨＤＤに保存していない書込データ）が存在していれば、矢印ＰＲ３１で示す処理に戻り、同様の動作を繰り返す。
【０１０５】
図１１は、本発明の第４の実施の形態において、画像形成装置が読出ジョブを実行する場合の画像形成装置の動作を説明する図である。
【０１０６】
図１１を参照して、ＲＡＩＤコントローラー１５０は、矢印ＰＲ４０で示すように、第１のＨＤＤ１５１から第２のＨＤＤ１５２にデータを複製するリビルド処理を行っている。
【０１０７】
ＣＰＵ１１０は、リビルド処理中に読出ジョブを開始する。読出ジョブとは、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくとも一方のＨＤＤからデータを読み出す処理を含むジョブである。具体的には、読出ジョブとは、プリントジョブ、ファクシミリ送信ジョブ、およびボックス内データ送信ジョブなどである。
【０１０８】
ＣＰＵ１１０は、読出ジョブを開始する場合に、ＣＰＵ１１０が第１のＨＤＤ１５１または第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判断する。ＣＰＵ１１０は、矢印ＰＲ４１で示すように、ＲＡＩＤコントローラー１５０に対して、ステータスの送信を要求する。そしてＣＰＵ１１０は、ＲＡＩＤコントローラー１５０から受信したステータスに基づいて、リビルド処理中であるか否かを判別する。ＣＰＵ１１０は、リビルド処理中である場合に、コントローラーに対して、リビルド処理の停止を要求する。
【０１０９】
ＲＡＩＤコントローラー１５０は、矢印ＰＲ４２で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する。
【０１１０】
ＲＡＩＤコントローラー１５０がリビルド処理を停止した後で、ＣＰＵ１１０は、必要なＨＤＤへアクセスする。これにより、ＣＰＵ１１０は、矢印ＰＲ４３およびＰＲ４４で示すように、必要なＨＤＤから読出データをバンド単位またはページ単位でメモリ１２０に読み出す。読出ジョブがプリントジョブである場合、読み出しの対象となる読出データは、プリントする画像データである。読出ジョブがファクシミリ送信ジョブである場合、読み出しの対象となる読出データは、ファクシミリを通じて送信するデータである。読出ジョブがボックス内データ送信ジョブである場合、読出となる読出データはボックス内の送信対象となるデータである。
【０１１１】
ＣＰＵ１１０は、読出データの保存によってメモリ１２０の残量が閾値Ｔ３未満となった場合に、ＨＤＤからメモリ１２０への読出データの読み出しを停止する。この場合、ＣＰＵ１１０は、矢印ＰＲ４５で示すように、メモリ１２０に保存した読出データを出力する。ＣＰＵ１１０は、出力した読出データをメモリ１２０から消去する。またＣＰＵ１１０は、矢印ＰＲ４６で示すように、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求する。ＲＡＩＤコントローラー１５０は、矢印ＰＲ４７で示すように、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する。
【０１１２】
メモリ１２０に保存した読出データの出力が進行すると、メモリ１２０の残量は閾値Ｔ４（≧Ｔ３）以上のレベルまで増加する。この場合ＣＰＵ１１０は、未処理の読出データ（メモリ１２０に保存していない読出データ）が存在していれば、矢印ＰＲ４１で示す処理に戻り、リビルド処理を再度停止する。そしてＣＰＵ１１０は、同様の動作を繰り返す。
【０１１３】
図１２は、本発明の第４の実施の形態における画像形成装置の動作を示すフローチャートである。
【０１１４】
図１２を参照して、ＣＰＵ１１０は、ジョブの実行指示を受け付けると（Ｓ１）と、受け付けたジョブの種別が書込ジョブであるか読出ジョブであるかを判別する（Ｓ３）。
【０１１５】
ステップＳ３において、受け付けたジョブの種別が書込ジョブであると判別した場合（Ｓ３で「書込」）、ＣＰＵ１１０は、書込処理を行い（Ｓ５）、処理を終了する。
【０１１６】
ステップＳ３において、受け付けたジョブの種別が読出ジョブであると判別した場合（Ｓ３で「読出」）、ＣＰＵ１１０は、読出処理を行い（Ｓ７）、処理を終了する。
【０１１７】
図１３および図１４は、図１２の書込処理（Ｓ５）のサブルーチンである。
【０１１８】
図１３を参照して、書込処理においてＣＰＵ１１０は、メモリ１２０に書込データを蓄積し（書き込み）（Ｓ４０１）、蓄積した書き込みデータをメモリ１２０から読み出して、書込ジョブを実行する（Ｓ４０３）。続いてＣＰＵ１１０は、メモリ１２０の残量が閾値以上であるか否かを判別する（Ｓ４０５）。
【０１１９】
ステップＳ４０５において、メモリ１２０の残量が閾値以上であると判別した場合（Ｓ４０５でＹＥＳ）、ＣＰＵ１１０はステップＳ４０７の処理へ進む。
【０１２０】
ステップＳ４０７において、ＣＰＵ１１０は、未処理の書込データがあるか否かを判別する（Ｓ４０７）。ステップＳ４０７において、未処理の書込データがあると判別した場合（Ｓ４０７でＹＥＳ）、ＣＰＵ１１０はステップＳ４０１の処理へ進む。一方、ステップＳ４０７において、未処理の書込データが無いと判別した場合（Ｓ４０７でＮＯ）、ＣＰＵ１１０はリターンする。
【０１２１】
ステップＳ４０５において、メモリ１２０の残量が閾値未満であると判別した場合（Ｓ４０５でＮＯ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０のステータスを確認する（Ｓ４０９）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、ステータスを送信する（Ｓ４５１）。Ｓ４０９の処理に続いて、ＣＰＵ１１０は、図１４のステップＳ４１１の処理に進む。
【０１２２】
図１４を参照して、ステップＳ４１１において、ＣＰＵ１１０は、ステータスに基づいて、リビルド処理中であるか否かを判別する（Ｓ４１１）。
【０１２３】
ステップＳ４１１において、リビルド処理中であると判別した場合（Ｓ４１１でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する（Ｓ４１３）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する（Ｓ４５３）。Ｓ４１３の処理に続いて、ＣＰＵ１１０は、必要なＨＤＤにデータを蓄積（転送）し（Ｓ４１５）、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求する（Ｓ４１７）。その後ＣＰＵ１１０は、図１３のステップＳ４０７の処理へ進む。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する（Ｓ４５５）。
【０１２４】
ステップＳ４１１において、リビルド処理中でないと判別した場合（Ｓ４１１でＮＯ）、ＣＰＵ１１０は、必要なＨＤＤにアクセスし（Ｓ４１９）、図１３のステップＳ４０７の処理へ進む。
【０１２５】
図１５および図１６は、図１２の読出処理（Ｓ７）のサブルーチンである。
【０１２６】
図１５を参照して、読出処理においてＣＰＵ１１０は、読出の準備を行う（Ｓ５０１）。たとえばファクシミリ送信ジョブである場合、ステップＳ５０１において、ＣＰＵ１１０は送信先へ電話をかける。次にＣＰＵ１１０は、ＲＡＩＤコントローラー１５０のステータスを確認する（Ｓ５０３）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、ステータスを送信する（Ｓ５５１）。Ｓ５０３の処理に続いて、ＣＰＵ１１０は、ステータスに基づいて、リビルド処理中であるか否かを判別する（Ｓ５０５）。
【０１２７】
ステップＳ５０５において、リビルド処理中であると判別した場合（Ｓ５０５でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する（Ｓ５０７）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を停止する（Ｓ５５３）。Ｓ５０７の処理に続いて、ＣＰＵ１１０は、必要なＨＤＤからメモリ１２０にデータを読み出し（Ｓ５０９）、図１６のステップＳ５１１の処理へ進む。
【０１２８】
ステップＳ５０５において、リビルド処理中でないと判別した場合（Ｓ５０５でＮＯ）、ＣＰＵ１１０は、必要なＨＤＤからメモリ１２０にデータを読み出し（Ｓ５１７）、図１６のステップＳ５１５の処理へ進む。
【０１２９】
図１６を参照して、ステップＳ５１１において、ＣＰＵ１１０は、メモリ１２０の残量が閾値未満であるか否かを判別する（Ｓ５１１）。
【０１３０】
ステップＳ５１１において、メモリ１２０の残量が閾値未満であると判別した場合（Ｓ５１１でＹＥＳ）、ＣＰＵ１１０は、必要なＨＤＤからメモリ１２０へのデータの読み出しを停止し、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求する（Ｓ５１３）。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、ＣＰＵ１１０からの要求に従って、リビルド処理を再開する（Ｓ５５５）。
【０１３１】
ステップＳ５１３の処理に続いて、ＣＰＵ１１０は、メモリ１２０に値失せ記した読出データを出力する。次にＣＰＵ１１０は、未処理の（ＨＤＤから読み出していない）読出データがあるか否か判別する（Ｓ５１９）。
【０１３２】
ステップＳ５１９において、未処理の読出データがあると判別した場合（Ｓ５１９でＹＥＳ）、ＣＰＵ１１０は、メモリ１２０の残量が閾値以上であるか否かを判別する（Ｓ５２１）。メモリ１２０の残量が閾値以上であると判別するまで、ＣＰＵ１１０はＳ５２１の処理を繰り返す。
【０１３３】
ステップＳ５２１において、メモリ１２０の残量が閾値以上であると判別した場合（Ｓ５２１でＹＥＳ）、ＣＰＵ１１０は図１５のステップＳ５０３の処理へ進む。
【０１３４】
ステップＳ５１９において、未処理の読出データが無いと判別した場合（Ｓ５１９でＮＯ）、ＣＰＵ１１０はリターンする。
【０１３５】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【０１３６】
本実施の形態によれば、第１の実施の形態と同様の効果を得ることができる。加えて、画像形成装置が各種ジョブを実行する場合に、必要なＨＤＤへ迅速にアクセスすることができるので、ジョブの実行速度を向上することができる。
【０１３７】
［第５の実施の形態］
【０１３８】
本実施の形態では、ＲＡＩＤコントローラー１５０が、ＣＰＵ１１０からの要求無しに、リビルド処理の実行および終了をＣＰＵ１１０に通知する場合について説明する。ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０からの通知に基づいて、リビルド処理中であるか否かを判別する。
【０１３９】
図１７は、本発明の第５の実施の形態におけるＲＡＩＤコントローラー１５０の動作を示すフローチャートである。
【０１４０】
図１７を参照して、ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、リビルド処理の開始のタイミングであるか否かを判別する（Ｓ６０１）。リビルド処理の開始のタイミングであると判別するまで、ＣＰＵ１５０ａはステップＳ６０１の処理を繰り返す。
【０１４１】
ステップＳ６０１において、リビルド処理の開始のタイミングであると判別した場合（Ｓ６０１でＹＥＳ）、ＣＰＵ１５０ａは、リビルド処理の開始をＣＰＵ１１０に通知し（Ｓ６０３）、リビルド処理を実行（開始）する（Ｓ６０３）。続いてＣＰＵ１５０ａは、リビルド処理の停止要求をＣＰＵ１１０から受け付けたか否かを判別する（Ｓ６０７）。
【０１４２】
ステップＳ６０７において、リビルド処理の停止要求をＣＰＵ１１０から受け付けたと判別した場合（Ｓ６０７でＹＥＳ）、ＣＰＵ１５０ａは、リビルド処理を停止する（Ｓ６０９）。次にＣＰＵ１５０ａは、リビルド処理の再開要求をＣＰＵ１１０から受け付けたか否かを判別する（Ｓ６１１）。
【０１４３】
ステップＳ６０７において、リビルド処理の停止要求をＣＰＵ１１０から受け付けないと判別した場合（Ｓ６０７でＮＯ）、ＣＰＵ１５０ａはステップＳ６１１の処理へ進む。
【０１４４】
ステップＳ６１１において、リビルド処理の再開要求をＣＰＵ１１０から受け付けたと判別した場合（Ｓ６１１でＹＥＳ）、ＣＰＵ１５０ａは、リビルド処理を再開する（Ｓ６１３）。次にＣＰＵ１５０ａは、リビルド処理が終了したか否かを判別する（Ｓ６１５）。
【０１４５】
ステップＳ６１１において、リビルド処理の再開要求をＣＰＵ１１０から受け付けないと判別した場合（Ｓ６１１でＮＯ）、ＣＰＵ１５０ａはステップＳ６１５の処理へ進む。
【０１４６】
ステップＳ６１５において、リビルド処理が終了したと判別した場合（Ｓ６１５でＹＥＳ）、ＣＰＵ１１０は、リビルド処理の終了をＣＰＵ１１０に通知し（Ｓ６１７）、処理を終了する。
【０１４７】
ステップＳ６１５において、リビルド処理が終了しないと判別した場合（Ｓ６１５でＮＯ）、ＣＰＵ１１０はステップＳ６０７の処理へ進む。
【０１４８】
図１８は、本発明の第５の実施の形態におけるＣＰＵ１１０の動作を示すフローチャートである。
【０１４９】
図１８を参照して、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０からリビルド処理の開始の通知を受信したか否かを判別する（Ｓ６５１）。
【０１５０】
ステップＳ６５１において、リビルド処理の開始の通知を受信したと判別した場合（Ｓ６５１でＹＥＳ）、ＣＰＵ１１０は、リビルド処理の開始（リビルド処理中であること）をメモリ１２０に記憶し（Ｓ６５３）、ステップＳ６５５の処理へ進む。一方、ステップＳ６５１において、リビルド処理の開始の通知を受信しないと判別した場合（Ｓ６５１でＮＯ）、ＣＰＵ１１０はステップＳ６５５の処理へ進む。
【０１５１】
ステップＳ６５５において、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０からリビルド処理の終了の通知を受信したか否かを判別する（Ｓ６５５）。
【０１５２】
ステップＳ６５５において、リビルド処理の終了の通知を受信したと判別した場合（Ｓ６５５でＹＥＳ）、ＣＰＵ１１０は、リビルド処理の終了（リビルド処理中でないこと）をメモリ１２０に記憶し（Ｓ６５７）、ステップＳ６５９の処理へ進む。一方、ステップＳ６５５において、リビルド処理の終了の通知を受信しないと判別した場合（Ｓ６５５でＮＯ）、ＣＰＵ１１０はステップＳ６５９の処理へ進む。
【０１５３】
ステップＳ６５９において、ＣＰＵ１１０は、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたか否かを判別する（Ｓ６５９）。
【０１５４】
ステップＳ６５９において、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判別した場合（Ｓ６５９でＹＥＳ）、ＣＰＵ１１０は、記憶した最新のＲＡＩＤコントローラー１５０のステータスを確認し（Ｓ６６１）、リビルド処理中であるか否かを判別する（Ｓ６６３）。一方、ステップＳ６５９において、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうちいずれにもアクセスする必要が生じないと判別した場合（Ｓ６５９でＮＯ）、ＣＰＵ１１０はステップＳ６５１の処理へ進む。
【０１５５】
ステップＳ６６３において、リビルド処理中であると判別した場合（Ｓ６６３でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の停止を要求する（Ｓ６６５）。続いてＣＰＵ１１０は、必要なＨＤＤにアクセスする（Ｓ６６７）。次にＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求し（Ｓ６６９）、処理を終了する。
【０１５６】
ステップＳ６６３において、リビルド処理中でないと判別した場合（Ｓ６６３でＮＯ）、必要なＨＤＤにアクセスし（Ｓ６７１）、処理を終了する。
【０１５７】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【０１５８】
本実施の形態によれば、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０のステータスを常に把握している。これにより、ＨＤＤにアクセスする必要が生じた場合に、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対してステータスの送信を要求する必要が無くなる。
【０１５９】
［第６の実施の形態］
【０１６０】
本実施の形態では、リビルド処理中であるか否かに関わらず、必要に応じてＣＰＵ１１０がＲＡＩＤコントローラー１５０に対して、リビルド処理の停止または再開を要求する場合について説明する。
【０１６１】
図１９は、本発明の第６の実施の形態におけるＣＰＵ１１０の動作を示すフローチャートである。
【０１６２】
図１９を参照して、ＣＰＵ１１０は、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたか否かを判別する（Ｓ７０１）。第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判別するまで、ＣＰＵ１１０は、ステップＳ７０１の処理を繰り返す。
【０１６３】
ステップＳ７０１において、第１のＨＤＤ１５１および第２のＨＤＤ１５２のうち少なくともいずれか一方にアクセスする必要が生じたと判別した場合（Ｓ７０１でＹＥＳ）、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対してリビルド処理の停止を要求し（７０３）、必要なＨＤＤにアクセスする（Ｓ７０５）。その後ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対して、リビルド処理の再開を要求し（Ｓ７０７）、処理を終了する。
【０１６４】
ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、リビルド処理を行っていない場合に、リビルド処理の停止の要求を受け付けたときは、その要求を無視する。ＲＡＩＤコントローラー１５０のＣＰＵ１５０ａは、リビルド処理を停止していない場合（リビルド処理を全く行っていない場合、またはリビルド処理中の場合）に、リビルド処理の再開の要求を受け付けたときは、その要求を無視する。
【０１６５】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【０１６６】
本実施の形態によれば、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０のステータスに関わらずに、必要に応じてＣＰＵ１５０ａに対してリビルド処理の停止または再開を要求する。これにより、ＨＤＤにアクセスする必要が生じた場合に、ＣＰＵ１１０は、ＲＡＩＤコントローラー１５０に対してステータスの送信を要求する必要が無くなる。
【０１６７】
［第７の実施の形態］
【０１６８】
本実施の形態では、ＲＡＩＤコントローラー１５０がＣＰＵ１１０からリビルド処理の停止の要求を受け付けた場合に、分割データの書き込みの間のウェイト時間を増加することによりリビルド処理を停止する場合について説明する。
【０１６９】
図２０は、本発明の第７の実施の形態における画像形成装置の動作を示すタイミングチャートである。
【０１７０】
図２０を参照して、時刻ｔ０において、ＲＡＩＤコントローラー１５０は、リビルド処理を開始する。ＲＡＩＤコントローラー１５０は、リビルド処理の対象となるデータを複数の分割データＤ１、Ｄ２、Ｄ３・・・Ｄ８に分割して、分割データの各々をこの順序で第２のＨＤＤ１５２に書き込む（複製する）。複数の分割データＤ１、Ｄ２、Ｄ３・・・の各々は、リビルド処理の対象となるデータをバンド毎に分割したものである。
【０１７１】
ＣＰＵ１１０からリビルド処理の停止の要求を受け付けていない場合（時刻ｔ０から時刻ｔ１の間）、ＲＡＩＤコントローラー１５０は、ウェイト時間をゼロに設定する。すなわち、ＲＡＩＤコントローラー１５０は、１つの分割データの書き込みを完了すると、次の分割データの書き込みを直ちに開始する。
【０１７２】
時刻ｔ１において、ＲＡＩＤコントローラー１５０は、分割データＤ６の書き込みを行っている。時刻ｔ１において、ＣＰＵ１１０は、ＨＤＤにアクセスする必要が生じ、ＲＡＩＤコントローラー１５０に対してリビルド処理の停止を要求する。この要求を受け付けても、ＲＡＩＤコントローラー１５０は、分割データＤ６の書き込みを直ちには停止せずに、継続する。
【０１７３】
時刻ｔ２において、ＲＡＩＤコントローラー１５０は、分割データＤ６の書き込みを完了する。ＲＡＩＤコントローラー１５０は、ＣＰＵ１１０からリビルド処理の停止の要求を受け付けた場合、分割データＤ６のリビルド処理が完了してから、分割データＤ７のリビルド処理を開始するまでの間に、ゼロでないウェイト時間を設定する（ウェイト時間を増加する）。この場合、ＣＰＵ１１０がＨＤＤへアクセスするのに十分なウェイト時間が設定されることが好ましい。ウェイト時間は、ＣＰＵ１１０によって設定されてもよい。
【０１７４】
時刻ｔ２の直後の時刻ｔ３から時刻ｔ４にかけて、ＣＰＵ１１０は、必要なＨＤＤへのアクセスを行う。時刻ｔ４において、ＣＰＵ１１０は、ＨＤＤへアクセスを終了する。
【０１７５】
ウェイト時間が経過した時刻ｔ５において、ＲＡＩＤコントローラー１５０は、リビルド処理を再開する。ＲＡＩＤコントローラー１５０は、分割データＤ７から書き込みを再開する。なお、ＲＡＩＤコントローラー１５０は、書き込みが完了した分割データＤ１〜Ｄ５のうちいずれかに戻って書き込みを再開してもよい。この場合、書き込みが完了した分割データＤ１〜Ｄ５の一部または全部が上書きされる。
【０１７６】
ＲＡＩＤコントローラー１５０は、リビルド処理を再開すると、ウェイト時間をゼロに戻す。そしてＲＡＩＤコントローラー１５０は、時刻ｔ６においてリビルド処理を終了する。
【０１７７】
なお、本実施の形態における画像形成装置の構成や、上述以外の動作は、第１の実施の形態の場合の構成および動作と同様であるため、その説明は繰り返さない。
【０１７８】
［その他］
【０１７９】
上述の実施の形態における第１のＨＤＤ１５１および第２のＨＤＤの各々は、固定記憶装置であればよく、ＳＳＤで置き換えられてもよい。
【０１８０】
上述の実施の形態は適宜組み合わせることができる。たとえば、第４の実施の形態において、第３の実施の形態のように、リビルド処理の停止および再開などを、ＲＡＩＤコントローラー１５０が主体的に行ってもよい。
【０１８１】
上述の実施の形態における処理は、ソフトウェアにより行っても、ハードウェア回路を用いて行ってもよい。また、上述の実施の形態における処理を実行するプログラムを提供することもできるし、そのプログラムをＣＤ−ＲＯＭ、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、メモリカードなどの記録媒体に記録してユーザーに提供することにしてもよい。プログラムは、ＣＰＵなどのコンピューターにより実行される。また、プログラムはインターネットなどの通信回線を介して、装置にダウンロードするようにしてもよい。
【０１８２】
上述の実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１８３】
１１０，１５０ａ  ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）
１２０  メモリ  
１２１，１５０ｂ  ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）
１２２，１５０ｃ  ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）
１３０  画像処理装置
１３１  画像編集部
１３２  画像記憶部
１４０  印刷装置
１４１  印刷部
１４２  ステープル部
１５０  ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）コントローラー
１５１，１５２  ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）
１６０  表示装置
１６１  表示パネル
１６２  検出部
１７０  スキャナー装置
１７１  読取部
１８０  ファクシミリ送受信部
Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５，Ｄ６，Ｄ７，Ｄ８  分割データ
ＤＴ  リビルド処理の対象となるデータ
ＰＲ１，ＰＲ２，ＰＲ１０，ＰＲ１１，ＰＲ１２，ＰＲ１３，ＰＲ１４，ＰＲ１５，ＰＲ２０，ＰＲ２１，ＰＲ２２，ＰＲ２３，ＰＲ２４，ＰＲ３０，ＰＲ３１，ＰＲ３２，ＰＲ３３，ＰＲ３４，ＰＲ３５，ＰＲ３６，ＰＲ４０，ＰＲ４１，ＰＲ４２，ＰＲ４３，ＰＲ４４，ＰＲ４５，ＰＲ４６，ＰＲ４７  矢印
【図１】
0006299617.tif 000002
【図２】
0006299617.tif 000003
【図３】
0006299617.tif 000004
【図４】
0006299617.tif 000005
【図５】
0006299617.tif 000006
【図６】
0006299617.tif 000007
【図７】
0006299617.tif 000008
【図８】
0006299617.tif 000009
【図９】
0006299617.tif 000010
【図１０】
0006299617.tif 000011
【図１１】
0006299617.tif 000012
【図１２】
0006299617.tif 000013
【図１３】
0006299617.tif 000014
【図１４】
0006299617.tif 000015
【図１５】
0006299617.tif 000016
【図１６】
0006299617.tif 000017
【図１７】
0006299617.tif 000018
【図１８】
0006299617.tif 000019
【図１９】
0006299617.tif 000020
【図２０】
0006299617.tif 000021