(57)【要約】【課題】異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制する。【解決手段】不揮発性ＲＡＭには、制御実行部の制御に関わる情報の履歴である動作ログを記憶する動作ログ領域Ａｔと、制御実行部による制御において異常な状態が発生したか否かを記憶する状態ログ領域Ａｓと、制御実行部がプログラムを実行することに伴って生じる作業データを記憶する作業領域Ａｗとが設けられる。そして、制御実行部の起動に伴って状態ログ領域Ａｓの記憶内容を確認し、異常な状態の発生が確認された場合に、動作ログ領域Ａｔのうち前回動作ログが記憶されている記録済領域から、前回動作ログを読み出すとともに、動作ログ領域Ａｔのうち前回動作ログが記憶されていない未記録領域に、今回の起動に伴う今回動作ログを書き込む。【選択図】図９
2013171484.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行することで、接続された機器を制御する制御手段と、
読み書き可能であって、電源を供給しなくても記憶している情報を保持していることが可能な不揮発性メモリを備え、当該不揮発性メモリには、前記制御手段の制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御手段による制御において異常な状態が発生したか否かを記憶する第２記憶領域と、当該制御手段が前記プログラムを実行することに伴って生じる作業データを記憶する第３記憶領域とが設けられる主記憶手段と、
前記制御手段の起動に伴って前記第２記憶領域の記憶内容を確認する確認手段と、
前記確認手段によって前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、当該第１記憶領域のうち当該履歴情報が記憶されていない未記憶領域に、今回の起動に伴う新たな履歴情報を書き込む読み書き手段と
を含む情報処理装置。
【請求項２】
読み書き可能であって、電源を供給しなくても情報を保持していることが可能な補助記憶手段をさらに備え、
前記補助記憶手段は、前記読み書き手段が前記第１記憶領域から読み出した前記履歴情報を記憶すること
を特徴とする請求項１記載の情報処理装置。
【請求項３】
前記主記憶手段における前記不揮発性メモリが、ＭＲＡＭ、ＦｅＲＡＭ、ＰＲＡＭ、ＲｅＲＡＭのいずれかであり、前記補助記憶手段が、ＨＤＤまたはＳＳＤであることを特徴とする請求項２記載の情報処理装置。
【請求項４】
プログラムを実行することで、接続された機器を制御する制御手段と、
読み書き可能であって、電源を供給しなくても記憶している情報を保持することが可能な不揮発性メモリと、読み書き可能であって、電源を供給しないと記憶している情報を保持していることが不可能な揮発性メモリとを備え、当該不揮発性メモリには、前記制御手段の制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御手段による制御において異常な状態が発生したか否かを記憶する第２記憶領域とが設けられ、当該揮発性メモリには、当該制御手段が前記プログラムを実行することに伴って生じる作業データを記憶する第３記憶領域が設けられる主記憶手段と、
前記制御手段の起動に伴って前記第２記憶領域の記憶内容を確認する確認手段と、
前記確認手段によって前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、前記揮発性メモリの前記第３記憶領域内に設けた第４記憶領域に、今回の起動に伴う新たな履歴情報を書き込む読み書き手段と、
前記読み書き手段による前記履歴情報の読み出しが完了した後に、前記第１記憶領域における前記記憶済領域の内容を消去するとともに、前記第４記憶領域に記憶される前記新たな履歴情報を当該第１記憶領域に転送する転送手段と
を含む情報処理装置。
【請求項５】
前記読み書き手段は、前記第１記憶領域における前記記憶済領域の内容の消去が完了した後に、前記新たな履歴情報のつづきを当該第１記憶領域に書き込むことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記転送手段による前記新たな履歴情報の転送が完了した後に、前記第４記憶領域を前記第３記憶領域に再設定する再設定手段をさらに含むことを特徴とする請求項４または５記載の情報処理装置。
【請求項７】
コンピュータに、
接続された機器を制御する機能と、
読み書き可能であって、電源を供給しなくても記憶している情報を保持していることが可能な不揮発性メモリに対し、前記制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御において異常な状態が発生したか否かを記憶する第２記憶領域と、当該制御に伴って生じる作業データを記憶する第３記憶領域とを設定する機能と、
前記制御する機能の起動に伴って前記第２記憶領域の記憶内容を確認する機能と、
前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、当該第１記憶領域のうち当該履歴情報が記憶されていない未記憶領域に、今回の起動に伴う新たな履歴情報を書き込む機能と
を実現させるプログラム。
【請求項８】
コンピュータに、
接続された機器を制御する機能と、
読み書き可能であって、電源を供給しなくても記憶している情報を保持することが可能な不揮発性メモリと、読み書き可能であって、電源を供給しないと記憶している情報を保持していることが不可能な揮発性メモリとに対し、当該不揮発性メモリには、前記制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御において異常な状態が発生したか否かを記憶する第２記憶領域とを設定し、当該揮発性メモリには、当該制御に伴って生じる作業データを記憶する第３記憶領域を設定する機能と、
前記制御する機能の起動に伴って前記第２記憶領域の記憶内容を確認する機能と、
前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、前記揮発性メモリの前記第３記憶領域内に設けた第４記憶領域に、今回の起動に伴う新たな履歴情報を書き込む機能と、
前記履歴情報の読み出しが完了した後に、前記第１記憶領域における前記記憶済領域の内容を消去するとともに、前記第４記憶領域に記憶される前記新たな履歴情報を当該第１記憶領域に転送する機能と
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
公報記載の従来技術として、中央処理装置と、揮発性を有する主記憶装置と、外部記憶装置とを備え、システム運転中に発生した障害を検出してその内容を外部記憶装置に記憶するようにした情報処理装置において、主記憶装置とは別に読み書き可能な不揮発性のＮＶＲＡＭを設け、中央処理装置は、障害発生時に、発生した障害の内容をＮＶＲＡＭに一旦記憶させ、その後、ＮＶＲＡＭに記憶させた障害の内容を、外部記憶装置に転送させるものが存在する（特許文献１参照）。
【０００３】
また、他の公報記載の従来技術として、コンピュータシステムに異常が発生したときの状況情報を記録しておく異常情報記録方式において、異常発生時の状況情報をシステムの不揮発性メモリに記録し、システムの継続運転中又はシステム停止後の再起動時に、不揮発性メモリの内容を外部記憶装置に複写するものが存在する（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−１４７１９７号公報
【特許文献２】特開平９−２５９０１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制することを目的とする。
【課題を解決するための手段】
【０００６】
請求項１記載の発明は、プログラムを実行することで、接続された機器を制御する制御手段と、読み書き可能であって、電源を供給しなくても記憶している情報を保持していることが可能な不揮発性メモリを備え、当該不揮発性メモリには、前記制御手段の制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御手段による制御において異常な状態が発生したか否かを記憶する第２記憶領域と、当該制御手段が前記プログラムを実行することに伴って生じる作業データを記憶する第３記憶領域とが設けられる主記憶手段と、前記制御手段の起動に伴って前記第２記憶領域の記憶内容を確認する確認手段と、前記確認手段によって前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、当該第１記憶領域のうち当該履歴情報が記憶されていない未記憶領域に、今回の起動に伴う新たな履歴情報を書き込む読み書き手段とを含む情報処理装置である。
【０００７】
請求項２記載の発明は、読み書き可能であって、電源を供給しなくても情報を保持していることが可能な補助記憶手段をさらに備え、前記補助記憶手段は、前記読み書き手段が前記第１記憶領域から読み出した前記履歴情報を記憶することを特徴とする請求項１記載の情報処理装置である。
請求項３記載の発明は、前記主記憶手段における前記不揮発性メモリが、ＭＲＡＭ、ＦｅＲＡＭ、ＰＲＡＭ、ＲｅＲＡＭのいずれかであり、前記補助記憶手段が、ＨＤＤまたはＳＳＤであることを特徴とする請求項２記載の情報処理装置である。
【０００８】
請求項４記載の発明は、プログラムを実行することで、接続された機器を制御する制御手段と、読み書き可能であって、電源を供給しなくても記憶している情報を保持することが可能な不揮発性メモリと、読み書き可能であって、電源を供給しないと記憶している情報を保持していることが不可能な揮発性メモリとを備え、当該不揮発性メモリには、前記制御手段の制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御手段による制御において異常な状態が発生したか否かを記憶する第２記憶領域とが設けられ、当該揮発性メモリには、当該制御手段が前記プログラムを実行することに伴って生じる作業データを記憶する第３記憶領域が設けられる主記憶手段と、前記制御手段の起動に伴って前記第２記憶領域の記憶内容を確認する確認手段と、前記確認手段によって前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、前記揮発性メモリの前記第３記憶領域内に設けた第４記憶領域に、今回の起動に伴う新たな履歴情報を書き込む読み書き手段と、前記読み書き手段による前記履歴情報の読み出しが完了した後に、前記第１記憶領域における前記記憶済領域の内容を消去するとともに、前記第４記憶領域に記憶される前記新たな履歴情報を当該第１記憶領域に転送する転送手段とを含む情報処理装置である。
【０００９】
請求項５記載の発明は、前記読み書き手段は、前記第１記憶領域における前記記憶済領域の内容の消去が完了した後に、前記新たな履歴情報のつづきを当該第１記憶領域に書き込むことを特徴とする請求項４記載の情報処理装置である。
請求項６記載の発明は、前記転送手段による前記新たな履歴情報の転送が完了した後に、前記第４記憶領域を前記第３記憶領域に再設定する再設定手段をさらに含むことを特徴とする請求項４または５記載の情報処理装置である。
【００１０】
請求項７記載の発明は、コンピュータに、接続された機器を制御する機能と、読み書き可能であって、電源を供給しなくても記憶している情報を保持していることが可能な不揮発性メモリに対し、前記制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御において異常な状態が発生したか否かを記憶する第２記憶領域と、当該制御に伴って生じる作業データを記憶する第３記憶領域とを設定する機能と、前記制御する機能の起動に伴って前記第２記憶領域の記憶内容を確認する機能と、前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、当該第１記憶領域のうち当該履歴情報が記憶されていない未記憶領域に、今回の起動に伴う新たな履歴情報を書き込む機能とを実現させるプログラムである。
【００１１】
請求項８記載の発明は、コンピュータに、接続された機器を制御する機能と、読み書き可能であって、電源を供給しなくても記憶している情報を保持することが可能な不揮発性メモリと、読み書き可能であって、電源を供給しないと記憶している情報を保持していることが不可能な揮発性メモリとに対し、当該不揮発性メモリには、前記制御に関わる情報の履歴である履歴情報を記憶する第１記憶領域と、当該制御において異常な状態が発生したか否かを記憶する第２記憶領域とを設定し、当該揮発性メモリには、当該制御に伴って生じる作業データを記憶する第３記憶領域を設定する機能と、前記制御する機能の起動に伴って前記第２記憶領域の記憶内容を確認する機能と、前記異常な状態の発生が確認された場合に、前記第１記憶領域のうち前記履歴情報が記憶されている記憶済領域から当該履歴情報を読み出すとともに、前記揮発性メモリの前記第３記憶領域内に設けた第４記憶領域に、今回の起動に伴う新たな履歴情報を書き込む機能と、前記履歴情報の読み出しが完了した後に、前記第１記憶領域における前記記憶済領域の内容を消去するとともに、前記第４記憶領域に記憶される前記新たな履歴情報を当該第１記憶領域に転送する機能とを実現させるプログラムである。
【発明の効果】
【００１２】
請求項１記載の発明によれば、本構成を有していない場合と比較して、異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制することができる。
請求項２記載の発明によれば、本構成を有していない場合と比較して、異常が発生する前の履歴情報を装置内に保持させることができる。
請求項３記載の発明によれば、例えば不揮発性メモリとしてＥＥＰＲＯＭあるいはフラッシュメモリを用いた場合と比較して、不揮発性メモリからの履歴情報の読み取りをより高速に行うことができる。
請求項４記載の発明によれば、本構成を有していない場合と比較して、異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制することができる。
請求項５記載の発明によれば、本構成を有していない場合と比較して、揮発性メモリにおける第３記憶領域の減少を抑制することができる。
請求項６記載の発明によれば、本構成を有していない場合と比較して、揮発性メモリの第３記憶領域をより有効に活用することができる。
請求項７記載の発明によれば、本構成を有していない場合と比較して、異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制することができる。
請求項８記載の発明によれば、本構成を有していない場合と比較して、異常が発生した後の履歴情報によって、異常が発生する前の履歴情報が上書きされるのを抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】画像形成システムの構成の一例を示す図である。
【図２】実施の形態１の画像形成装置に設けられた制御部のハードウェア構成の一例を示すブロック図である。
【図３】制御部の機能構成を示したブロック図である。
【図４】不揮発性ＲＡＭで構成される記憶領域の構造を説明するための図である。
【図５】記憶される動作ログの一例を示した図である。
【図６】制御部の動作を説明するためのフローチャートである。
【図７】制御部の動作を説明するためのフローチャート（サブルーチン）である。
【図８】状態ログが「正常」に設定されていた場合における、主記憶領域の状態の変遷を説明するための図である。
【図９】状態ログが「異常」に設定されていた場合における、主記憶領域の状態の変遷を説明するための図である。
【図１０】実施の形態２の画像形成装置に設けられた制御部のハードウェア構成を示したブロック図である。
【図１１】不揮発性ＲＡＭおよび揮発性ＲＡＭの両者で構成される記憶領域の構造を説明するための図である。
【図１２】制御部の動作を説明するためのフローチャート（サブルーチン）である。
【図１３】状態ログが「異常」に設定されていた場合における、主記憶領域の状態の変遷を説明するための図である。
【図１４】状態ログが「異常」に設定されていた場合における、主記憶領域の状態の変遷（つづき）を説明するための図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
＜実施の形態１＞
図１は、本実施の形態が適用される画像形成システムの構成の一例を示す図である。
この画像形成システムは、スキャン機能、プリント機能、コピー機能およびファクシミリ機能を備えた所謂複合機として動作する画像形成装置１と、画像形成装置１に接続されるネットワーク２と、ネットワーク２に接続される端末装置３と、ネットワーク２に接続されるファクシミリ装置４と、ネットワーク２に接続されるサーバ装置５とを有している。
【００１５】
ここで、ネットワーク２は、インターネット回線や電話回線等によって構成されている。また、端末装置３は、ネットワーク２を介して、画像形成装置１に画像の形成等を指示するものであり、例えばＰＣ（Personal Computer）で構成される。さらに、ファクシミリ装置４は、ネットワーク２を介して、画像形成装置１との間でファクシミリを送受信する。さらにまた、サーバ装置５は、ネットワーク２を介して、画像形成装置１との間でデータ（プログラムを含む）を送受信する。
【００１６】
また、画像形成装置１は、紙等の記録媒体に記録された画像を読み取る画像読取部１０と、紙等の記録媒体に画像を形成する画像形成部２０と、ユーザから電源のオン／オフ、スキャン機能、プリント機能、コピー機能およびファクシミリ機能を用いた動作に関連する指示を受け付けるとともに、ユーザに対してメッセージを表示するユーザインタフェース（ＵＩ）３０と、ネットワーク２を介して端末装置３、ファクシミリ装置４およびサーバ装置５との間でデータの送受信を行う送受信部４０と、これら画像読取部１０、画像形成部２０、ＵＩ３０および送受信部４０の動作を制御する制御部５０とを備えている。
【００１７】
そして、この画像形成装置１では、画像読取部１０によってスキャン機能が実現され、画像形成部２０によってプリント機能が実現され、画像読取部１０および画像形成部２０によってコピー機能が実現され、画像読取部１０、画像形成部２０および送受信部４０によってファクシミリ機能が実現される。なお、送受信部４０は、例えばインターネット回線用のものと電話回線用のものとを、別々に設けるようにしてもかまわない。
【００１８】
図２は、本実施の形態の画像形成装置１に設けられた制御部５０のハードウェア構成の一例を示すブロック図である。
制御部５０は、種々の演算を実行することによって画像形成装置１の各部を制御するＣＰＵ（Central Processing Unit：中央処理装置）５１と、ＣＰＵ５１に接続され、ＣＰＵ５１との間で各種データのやりとりを行うバスブリッジ５２とを備えている。制御部５０において、バスブリッジ５２には、第１のクロックでデータのやりとりを行うメモリバス５３と、第１のクロックよりも周波数が低い第２のクロックでデータのやりとりを行うＰＣＩ（Peripheral Component Interconnect）バス５４とが接続されている。
【００１９】
また、制御部５０は、ＲＯＭ（Read Only Memory）５５と、不揮発性ＲＡＭ（Random Access Memory）５６とを備えている。そして、これらＲＯＭ５５および不揮発性ＲＡＭ５６は、それぞれ、メモリバス５３に接続されている。以下の説明では、メモリバス５３に接続されるＲＯＭ５５および不揮発性ＲＡＭ５６を、まとめて『メインメモリ』と称することがある。
【００２０】
さらに、制御部５０は、ＵＩ３０を制御するためのＵＩインタフェース回路（ＵＩＩＦ）６１と、画像形成部２０を制御するためのプリントインタフェース回路（プリントＩＦ）６２と、例えば画像形成が行われた記録媒体に後処理を施す後処理部７０など、画像形成装置１に後付けで装着されるオプションユニットを制御するためのオプションインタフェース回路（オプションＩＦ）６３と、送受信部４０を制御するためのネットワークインタフェース回路（ネットワークＩＦ）６４と、ＵＳＢ（Universal Serial Bus）デバイスを制御するためのＵＳＢインタフェース回路（ＵＳＢＩＦ）６５と、補助記憶手段の一例としてのＨＤＤ（Hard Disk Drive）装置９０を制御するためのＨＤＤインタフェース回路（ＨＤＤＩＦ）６６とを備えている。そして、これらＵＩＩＦ６１、プリントＩＦ６２、オプションＩＦ６３、ネットワークＩＦ６４、ＵＳＢＩＦ６５およびＨＤＤＩＦ６６は、それぞれ、ＰＣＩバス５４に接続されている。また、本実施の形態では、ＵＳＢＩＦ６５に対し、画像読取部１０が接続されている。なお、ＵＳＢＩＦ６５には、例えば、装着されたメモリカード８１に対しデータを読み書きするカードリーダ８０が接続されることもある。
【００２１】
本実施の形態の制御部５０において、ＣＰＵ５１は、バスブリッジ５２およびメモリバス５３を介して、ＲＯＭ５５および不揮発性ＲＡＭ５６に直接アクセスすることが可能となっている。一方、ＣＰＵ５１は、バスブリッジ５２およびＰＣＩバス５４を介して、ＨＤＤ装置９０に直接アクセスすることができないようになっている。
【００２２】
ここで、ＲＯＭ５５は、所謂マスクＲＯＭ、各種ＰＲＯＭ（Programmable ROM：例えばＯＴＰ  ＲＯＭ (One Time Programmable ROM)、ＵＶ−ＥＰＲＯＭ（Ultra-Violet Erasable Programmable ROM）、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM））、フラッシュメモリなどで構成されている。なお、この例では、ＲＯＭ５５として、フラッシュメモリが用いられている。
【００２３】
また、不揮発性メモリの一例としての不揮発性ＲＡＭ５６は、ＭＲＡＭ（Magnetoresistive RAM）、ＦｅＲＡＭ（Ferroelectric RAM）、ＰＲＡＭ（Phase change RAM）、ＲｅＲＡＭ（Resistance RAM）など、電源を供給しなくても、記憶している情報を保持することが可能な不揮発性メモリによって構成されている。なお、この例では、不揮発性ＲＡＭ５６として、ＲＯＭ５５として用いられるフラッシュメモリよりも高速にデータの読み書きが可能なＭＲＡＭが用いられている。
【００２４】
図３は、図２に示す制御部５０の機能構成を示したブロック図である。
本実施の形態の制御部５０は、制御実行部５０１と、入出力管理部５０２と、履歴作成部５０３と、記憶領域管理部５０４と、主記憶部５０５とを有している。
制御手段の一例としての制御実行部５０１は、主記憶部５０５から読み出した各種プログラムを実行することにより、画像形成装置１を構成する各部を動作させるための制御を行う。
入出力管理部５０２は、制御部５０と画像形成装置１を構成する各部との間におけるデータの入出力を管理する。
履歴作成部５０３は、制御実行部５０１が制御を実行することに伴って生成される、画像形成装置１の動作に関わる履歴の情報（履歴情報：以下では動作ログと呼ぶ）を作成する。
確認手段および読み書き手段の一例としての記憶領域管理部５０４は、主記憶部５０５における記憶領域の管理を行う。より具体的に説明すると、記憶領域管理部５０４は、制御実行部５０１が実行するプログラム、制御実行部５０１によるプログラムの実行に伴って一時的に生じるデータ、履歴作成部５０３で作成された動作ログ等を、主記憶部５０５との間でやりとりする際の入出力の制御を行う。また、記憶領域管理部５０４は、主記憶部５０５における記憶領域の設定も行う。
主記憶手段の一例としての主記憶部５０５は、制御実行部５０１が実行する各種プログラムや、制御部５０内で作成された各種データ（上述した動作ログを含む）を記憶する。
【００２５】
なお、本実施の形態において、制御実行部５０１および履歴作成部５０３はＣＰＵ５１によって実現され、入出力管理部５０２はバスブリッジ５２によって実現され、記憶領域管理部５０４はＣＰＵ５１およびバスブリッジ５２によって実現され、主記憶部５０５はメインメモリすなわちＲＯＭ５５および不揮発性ＲＡＭ５６によって実現される。そして、主記憶部５０５のうち、制御実行部５０１が実行する各種プログラムはＲＯＭ５５に記憶され、制御部５０内で作成された各種データは不揮発性ＲＡＭ５６に記憶される。
【００２６】
図４は、メインメモリのうち、不揮発性ＲＡＭ５６で構成される記憶領域の構造を説明するための図である。
本実施の形態において、不揮発性ＲＡＭ５６はデータの読み書きが可能な主記憶領域Ａｍを有しており、この主記憶領域Ａｍは、作業領域Ａｗとログ領域Ａｌとを含んでいる。また、ログ領域Ａｌは、動作ログ領域Ａｔと状態ログ領域Ａｓとを有している。
【００２７】
これらのうち、第３記憶領域の一例としての作業領域Ａｗには、制御実行部５０１によるプログラムの実行に伴って一時的に生じるデータ（作業データ）が記憶される。また、ログ領域Ａｌには、履歴作成部５０３で作成された動作ログ等が記憶される。ここで、第１記憶領域の一例としての動作ログ領域Ａｔには、履歴作成部５０３で作成された動作ログそのものが記憶される。一方、第２記憶領域の一例としての状態ログ領域Ａｓには、履歴作成部５０３で作成された動作ログ中に、動作における異常の発生を示すエラーログが含まれているか否かを示すフラグが記憶される。なお、動作ログ中にエラーログが含まれていない場合におけるフラグの値は「正常」（例えば０）に設定され、動作ログ中にエラーログが含まれている場合におけるフラグの値は「異常」（例えば１）に設定される。
【００２８】
図５は、図３に示す履歴作成部５０３で作成され、不揮発性ＲＡＭ５６のログ領域Ａｌに記憶される動作ログの一例を示した図である。
図５に示すように、動作ログは、画像形成装置１（ＣＰＵ５１）が動作することに伴う、各構成（画像読取部１０、画像形成部２０など）の動作内容の情報、ＵＩ３０等を介して画像形成装置１が受けた指示内容に関する情報、画像形成装置１の各構成の状態情報、および、エラーに関する情報などの複数のイベント情報によって構成される。ここで、各イベント情報には、その発生順にイベント番号が付されており、各イベント情報の内容には、そのイベントの発生日時が含まれている。また、各イベント情報には、それぞれのイベントがエラーに関するものであるか否かを表すエラー情報が対応付けられている。
【００２９】
図５に示す動作ログにおいて、例えばイベント番号１に対応するイベント情報には、画像形成装置１の起動（電源オン）に伴う、各構成の初期化の開始が記述されている。また、例えばイベント番号７に対応するイベント情報には、各構成の初期化の完了が記述されている。さらに、例えばイベント番号１９に対応するイベント情報には、エラー番号ｘｘｘｘによるエラーの発生が記述されている。そして、エラー発生（エラーログ）に対応するイベント番号（この例においてはイベント番号１９）には、エラー情報の欄にチェックマークが付与されている。
【００３０】
図６および図７は、本実施の形態における制御部５０の動作を説明するためのフローチャートである。ここで、図６は制御部５０の動作を説明するためのメインルーチンを、図７は制御部５０の動作を説明するためのサブルーチンを、それぞれ示している。
【００３１】
画像形成装置１の電源がオンされると（ステップ１０１）、画像形成装置１が動作を開始する。これに伴い、制御部５０では、記憶領域管理部５０４が、主記憶部５０５における記憶領域（図４参照）の設定を行う（ステップ１０２）。また、電源のオンに伴い、履歴作成部５０３は、動作ログの作成を開始する。
【００３２】
次に、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓから、記憶されている状態ログの内容を読み出す（ステップ１０３）。なお、本実施の形態では、状態ログが不揮発性ＲＡＭ５６内に記憶されていることから、ステップ１０３で読み出される状態ログの内容は、ステップ１０１における今回の電源オンの前に最後に起動された際に、既に記憶されているものである。そして、制御実行部５０１は、ステップ１０３で読み出した状態ログが「正常」であったか否かを判断する（ステップ１０４）。
【００３３】
ステップ１０４において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔのうち、既に動作ログが記憶されている記録済領域（記憶済領域）から、この動作ログを消去する（ステップ１０５）。なお、本実施の形態では、動作ログも不揮発性ＲＡＭ５６内に記憶されていることから、ステップ１０５で消去される動作ログの内容は、ステップ１０１における今回の電源オンの前に最後に起動された際に、既に記憶されているものである。以下の説明においては、ステップ１０１の電源オン時において、動作ログ領域Ａｔに記憶されている動作ログのことを『前回動作ログ』と呼ぶ。また、ステップ１０５における処理に伴い、動作ログ領域Ａｔは、その全域が未記録領域（未記憶領域）となる。
【００３４】
続いて、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔにおける未記録領域に対し、今回の電源オンに伴って履歴作成部５０３で作成された動作ログの書き込みを開始する（ステップ１０６）。以下の説明においては、ステップ１０１の電源オン後に履歴作成部５０３で作成される動作ログのことを『今回動作ログ』と呼ぶ。
【００３５】
その後、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に書き込まれる今回動作ログを監視し、今回動作ログにエラーログが含まれているか否か、すなわち、画像形成装置１の動作中にエラーが発生したか否かを判断する（ステップ１０７）。
【００３６】
ステップ１０７において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓに格納される状態ログを、「異常」に設定し（ステップ１０８）、その後、制御実行部５０１が、画像形成装置１の再起動を実行する（ステップ１０９）。ステップ１０９において画像形成装置１の再起動が実行された後は、ステップ１０３に戻って処理を続行する。なお、ステップ１０９における再起動が実行された場合、状態ログ領域Ａｓに記憶される状態ログが「異常」に設定されていることにより、ステップ１０４において否定の判断（Ｎｏ）がなされる。
【００３７】
一方、ステップ１０７において否定の判断（Ｎｏ）を行った場合、制御実行部５０１は、画像形成装置１の電源がオフされたか否かを判断する（ステップ１１０）。ステップ１１０において否定の判断（Ｎｏ）を行った場合はステップ１０７に戻って処理を続行し、ステップ１１０において肯定の判断（Ｙｅｓ）の判断を行った場合は、画像形成装置１の電源を切ることによって画像形成装置１の動作を停止させる。
【００３８】
なお、本実施の形態では、不揮発性ＲＡＭ５６にログ領域Ａｌが配置されているため、画像形成装置１の電源をオフにした後も、今回の起動において動作ログ領域Ａｔに記憶された今回動作ログおよび状態ログ領域Ａｓに記憶された状態ログは、その内容が消去されずにそのまま残る。そして、次に画像形成装置１の電源がオンされた際に、それぞれが状態ログおよび前回動作ログとして機能することになる。
【００３９】
他方、ステップ１０４において否定の判断（Ｎｏ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域を除外した残りの未記録領域に対し、今回の電源オンに伴って履歴作成部５０３で作成された今回動作ログの書き込みを開始する（ステップ２０１）。また、記憶領域管理部５０４は、動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域から前回動作ログを読み出すとともに、読み出した前回動作ログの、ＨＤＤ装置９０への転送を開始する（ステップ２０２）。このとき、ＨＤＤ装置９０は、制御部５０から転送されてきた前回動作ログを、順次記憶していく。
【００４０】
そして、制御実行部５０１は、ステップ２０２で開始された前回動作ログの転送が完了したか否かを判断する（ステップ２０３）。ステップ２０３において否定の判断（Ｎｏ）を行った場合は、ステップ２０３に戻る。一方、ステップ２０３において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域から、この前回動作ログを消去する（ステップ２０４）。なお、ステップ２０４における処理に伴い、動作ログ領域Ａｔのうち、前回動作ログが記憶されていた記録済領域は、未記録領域に設定される。ただし、動作ログ領域Ａｔのうち、ステップ２０１での処理に伴う今回動作ログが記憶されている記録済領域は、消去されずにそのまま残る。
【００４１】
その後、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓに記憶される状態ログを「異常」から「正常」に変更する設定を行い（ステップ２０５）、ステップ１０７へと移行する。
【００４２】
なお、ステップ２０２において不揮発性ＲＡＭ５６からＨＤＤ装置９０に転送（複写）された前回動作ログは、その後、画像形成装置１に直接あるいはネットワーク２を介して接続されたコンピュータ装置により、エラーの発生要因の特定を行うための解析に用いられる。ここで、本実施の形態の動作ログを用いた場合、発生したエラーの内容（エラー番号）だけでなく、そのエラーが発生する前に、画像形成装置１においてどのような処理（動作）が行われていたのかについても把握することが可能となる。このため、例えばエラー番号だけに基づいて原因を推定する場合と比較して、エラーの発生要因を特定する際の精度を高めることができる。また、このような動作ログを用いることにより、例えば複合的な要因（画像形成装置１を構成する複数の機器を、特定の組み合わせ且つ特定の手順で動作させたような場合）で発生するようなエラーについても、より容易に、その原因を特定することが可能になる。
【００４３】
次に、図６および図７を用いて説明した動作における、主記憶領域Ａｍの状態の変遷について、具体的に例を挙げながら説明を行う。
【００４４】
図８は、状態ログが「正常」に設定されていた場合における、主記憶領域Ａｍの状態の変遷を説明するための図である。図８に示す例では、ステップ１０４において肯定の判断（Ｙｅｓ）がなされる。ここで、図８（ａ）は、ステップ１０３での主記憶領域Ａｍの状態を、図８（ｂ）は、ステップ１０５での主記憶領域Ａｍの状態を、図８（ｃ）はステップ１０６での主記憶領域Ａｍの状態を、それぞれ例示している。
【００４５】
なお、図８に示す例では、ステップ１０２において、主記憶領域Ａｍが作業領域Ａｗとログ領域Ａｌとを含み、且つ、ログ領域Ａｌが動作ログ領域Ａｔと状態ログ領域Ａｓとを含むように、記憶領域の設定が行われる。
【００４６】
このとき、作業領域Ａｗには、例えば、画像読取部１０で読み取ったスキャンデータを一時的に格納するスキャンバッファ領域と、画像形成部２０にて形成する前のプリントデータを一時的に格納するプリントバッファ領域とが設定される。また、ログ領域Ａｌにおける動作ログ領域Ａｔには、前回動作ログが記憶された記録済領域と、前回動作ログが記憶されていない未記録領域とが存在している。そして、この場合においては、ログ領域Ａｌにおける状態ログ領域Ａｓに、状態ログとして「正常」を表すフラグが記憶されている。
【００４７】
まず、ステップ１０３では、図８（ａ）に示すように、状態ログ領域Ａｓに記憶される状態ログが読み出される（読み出しを、図中では「Ｒ」として示す：以下の説明においても同じ）。
【００４８】
そして、ステップ１０４で肯定の判断（Ｙｅｓ）がなされることに伴い、ステップ１０５では、図８（ｂ）に示すように、動作ログ領域Ａｔのうち、記録済領域に存在する前回動作ログが消去される。
【００４９】
その後、ステップ１０６では、図８（ｃ）に示すように、ステップ１０５においてすべての領域が未記録領域となった動作ログ領域Ａｔに、その先頭番地から、今回動作ログの書き込みが開始される（書き込みを、図中では「Ｗ」として示す：以下同じ）。
そして、ステップ１０６以降は、ステップ１０９の再起動あるいはステップ１１０の電源オフが起こるまで、動作ログ領域Ａｔの未記録領域に対する、今回動作ログの書き込みが続けられることになる。
なお、この間、状態ログ領域Ａｓにおける状態ログの値は、「正常」のままである。
【００５０】
図９は、状態ログが「異常」に設定されていた場合における、主記憶領域Ａｍの状態の変遷を説明するための図である。図９に示す例では、ステップ１０４において否定の判断（Ｎｏ）がなされる。ここで、図９（ａ）は、ステップ１０３での主記憶領域Ａｍの状態を、図９（ｂ）は、ステップ２０１およびステップ２０２での主記憶領域Ａｍの状態を、図９（ｃ）は、ステップ２０４における主記憶領域Ａｍの状態を、図９（ｄ）は、ステップ２０５における主記憶領域Ａｍの状態を、それぞれ示している。
【００５１】
なお、図９に示す例では、図８に示したものと同じく、ステップ１０２において、主記憶領域Ａｍが作業領域Ａｗとログ領域Ａｌとを含み、且つ、ログ領域Ａｌが動作ログ領域Ａｔと状態ログ領域Ａｓとを含むように、記憶領域の設定が行われる。
【００５２】
このとき、作業領域Ａｗには、例えば、画像読取部１０で読み取ったスキャンデータを一時的に格納するスキャンバッファ領域と、画像形成部２０にて形成する前のプリントデータを一時的に格納するプリントバッファ領域とが設定される。また、ログ領域Ａｌにおける動作ログ領域Ａｔには、前回動作ログが記憶された記録済領域と、前回動作ログが記憶されていない未記録領域とが存在している。ただし、この場合においては、ログ領域Ａｌにおける状態ログ領域Ａｓに、状態ログとして「異常」を表すフラグが記憶されている。
【００５３】
まず、ステップ１０３では、図９（ａ）に示すように、状態ログ領域Ａｓに記憶される状態ログが読み出される。
【００５４】
そして、ステップ１０４で否定の判断（Ｎｏ）がなされることに伴い、ステップ２０１およびステップ２０２では、図９（ｂ）に示すように、動作ログ領域Ａｔのうち、前回動作ログが記憶される記録済領域を除く未記録領域の先頭番地から、今回動作ログの書き込みが開始され、且つ、記録済領域から前回動作ログの読み出し（転送）が開始される。
【００５５】
それから、ステップ２０３で肯定の判断（Ｙｅｓ）がなされることに伴い、ステップ２０４では、図９（ｃ）に示すように、動作ログ領域Ａｔのうち、前回動作ログを記憶する記録済領域の記憶内容が消去される。このとき、動作ログ領域Ａｔには、今回動作ログを記憶した記録済領域が存在するようになっているが、今回動作ログを記憶する記録済領域の記憶内容は、消去されずにそのまま残る。
【００５６】
その後、ステップ２０５では、図９（ｄ）に示すように、状態ログ領域Ａｓに記憶される状態ログの値が、「異常」から「正常」に書き換えられる。
そして、ステップ２０１以降は、ステップ１０９の再起動あるいはステップ１１０の電源オフが起こるまで、動作ログ領域Ａｔの未記録領域に対する、今回動作ログの書き込みが続けられることになる。
【００５７】
＜実施の形態２＞
本実施の形態は、実施の形態１とほぼ同じであるが、実施の形態１では主記憶領域Ａｍを不揮発性メモリのみによって構成していたのに対し、本実施の形態では主記憶領域Ａｍを不揮発性メモリと揮発性メモリとを組み合わせて構成するようにしたものである。なお、本実施の形態において、実施の形態１と同様のものについては、同じ符号を付してその詳細な説明を省略する。
【００５８】
図１０は、本実施の形態の画像形成装置１に設けられた制御部５０のハードウェア構成の一例を示すブロック図である。
本実施の形態の制御部５０の構成は、実施の形態１で説明したもの（図２参照）とほぼ同じであるが、ＲＯＭ５５および不揮発性ＲＡＭ５６とともにメモリバス５３に接続される揮発性ＲＡＭ５７を、さらに備えている点が実施の形態１とは異なる。
【００５９】
揮発性メモリの一例としての揮発性ＲＡＭ５７は、ＤＲＡＭ（Dynamic RAM）やＳＲＡＭ（Static RAM）など、電源を供給しないと、記憶している情報を保持することができない揮発性メモリによって構成されている。なお、この例では、揮発性ＲＡＭ５７として、ＤＲＡＭが用いられている。
【００６０】
ここで、本実施の形態では、ＲＯＭ５５、不揮発性ＲＡＭ５６および揮発性ＲＡＭ５７の三者によって、『メインメモリ』が構成される。そして、本実施の形態では、不揮発性ＲＡＭ５６および揮発性ＲＡＭ５７が、ともに第１のクロックでデータの読み書きを行う。このため、不揮発性ＲＡＭ５６は、揮発性ＲＡＭ５７（この例ではＤＲＡＭ）と同等の読み書き性能を有していることになる。
【００６１】
なお、本実施の形態における制御部５０の機能構成は、実施の形態１と同じ（図３参照）である。ただし、本実施の形態の場合、主記憶部５０５は、ＲＯＭ５５と不揮発性ＲＡＭ５６と揮発性ＲＡＭ５７とによって実現されることになる。また、本実施の形態では、記憶領域管理部５０４が、さらに、転送手段および再設定手段としての機能も有している。
【００６２】
図１１は、メインメモリのうち、不揮発性ＲＡＭ５６および揮発性ＲＡＭ５７の両者で構成される記憶領域の構造を説明するための図である。
本実施の形態では、データの読み書きが可能な主記憶領域Ａｍが、不揮発性ＲＡＭ５６および揮発性ＲＡＭ５７とに跨って配置されている。そして、この例では、ログ領域Ａｌ（動作ログ領域Ａｔおよび状態ログ領域Ａｓ）が不揮発性ＲＡＭ５６内に設定される一方、作業領域Ａｗが、不揮発性ＲＡＭ５６と揮発性ＲＡＭ５７とに跨って設定される。このため、本実施の形態の作業領域Ａｗは、不揮発性ＲＡＭ５６内に配置される不揮発性作業領域Ａｎと、揮発性ＲＡＭ５７内に配置される揮発性作業領域Ａｖとを有している。
【００６３】
次に、本実施の形態における制御部５０の動作について説明を行う。ここで、本実施の形態の制御部５０のメインルーチンは、実施の形態１で説明したもの（図６参照）と同じであるが、サブルーチンが実施の形態１で説明したもの（図７参照）とは異なる。
図１２は、本実施の形態における制御部５０の動作を説明するためのサブルーチンを示している。以下では、図６と図１２とを用いて、制御部５０の動作を説明する。
【００６４】
画像形成装置１の電源がオンされると（ステップ１０１）、画像形成装置１が動作を開始する。これに伴い、制御部５０では、記憶領域管理部５０４が、主記憶部５０５における記憶領域（図１１参照）の設定を行う（ステップ１０２）。また、電源のオンに伴い、履歴作成部５０３は、動作ログの作成を開始する。
【００６５】
次に、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓから、記憶されている状態ログの内容を読み出す（ステップ１０３）。そして、制御実行部５０１は、ステップ１０３で読み出した状態ログが「正常」であったか否かを判断する（ステップ１０４）。
【００６６】
ステップ１０４において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域から、この前回動作ログを消去する（ステップ１０５）。また、ステップ１０５における処理に伴い、動作ログ領域Ａｔは、その全域が未記録領域となる。
【００６７】
続いて、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔにおける未記録領域に対し、今回の電源オンに伴って履歴作成部５０３で作成された今回動作ログの書き込みを開始する（ステップ１０６）。
【００６８】
その後、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に書き込まれる今回動作ログを監視し、今回動作ログにエラーログが含まれているか否か、すなわち、画像形成装置１の動作中にエラーが発生したか否かを判断する（ステップ１０７）。
【００６９】
ステップ１０７において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓに格納される状態ログを、「異常」に設定し（ステップ１０８）、その後、制御実行部５０１が、画像形成装置１の再起動を実行する（ステップ１０９）。ステップ１０９において画像形成装置１の再起動が実行された後は、ステップ１０３に戻って処理を続行する。なお、ステップ１０９における再起動が実行された場合、状態ログ領域Ａｓに記憶されている状態ログが「異常」に設定されていることにより、ステップ１０４において否定の判断（Ｎｏ）がなされる。
【００７０】
一方、ステップ１０７において否定の判断（Ｎｏ）を行った場合、制御実行部５０１は、画像形成装置１の電源がオフされたか否かを判断する（ステップ１１０）。ステップ１１０において否定の判断（Ｎｏ）を行った場合はステップ１０７に戻って処理を続行し、ステップ１１０において肯定の判断（Ｙｅｓ）の判断を行った場合は、画像形成装置１の電源を切ることによって画像形成装置１の動作を停止させる。
【００７１】
他方、ステップ１０４において否定の判断（Ｎｏ）を行った場合、記憶領域管理部５０４は、主記憶部５０５（揮発性ＲＡＭ５７）に設けられた揮発性作業領域Ａｖ内に、第４記憶領域の一例としての一時動作ログ領域Ａｖｔ（後述する図１３（ｂ）参照）を確保する（ステップ３０１）。続いて、記憶領域管理部５０４は、ステップ３０１で確保した揮発性作業領域Ａｖに対し、今回の電源オンに伴って作成された今回動作ログの書き込みを開始する（ステップ３０２）。また、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域から前回動作ログを読み出すとともに、読み出した動作ログの、ＨＤＤ装置９０への転送を開始する（ステップ３０３）。このとき、ＨＤＤ装置９０は、制御部５０から転送されてきた前回動作ブログを、順次記憶していく。
【００７２】
そして、制御実行部５０１は、ステップ３０３で開始された前回動作ログの転送が完了したか否かを判断する（ステップ３０４）。ステップ３０４において否定の判断（Ｎｏ）を行った場合は、ステップ３０４に戻る。一方、ステップ３０４において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、動作ログ領域Ａｔのうち、前回動作ログが記憶されている記録済領域から、この前回動作ログを消去する（ステップ３０５）。なお、ステップ３０５における処理に伴い、動作ログ領域Ａｔのうち、前回動作ログが記憶されていた記録済領域は、未記録領域に設定される。
【００７３】
次に、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた動作ログ領域Ａｔに対し、今回動作ログ（つづき）の書き込みを開始させる（ステップ３０６）。すなわち、ステップ３０６では、今回動作ログの書き込み先を、揮発性ＲＡＭ５７に設けられた一時動作ログ領域Ａｖｔから、不揮発性ＲＡＭ５６に設けられた動作ログ領域Ａｔに切り換える。このとき、一時動作ログ領域Ａｖｔには、これよりも前に作成された今回動作ログが記憶された状態となっている。
【００７４】
続いて、記憶領域管理部５０４は、揮発性ＲＡＭ５７の一時動作ログ領域Ａｖｔに記憶されている記録済の今回動作ログの、不揮発性ＲＡＭ５６の動作ログ領域Ａｔへの転送を開始させる（ステップ３０７）。これに伴い、不揮発性ＲＡＭ５６の動作ログ領域Ａｔには、一時動作ログ領域Ａｖｔから転送されてきた記録済の今回動作ログの書き込みと、履歴作成部５０３から送られてきた今回動作ログ（つづき）の書き込みとが、並行して行われることになる。
【００７５】
そして、制御実行部５０１は、ステップ３０７で開始された、記録済の今回動作ログの転送が完了したか否かを判断する（ステップ３０８）。ステップ３０８において否定の判断（Ｎｏ）を行った場合は、ステップ３０８に戻る。一方、ステップ３０８において肯定の判断（Ｙｅｓ）を行った場合、記憶領域管理部５０４は、揮発性ＲＡＭ５７に設定された一時動作ログ領域Ａｖｔを解放し、揮発性作業領域Ａｖとして再設定する（ステップ３０９）。ここで、一時動作ログ領域Ａｖｔは揮発性ＲＡＭ５６で構成されていることから、解放に伴ってその記憶内容は自動的に消去される。
【００７６】
その後、記憶領域管理部５０４は、主記憶部５０５（不揮発性ＲＡＭ５６）に設けられた状態ログ領域Ａｓに記憶される状態ログを「異常」から「正常」に変更する設定を行い（ステップ３１０）、ステップ１０７へと移行する。
【００７７】
次に、図６および図１２を用いて説明した動作における、主記憶領域Ａｍの状態の変遷について、具体的に例を挙げながら説明を行う。ただし、状態ログが「正常」と設定されていた場合については、作業領域Ａｗが不揮発性作業領域Ａｎと揮発性作業領域Ａｖとで構成されている点を除けば、実施の形態１で説明したものと同じになるので、ここでは、その詳細な説明を省略する。
【００７８】
図１３および図１４は、状態ログが「異常」と設定されていた場合における、主記憶領域Ａｍの状態の変遷を説明するための図である。図１３および図１４に示す例では、ステップ１０４において否定の判断（Ｎｏ）がなされる。ここで、図１３（ａ）は、ステップ１０３での主記憶領域Ａｍの状態を、図１３（ｂ）は、ステップ３０１〜ステップ３０３での主記憶領域Ａｍの状態を、図１３（ｃ）は、ステップ３０５での主記憶領域Ａｍの状態を、それぞれ示している。また、図１４（ｄ）は、ステップ３０６およびステップ３０７での主記憶領域Ａｍの状態を、図１４（ｅ）は、ステップ３０９での主記憶領域Ａｍの状態を、図１４（ｆ）は、ステップ３１０での主記憶領域Ａｍの状態を、それぞれ示している。
【００７９】
なお、図１３および図１４に示す例では、ステップ１０２において、主記憶領域Ａｍが作業領域Ａｗとログ領域Ａｌとを含み、作業領域Ａｗが不揮発性ＲＡＭ５６に設けられた不揮発性作業領域Ａｎと揮発性ＲＡＭ５７に設けられた揮発性作業領域Ａｖとを含み、且つ、ログ領域Ａｌが不揮発性ＲＡＭ５６に設けられるように、記憶領域の設定が行われる。また、ログ領域Ａｌは、動作ログ領域Ａｔと状態ログ領域Ａｓとを含むように設定されている。
【００８０】
このとき、作業領域Ａｗには、例えば、画像読取部１０で読み取ったスキャンデータを一時的に格納するスキャンバッファ領域と、画像形成部２０にて形成する前のプリントデータを一時的に格納するプリントバッファ領域とが設定される。この例において、プリントバッファ領域は不揮発性作業領域Ａｎ（不揮発性ＲＡＭ５６）に配置され、スキャンバッファ領域は不揮発性作業領域Ａｎ（不揮発性ＲＡＭ５６）と揮発性作業領域（揮発性ＲＡＭ５７）とに跨って配置される。また、ログ領域Ａｌにおける動作ログ領域Ａｔには、前回動作ログが記憶された記録済領域と、前回動作ログが記憶されていない未記録領域とが存在している。そして、この場合においては、ログ領域Ａｌにおける状態ログ領域Ａｓに、状態ログとして「異常」を表すフラグが記憶されている。
【００８１】
まず、ステップ１０３では、図１３（ａ）に示すように、状態ログ領域Ａｓに記憶される状態ログが読み出される。
【００８２】
そして、ステップ１０４で否定の判断（Ｎｏ）がなされることに伴い、ステップ３０１〜３０３では、図１３（ｂ）に示すように、揮発性作業領域Ａｖ（この例ではスキャンバッファ領域）の一部が一時動作ログ領域Ａｖｔとして確保された後に、この一時動作ログ領域Ａｖｔの先頭番地から、今回動作ログの書き込みが開始され、且つ、動作ログ領域Ａｔの記録済領域から前回動作ログの読み出し（転送）が開始される。
【００８３】
それから、ステップ３０４で肯定の判断（Ｙｅｓ）がなされることに伴い、ステップ３０５では、図１３（ｃ）に示すように、動作ログ領域Ａｔのうち、前回動作ログを記憶する記録済領域の記憶内容が消去される。これにより、動作ログ領域Ａｔは、すべてが未記録領域となる。このとき、一時動作ログ領域Ａｖｔには、今回動作ログを記憶した記録済領域が存在するようになっている。
【００８４】
続いて、ステップ３０６およびステップ３０７では、図１４（ｄ）に示すように、動作ログ領域Ａｔの未記録領域に対する今回動作ログ（つづき）の書き込みが開始されるとともに、一時動作ログ領域Ａｖｔの記録済領域からの今回動作ログの読み出し（転送）および動作ログ領域Ａｔの未記録領域への書き込みが開始される。
【００８５】
そして、ステップ３０８で肯定の判断（Ｙｅｓ）がなされることに伴い、ステップ３０９では、図１４（ｅ）に示すように、一時動作ログ領域Ａｖｔの解放および揮発性作業領域Ａｖ（この例ではスキャンバッファ領域）への再設定が行われる。
【００８６】
その後、ステップ３１０では、図１４（ｆ）に示すように、状態ログ領域Ａｓに記憶されている状態ログの値が、「異常」から「正常」に書き換えられる。
そして、ステップ３０６以降は、ステップ１０９の再起動あるいはステップ１１０の電源オフが起こるまで、動作ログ領域Ａｔの未記録領域に対する、今回動作ログの書き込みが続けられることになる。
【００８７】
なお、実施の形態１、２で説明した動作を実現させるためのプログラムは、画像形成装置１に内蔵させて提供する形態の他、例えばサーバ装置５からネットワーク２を介して画像形成装置１（制御部５０）に提供する形態を採用してもよいし、メモリカード８１に記録した状態で提供する態様を採用してもかまわない。
【００８８】
また、実施の形態１、２では、前回動作ログを、画像形成装置１に内蔵したＨＤＤ装置９０に転送して記憶させるようにしていたが、これに限られるものではない。前回動作ログを、例えばＨＤＤ装置９０に代えてＳＳＤ（Solid State Drive）装置に記憶させるようにしてもよく、あるいは、前回動作ログを、例えば送受信部４０およびネットワーク２を介して、画像形成装置１の外部に設けられた端末装置３やサーバ装置５に送信するようにしてもかまわない。
【符号の説明】
【００８９】
１…画像形成装置、１０…画像読取部、２０…画像形成部、３０…ＵＩ、４０…送受信部、５０…制御部、５１…ＣＰＵ、５２…バスブリッジ、５３…メモリバス、５４…ＰＣＩバス、５５…ＲＯＭ、５６…不揮発性ＲＡＭ、５７…揮発性ＲＡＭ、７０…後処理部、８０…カードリーダ、９０…ＨＤＤ装置、５０１…プログラム実行部、５０２…入出力管理部、５０３…履歴作成部、５０４…記憶領域管理部、５０５…主記憶部
【図１】
2013171484.tif 000003
【図２】
2013171484.tif 000004
【図３】
2013171484.tif 000005
【図４】
2013171484.tif 000006
【図５】
2013171484.tif 000007
【図６】
2013171484.tif 000008
【図７】
2013171484.tif 000009
【図８】
2013171484.tif 000010
【図９】
2013171484.tif 000011
【図１０】
2013171484.tif 000012
【図１１】
2013171484.tif 000013
【図１２】
2013171484.tif 000014
【図１３】
2013171484.tif 000015
【図１４】
2013171484.tif 000016