(57)【特許請求の範囲】
【請求項１】
接離可能記憶装置が接続され、所定タイミングにメモリ上で実行中のプログラムに関するメモリ情報を生成して該接離可能記憶装置に保存するメモリ情報保存処理を行うメモリ情報保存手段を備えた制御装置であって、前記メモリ情報の前記接離可能記憶装置への前記メモリ情報保存処理の実行が不可能であると、該メモリ情報保存処理を停止させる停止手段と、停止中の該メモリ情報保存処理を再開させる再開手段と、該接離可能記憶装置への該メモリ情報保存処理が可能になると、該再開手段を実行させる実行手段と、を備え、該再開手段が、前記接離可能記憶装置に搭載されていることを特徴とする制御装置。
【請求項２】
前記接離可能記憶装置は、停止中の前記メモリ情報保存処理を特定する特定手段を搭載し、前記再開手段は、前記停止手段によって停止されている該メモリ情報保存処理のうち該特定手段で特定される該メモリ情報保存処理を再開させることを特徴とする請求項１記載の制御装置。
【請求項３】
前記特定手段は、停止中の前記メモリ情報保存処理の発生元の前記プログラムのプロセスＩＤまたはプログラムファイル名によって停止中の該メモリ情報保存処理を特定、あるいは、停止中の該メモリ情報保存処理の全てを特定することを特徴とする請求項２記載の制御装置。
【請求項４】
前記制御装置は、前記停止手段が前記メモリ情報保存処理を停止させると、その旨を報知する報知手段を備えていることを特徴とする請求項１から請求項３のいずれかに記載の制御装置。
【請求項５】
前記制御装置は、前記停止手段が停止した前記メモリ情報保存処理を中断させる中断手段を備えていることを特徴とする請求項１から請求項４のいずれかに記載の制御装置。
【請求項６】
プログラムによって画像データに所定の画像処理を施す画像処理装置であって、請求項１から請求項５のいずれかに記載の制御装置を搭載していることを特徴とする画像処理装置。
【請求項７】
接離可能記憶装置が接続され、所定タイミングにメモリ上で実行中のプログラムに関するメモリ情報を生成して該接離可能記憶装置に保存するメモリ情報保存処理を行う制御装置の実行するメモリ情報保存制御方法であって、前記メモリ情報の前記接離可能記憶装置への前記メモリ情報保存処理の実行が不可能であると、該メモリ情報保存処理を停止させる停止処理ステップと、停止中の該メモリ情報保存処理を再開させる再開処理ステップと、該接離可能記憶装置への該メモリ情報保存処理が可能になると、該再開処理ステップを実行させる実行処理ステップと、停止中の前記メモリ情報保存処理を特定する特定処理ステップを有し、前記再開処理ステップは、前記停止処理ステップで停止されている該メモリ情報保存処理のうち該特定処理ステップで特定される該メモリ情報保存処理を再開させることを特徴とするメモリ情報保存制御方法。
【請求項８】
前記特定処理ステップは、停止中の前記メモリ情報保存処理の発生元の前記プログラムのプロセスＩＤまたはプログラムファイル名によって停止中の該メモリ情報保存処理を特定、あるいは、停止中の該メモリ情報保存処理の全てを特定することを特徴とする請求項７記載のメモリ情報保存制御方法。
【請求項９】
前記メモリ情報保存制御方法は、前記停止処理ステップで前記メモリ情報保存処理が停止されると、その旨を報知する報知処理ステップを、有していることを特徴とする請求項７または８に記載のメモリ情報保存制御方法。
【請求項１０】
コンピュータに請求項７から請求項９のいずれかに記載のメモリ情報保存制御方法を実行させることを特徴とするメモリ情報保存制御プログラム。
【請求項１１】
請求項１０記載のメモリ情報保存制御プログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体に関し、詳細には、不具合の発生時にメモリ情報を接離可能記憶媒体に保存する制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
従来から、ＵＮＩＸ（登録商標）等の汎用ＯＳ（Operating System）上でアプリケーションプログラムを実行する制御装置においては、アプリケーションプログラムの動作を正常に継続することができない場合には、ＯＳからアプリケーションプログラムを強制的に終了させるという機能が実装されている。例えば、ＵＮＩＸに代表されるような汎用ＯＳにおいては、アプリケーションプログラムの動作を正常に継続することができない事態が発生すると、アプリケーションプログラムにシグナルを送信して、アプリケーションプログラムの処理を終了させ、ＯＳからアプリケーションプログラムに送信されるシグナルの種類によってコアダンプ処理が実行される。
【０００３】
そして、近年、小型のプリンタ装置、ファクシミリ装置、複写装置、複合装置等のように予め特定の機能を組み込んだ組み込み画像処理装置においても、高機能化の要求からＵＮＩＸ系の汎用ＯＳをベースとしたＯＳが採用され、異常発生時等にコアダンプ処理を実行するようになってきている。
【０００４】
ＯＳは、従来、このコアダンプ処理を、図１２に示すように実行する。すなわち、ＯＳは、コアダンプ処理を実行するように設定された不具合が発生すると、コアダンプ実行部を呼び出し、コアダンプ実行部が、図１２に示すように、まず、コアファイルの名前を作成する（ステップＳ１００１）。このコアファイル名は、不具合を発生させたアプリケーションプログラムの名前、プロセスＩＤ等を使用して作成される。次に、コアダンプ実行部は、コアダンプ対象のアプリケーションプログラムの作業ディレクトリにコアファイル名のファイルが作成可能かチェックし（ステップＳ１００２）、作業ディレクトリにコアファイル名のファイルを作成することができないときには、そのままコアダンプ処理を終了する。
【０００５】
ステップＳ１００２で、作業ディレクトリにコアファイル名のファイルを作成することができるときには、コアダンプ実行部は、コアファイル名でファイルの作成を行い（ステップＳ１００３）、アプリケーションプログラムが使用しているメモリ情報をＯＳの管理するメモリブロックのサイズでファイルに書き込む（ステップＳ１００４）。
【０００６】
メモリ情報のファイルへの書き込みを行うと、コアダンプ実行部は、書き込みが正常に行われたかチェックし（ステップＳ１００５）、書き込みが正常に行われなかったときには、そのままコアダンプ処理を終了する。
【０００７】
書き込みが正常に行われると、コアダンプ実行部は、書き込んだメモリ情報がアプリケーションプログラムが使用しているメモリ中で最後のブロックであるかチェックし（ステップＳ１００６）、最後のブロックでないときには、ステップＳ１００４に戻って、プログラムが使用していたメモリ情報をＯＳの管理するメモリブロックのサイズでファイルに書き込む処理から上記同様に処理する（ステップＳ１００４〜Ｓ１００６）。
【０００８】
ステップＳ１００６で、書き込んだメモリ情報がアプリケーションプログラムが使用しているメモリ中で最後のブロックであると、コアダンプ実行部は、コアダンプ処理を終了する。
【０００９】
そして、このようなコアダンプ処理は、ハードディスク等の大容量記憶装置に対してメモリ情報を書き出すことで行われるが、組み込み装置等の小型で安価な装置にあっては、ハードディスク等の大容量記憶装置を、コストを削減する等のために、搭載していないことが多く、このような場合、コアダンプ機能を利用することが困難である。
【００１０】
そして、従来、コアダンプを実行する前に、予め設定した保存サイズに適したコアファイルを生成する技術が提案されている（特許文献１参照）。
【００１１】
また、従来、コアファイルをネットワークを介してリモートのハードディスク装置に出力する技術が提案されている（特許文献２参照）。
【００１２】
【特許文献１】特開２００７−１７２４１４号公報
【特許文献２】特開平８−３２８９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記公報記載の従来技術にあっては、安価にかつ確実にコアダンプ処理を実行する上で、改良の必要があった。
【００１４】
すなわち、特許文献１記載の従来技術にあっては、保存サイズを限定してコアファイルを生成しているため、保存できるコアファイルが限定され、コアファイルとして保存されなかった情報の解析が必要になった場合、再度情報の取得を行う必要があり、処理効率が悪く、利用性が悪いという問題があった。
【００１５】
また、特許文献２記載の従来技術にあっては、ネットワークを介してコアファイルをリモートの記憶装置に出力しているため、コアファイルの送信を行う装置がネットワークに接続されていない場合や接続されていてもコアファイルを保存するリモートの記憶装置を設置することができない場合には、コアファイルを保存することができず、改良の必要があった。
【００１６】
そこで、本発明は、安価にかつ確実に実行中のプログラムに関するメモリ情報を保存することのできる制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体を提供することを目的としている。
【課題を解決するための手段】
【００１７】
本発明の制御装置は、上記目的を達成するために、接離可能記憶装置が接続され、所定タイミングにメモリ上で実行中のプログラムに関するメモリ情報を生成して該接離可能記憶装置に保存するメモリ情報保存処理を行うメモリ情報保存手段を備えた制御装置であって、前記メモリ情報の前記接離可能記憶装置への前記メモリ情報保存処理の実行が不可能であると、該メモリ情報保存処理を停止させる停止手段と、停止中の該メモリ情報保存処理を再開させる再開手段と、該接離可能記憶装置への該メモリ情報保存処理が可能になると、該再開手段を実行させる実行手段と、を備え、該再開手段が、前記接離可能記憶装置に搭載されていることを特徴としている。
【００１８】
また、本発明に係る制御装置は、前記接離可能記憶装置が、停止中の前記メモリ情報保存処理を特定する特定手段を搭載し、前記再開手段が、前記停止手段によって停止されている該メモリ情報保存処理のうち該特定手段で特定される該メモリ情報保存処理を再開させることを特徴としていてもよい。
【００１９】
さらに、本発明の制御装置は、前記特定手段が、停止中の前記メモリ情報保存処理の発生元の前記プログラムのプロセスＩＤまたはプログラムファイル名によって停止中の該メモリ情報保存処理を特定、あるいは、停止中の該メモリ情報保存処理の全てを特定することを特徴としていてもよい。
【００２０】
また、本発明の制御装置は、前記制御装置が、前記停止手段が前記メモリ情報保存処理を停止させると、その旨を報知する報知手段を備えていることを特徴としていてもよい。
【００２１】
さらに、本発明の制御装置は、前記制御装置が、前記停止手段が停止した前記メモリ情報保存処理を中断させる中断手段を備えていることを特徴としていてもよい。
【００２２】
本発明の画像処理装置は、上記目的を達成するために、プログラムによって画像データに所定の画像処理を施す画像処理装置であって、請求項１から請求項５のいずれかに記載の制御装置を搭載していることを特徴としている。
【００２３】
本発明のメモリ情報保存制御方法は、接離可能記憶装置が接続され、所定タイミングにメモリ上で実行中のプログラムに関するメモリ情報を生成して該接離可能記憶装置に保存するメモリ情報保存処理を行う制御装置の実行するメモリ情報保存制御方法であって、前記メモリ情報の前記接離可能記憶装置への前記メモリ情報保存処理の実行が不可能であると、該メモリ情報保存処理を停止させる停止処理ステップと、停止中の該メモリ情報保存処理を再開させる再開処理ステップと、該接離可能記憶装置への該メモリ情報保存処理が可能になると、該再開処理ステップを実行させる実行処理ステップと、停止中の前記メモリ情報保存処理を特定する特定処理ステップを有し、前記再開処理ステップは、前記停止処理ステップで停止されている該メモリ情報保存処理のうち該特定処理ステップで特定される該メモリ情報保存処理を再開させることを特徴としている。
【００２５】
さらに、本発明のメモリ情報保存制御方法は、前記特定処理ステップが、停止中の前記メモリ情報保存処理の発生元の前記プログラムのプロセスＩＤまたはプログラムファイル名によって停止中の該メモリ情報保存処理を特定、あるいは、停止中の該メモリ情報保存処理の全てを特定することを特徴としていてもよい。
【００２６】
また、本発明のメモリ情報保存制御方法は、前記停止処理ステップで前記メモリ情報保存処理が停止されると、その旨を報知する報知処理ステップを、有していることを特徴としていてもよい。
【００２７】
本発明のメモリ情報保存制御プログラムは、コンピュータに請求項７から請求項１０のいずれかに記載のメモリ情報保存制御方法を実行させることを特徴としている。
【発明の効果】
【００２８】
本発明によれば、メモリ上で実行中のプログラムに関するメモリ情報を生成して接離可能記憶装置に保存するメモリ情報保存処理を行う際に、該メモリ情報の該接離可能記憶装置への該メモリ情報保存処理の実行が不可能であると、該メモリ情報保存処理を停止し、その後、該接離可能記憶装置への該メモリダンプ処理が可能になると、停止中の該メモリ情報保存処理を再開させるので、メモリ情報保存処理が実行可能な状態となっていることを確認して確実に接離可能記憶装置にメモリ情報を保存することができ、メモリ情報を安価かつ確実に接離可能記憶装置に保存させることができる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の構成の必須の構成要件ではない。
【実施例１】
【００３０】
図１〜図５は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第１実施例を示す図であり、図１は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第１実施例を適用した画像処理装置のコントローラボード１のブロック構成図である。
【００３１】
図１において、コントローラボード（制御装置）１は、ＡＳＩＣ（Application Specific Integrated Circuit）１０、ＣＰＵ（Central Processing Unit ）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、ＮＶＲＡＭ（Non-Volatile Random Access Memory）１４、ＲＴＣ（リアルタイムクロック；Real Time Clock ）１５、エンジンインターフェイス１６、ＵＳＢ（Universal Serial Bus）インターフェイス１７、ネットワークインターフェイス１８及び複数の着脱可能記憶装置装着口１９ａ〜１９ｎ等を備えており、プリンタ装置、複写装置、ファクシミリ装置、複合装置、スキャナ装置等の画像処理を行う画像処理装置に適用されている。この画像処理装置は、通常、コントローラボード１の他に、操作表示部や印刷エンジンやスキャナエンジン等のエンジンを備えている。
【００３２】
操作表示部は、操作キー及び液晶ディスプレイ等の表示部を備えており、操作キーからは画像処理装置に各種処理を行わせるための各種操作が行われ、表示部（報知手段）には、操作キーからの入力内容や画像処理装置からユーザに通知する各種情報を表示、特に、後述するメモリ情報保存処理制御処理（コアダンプ処理制御処理）で、コアダンプ処理（メモリ情報保存処理）が発生したり、該コアダンプ処理が停止すると、その旨を表示して通知する。
【００３３】
エンジンは、読み取りエンジンや印刷エンジン等を総称したものであり、読み取りエンジンは、例えば、ＣＣＤ（Charge Coupled Device ）を利用したスキャナが用いられていて、原稿を主走査及び副走査して原稿の画像を読み取ってコントローラボード１に渡す。印刷エンジンは、コントローラボード１からの画像データに基づいて、所定の印刷方式、例えば、インク噴射方式や電子写真方式で用紙に画像を形成する。
【００３４】
ＲＯＭ１２は、コントローラボード１の適用されている画像処理装置の基本プログラム、後述するコアダンプ処理制御方法（メモリ情報保存制御方法）を実行するコアダンプ処理制御プログラム（メモリ情報保存制御プログラム）及びこれらの各プログラムの実行に必要なシステムデータが格納されており、ＲＯＭ１２は、書き換え可能なフラッシュＲＯＭを用いることで、これらのプログラムやシステムデータを適宜バージョンアップしたり、ソフトウェアの追加を容易に行うことができる。
【００３５】
なお、コントローラボード１の適用されている画像処理装置は、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory ）、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）、ＤＶＤ（Digital Video Disk）、ＳＤ（Secure Digital）カード、ＭＯ（magneto-optic disc）等のコントローラが読み取り可能な記録媒体に記録されている本発明のメモリ情報保存制御方法を実行するメモリ情報保存制御プログラムを読み込んでＲＯＭ１２に導入することで、後述するアプリケーションを正常に実行できない事態等の予め設定されている自体が発生したときに該アプリケーションの使用していたメモリ領域のメモリ情報を着脱可能記憶装置装着口１９ａ〜１９ｎに装着されている着脱可能記憶装置（接離可能記憶装置）３０に保存するコアダンプ処理制御方法（メモリ情報保存制御方法）を実行する制御装置であるコントローラボード１を搭載した画像処理装置として構築されている。このコアダンプ処理制御プログラム（メモリ情報保存制御プログラム）は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
【００３６】
ＣＰＵ１１は、ＲＡＭ１３をワークメモリとして利用して、ＲＯＭ１２内のプログラムを実行し、コントローラボード１の適用されている画像処理装置としての処理を実行するとともに、後述するコアダンプ処理制御処理（メモリ情報保存制御処理）を実行する。
【００３７】
ＲＡＭ１３は、ＣＰＵ１１のワークメモリとして利用され、各種処理途中の情報等が書き込まれる。
【００３８】
ＡＳＩＣ１０は、各種画像処理やデータＩ／Ｏ処理等のハードウェア要素を有するカスタムＩＣであり、ＵＳＢインターフェイス１６、エンジンインターフェイス１７、ネットワークインターフェイス１８の各機能及び着脱可能記憶装置装着口１９ａ〜１９ｎの機能を司る。  
【００３９】
ＮＶＲＡＭ１４は、コントローラボード１の適用されている画像処理装置の電源が切られているときにも記憶内容を保持するメモリであり、画像処理装置の電源がオフの際にも保持する必要のあるデータをＣＰＵ１１の制御下で記憶する。
【００４０】
ＲＴＣ１５は、発振回路や分周回路等を備え、現在時刻の計時や各種タイマー機能を実行し、ＣＰＵ１１は、このＲＴＣ１５の計時する現在時刻やタイマー機能を利用して画像処理装置としての各種処理や後述するコアダンプ処理（メモリ情報保存処理）を実行する。
【００４１】
エンジンインターフェイス１６には、上記エンジンが接続されており、エンジンインターフェイス１６は、エンジンへ制御信号やビデオ信号を渡し、また、エンジンからのステータス信号や読み取り画像データを受け取る。
【００４２】
ＵＳＢインターフェイス１７は、ＵＳＢコードを介してホストコンピュータやＵＳＢ機器に接続され、ホストコンピュータやＵＳＢ機器との間でデータの授受を行う。
【００４３】
ネットワークインターフェイス１８は、インターネット等のネットワークに接続されており、ネットワークを介してホストコンピュータから送られてくるデータを受信し、また、ネットワークを介してホストコンピュータにデータを送信する。
【００４４】
着脱可能記憶装置装着口１９ａ〜１９ｎには、着脱可能記憶装置３０（図２参照）が装着され、着脱可能記憶装置３０には、後述するコアダンプ処理（メモリ情報保存処理）で、メモリ情報が保存される。
【００４５】
この着脱可能記憶装置（接離可能記憶装置）３０としては、各種記録媒体、例えば、スマートメディア、 コンパクトフラッシュ（ＣＦ：登録商標）、マルチメディアカード（ＭＭＣ）、ＳＤカード（Secure Digital：ＳＤ）、メモリスティック（Memory Stick：ＭＳ）等のスロットに直接挿入される外部メモリやＤＶＤ（Digital Video Disk）、ＣＤ−Ｒ（Compact Disc Recordable ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）及びハードディスク等の着脱可能記憶装置装着口１９ａ〜１９ｎに装着可能な各種記録媒体を用いることができる。
【００４６】
そして、上記コントローラボード１のＲＯＭ１２上には、図２に示すように、ＯＳ２１、実行機能部２２及び基本機能部２３ａ〜２３ｎの各プログラムが格納されており、また、着脱可能記憶装置３０上には、再開機能部３１のプログラムが格納されている。
【００４７】
ＯＳ２１としては、例えば、ＵＮＩＸ系のＯＳが用いられており、画像処理装置の電源がオンになると、コントローラボード１のＣＰＵ１１によってＲＯＭ１２からＯＳ２１がＲＡＭ１３に読み込まれて、ＯＳ２１の実行が開始される。ＯＳ２１は、実行されると、画像処理装置の構成に従って、ＲＯＭ１２から基本機能部２３ａ〜２３ｎを読み込んで、ＲＡＭ１３上で実行する。
【００４８】
基本機能部２３ａ〜２３ｎは、画像処理装置の基本機能を実現させるアプリケーションプログラムであり、例えば、コピー機能、スキャナ機能、プリンタ機能、ファクシミリ機能及び操作表示機能等を実現させるアプリケーションプログラムである。
【００４９】
ＯＳ２１は、メモリ上で実行中のプログラムに関するメモリ情報を生成して、着脱可能記憶装置３０に保存するコアダンプ処理（メモリ情報保存処理）を行うとともに、該コアダンプ処理を停止可能なコアダンプ処理機能部（メモリ情報保存手段）２１ａを有している。
【００５０】
実行機能部（実行手段）２２は、ＯＳ２１自身以外の実行プログラム（アプリケーションプログラム）をＲＯＭ１２から読み出し、実行を開始する機能を有し、また、その実行プログラムでエラーが発生した場合や実行プログラムの実行が終了した場合には、その旨を検出する機能を有する。さらに、実行機能部２２は、マウント処理実行処理部２２ａ、アプリケーション実行処理部２２ｂ及びマウント場所通知処理部２２ｃを備えており、マウント処理実行処理部２２ａは、着脱可能記録装置装着口１９ａ〜１９ｎへの着脱可能記憶装置３０の装着の監視を行って、装着された着脱可能記憶装置３０をシステムに認識させるマウント処理を実行する。アプリケーション実行処理部２２ｂは、着脱可能記憶装置３０に搭載されているアプリケーション、特に、再開機能部３１を実行し、マウント場所通知処理部２２ｃは、着脱可能記憶装置３０からアプリケーションを実行する際に、着脱可能記憶装置３０がシステム上でマウントされている場所を再開機能部３１に通知する。
【００５１】
着脱可能記憶装置３０に搭載されている再開機能部（再開手段）３１は、コアダンプ処理再開処理部３１ａとコアファイル作成場所通知処理部３１ｂを有し、コアダンプ処理再開処理部３１ａは、ＯＳ２１のコアダンプ処理部２１ａによって停止されたコアダンプ処理を再開させる。コアファイル作成場所通知処理部３１ｂは、実行機能部２２から通知された着脱可能記憶装置３０のマウントされた場所をコアファイルの作成場所としてコアダンプ処理部２１ａに通知する。
【００５２】
そして、上述のように、画像処理装置の電源がオンになると、ＣＰＵ１１によってＲＯＭ１２からＯＳ２１がＲＡＭ１３に読み込まれ、ＯＳ２１の実行が開始されて、画像処理装置の構成に従って、ＲＯＭ１２から基本機能部２３ａ〜２３ｎ及び必要な他のアプリケーション、例えば、実行機能部２２等を読み込んで、ＲＡＭ１３上で実行する。
【００５３】
すなわち、ＲＡＭ１３上には、図３に示すように、システムプログラム４０とアプリケーションプログラム５０が配置される。システムプログラム４０には、ＯＳ２１が含まれ、ＯＳ２１は、登録されているコアファイル作成場所にメモリ情報（コアファイル）を保存するコアダンプ処理を行うコアダンプ機能部２１ａを有している。
【００５４】
アプリケーションプログラム５０としては、上記実行機能部２２、操作制御機能部２３ｐ、基本機能部２３ａ、２３ｂ等を含み、アプリケーション処理を実行する。なお、操作制御機能部２３ｐは、上記操作表示部の機能を実現する。
【００５５】
次に、本実施例の作用を説明する。本実施例の画像処理装置１は、そのコントローラボード１が、アプリケーションの実行に不具合が発生した場合等の予め設定されている事態が発生した場合に、メモリ情報を着脱可能記憶装置装着口１９ａ〜１９ｎに装着された着脱可能装着装置３０に保存するコアダンプ処理を行うが、このコアダンプ処理で保存先の着脱可能装着装置３０が装着されていない等の保存可能な状況でないときに、コアダンプ処理を停止し、保存可能な状態になると、停止していたコアダンプ処理を再開するコアダンプ制御処理を実行する。
【００５６】
すなわち、コントローラボード１は、予めコアダンプ処理（コアダンプ処理）を実行するように設定された不具合が実行中のアプリケーションプログラム５０において発生すると、ＯＳ２１が、図４及び図５に示すように、コアダンプ機能部２１ａを呼び出し、コアダンプ機能部２１ａが、まず、作成するメモリ情報ファイル（コアファイル）の名前を作成する（ステップＳ１０１）。コアダンプ機能部２１ａは、メモリ情報ファイル名（コアファイル名）の作成において、不具合を発生させたアプリケーションプログラムの名前、プロセスＩＤ等を使用して行う。
【００５７】
次に、コアダンプ機能部２１ａは、図５に示すように、作成したコアファイル名を使用してコアファイルの作成を試みる。この場合、コアダンプ機能部２１ａは、コアファイルの作成場所として、不具合を発生させたプログラムが作業に使用していたディレクトリを選択する。
【００５８】
コアダンプ機能部２１ａは、対象プログラムの作業ディレクトリにコアファイル名のコアファイルを作成可能か判断し（ステップＳ１０２）、コアファイルを作成することができないときには、コアダンプ処理を行うことができないため、そのまま処理を終了する。
【００５９】
ステップＳ１０２で、コアファイルを作成することができると、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができるかチェックし（ステップＳ１０３）、既に着脱可能記憶装置１９ａ〜１９ｎに空き領域のある着脱可能記憶装置３０が装着されていて該着脱可能記憶装置３０を保存場所としてコアファイル名でコアファイルの作成が可能であると、該保存場所に上記不具合の発生したアプリケーションプログラムの使用しているメモリ情報を、ＯＳ２１の管理するメモリブロックのサイズで、該作成したコアファイルに書き込み（ステップＳ１０４）、書き込みが正常に行われたかチェックする（ステップＳ１０５）。
【００６０】
ステップＳ１０５で、書き込みが正常に行われないときには、コアダンプ機能部２１ａは、メモリ情報を保存することができないと判断して、コアダンプ処理（メモリ情報保存処理）を終了する。
【００６１】
ステップＳ１０５で、書き込みが正常に行われたときには、コアダンプ機能部２１ａは、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるかチェックし（ステップＳ１０６）、最後のブロックでないときには、ステップＳ１０４に戻って、メモリ情報の書き込みから上記同様に処理する（ステップＳ１０４〜Ｓ１０６）。
【００６２】
ステップＳ１０６で、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるときには、コアダンプ機能部２１ａは、コアダンプ処理（メモリ情報保存処理）が最後まで正常に終了したと判断して、メモリ情報保存処理（コアダンプ処理）を終了する。
【００６３】
ステップＳ１０３で、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができないとき、例えば、着脱可能記憶装置３０が装着されていない、装着されている着脱可能記憶装置３０の空き領域がない、コアファイル作成場所が読み込み専用領域である等によってコアファイルの作成を行うことができないときには、コアダンプ機能部２１ａは、コアダンプ処理を一時停止し、コアダンプ処理が停止したことを、例えば、シリアルコンソールへの表示、画像処理装置の操作表示部のＬＥＤ等の発光体の点灯、点滅等、ブザーの鳴動の通知方法でユーザに通知して、コアダンプ処理が再開されるのを待つ（ステップＳ１０７）。
【００６４】
ユーザは、図５に示すように、このコアダンプ処理停止通知によって、コアダンプ処理が停止したことを認識し、コアダンプ処理を再開させるために、再開機能部３１を搭載した着脱可能記憶装置３０をいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着する。
【００６５】
実行機能部２２は、そのマウント処理実行処理部２２ａが、着脱可能記憶装置３０がいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着されたかを監視し、着脱可能記憶装置３０がいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着されると、装着された着脱可能記憶装置３０をシステムに認識させるマウント処理を実行する。実行機能部２２は、そのアプリケーション実行処理部２２ｂが、該装着された着脱可能記憶装置３０に搭載されているアプリケーションであるコアダンプ処理再開処理部３１ａを実行し、マウント場所通知処理部２２ｃが、着脱可能記憶装置３０から該アプリケーションを実行する際に、着脱可能記憶装置３０がファイルシステム上でマウントされている場所を、着脱可能記憶装置３０の再開機能部３１に通知する。このマウント場所通知処理部２２ｃから再開機能部３１へのマウント場所の通知方法としては、例えば、再開機能部３１の環境変数に設定する方法、再開機能部３１の実行時のパラメータとして指定する方法、共有メモリ機能やsocket機能等のプロセス間通信機能を利用した方法等を用いることができる。
【００６６】
そして、着脱可能記憶装置３０に搭載されている再開機能部３１は、アプリケーション実行処理部２２ｂによって、その再開機能部３１が実行されると、そのコアダンプ処理再開処理部３１ａが、コアダンプ機能部２１ａに停止中のコアダンプ処理の再開要求を出し、コアダンプ処理を再開させる。このコアダンプ処理を再開する際、再開機能部３１は、そのコアファイル作成場所通知処理部３１ｂが、実行機能部２２のマウント場所通知処理部２２ｃから通知された着脱可能記憶装置３０がマウントされた場所を、コアファイル保存場所として、ＯＳ２１のコアダンプ機能部２１ａに通知する。
【００６７】
コアダンプ機能部２１ａは、再開機能部３１によって停止しているコアダンプ処理が再開されると、該再開に際して通知されたコアファイル保存場所にコアファイルの作成を行い（ステップＳ１０８）、コアファイルの作成に成功したかチェックする（ステップＳ１０９）。
【００６８】
コアダンプ機能部２１ａは、ステップＳ１０９で、コアファイルの作成に失敗すると、コアダンプ処理を行うことができないと判断して、そのまま処理を終了し、コアファイルの作成に成功すると、該保存場所に上記不具合の発生したアプリケーションプログラムの使用しているメモリ情報を、ＯＳ２１の管理するメモリブロックのサイズで、該作成したコアファイルに書き込んで（ステップＳ１０４）、書き込みが正常に行われたかチェックする（ステップＳ１０５）。
【００６９】
ステップＳ１０５で、書き込みが正常に行われないときには、コアダンプ機能部２１ａは、メモリ情報を保存することができないと判断して、コアダンプ処理（メモリ情報保存処理）を終了し、ステップＳ１０５で、書き込みが正常に行われたときには、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるかチェックする（ステップＳ１０６）。ステップＳ１０６で、最後のブロックでないときには、コアダンプ機能部２１ａは、ステップＳ１０４に戻って、メモリ情報の書き込みから上記同様に処理し（ステップＳ１０４〜Ｓ１０６）、ステップＳ１０６で、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであると、メモリ情報保存が最後まで正常に終了したと判断して、コアダンプ処理を終了する。
【００７０】
このように、本実施例の画像処理装置のコントローラボード１は、メモリ上で実行中のプログラムに関するメモリ情報を生成して着脱可能記憶装置３０に保存するコアダンプ処理（メモリ情報保存処理）を行う際に、着脱可能記憶装置３０が着脱可能記憶装置装着口１９ａ〜１９ｎに装着されていない等によって、該メモリ情報の着脱可能記憶装置３０へのコアダンプ処理の実行が不可能であると、該コアダンプ処理を停止し、その後、着脱可能記憶装置３０が接続される等によって着脱可能記憶装置３０へのコアダンプ処理が可能になると、停止中のコアダンプ処理を再開させている。
【００７１】
したがって、コアダンプ処理が実行可能な状態となっていることを確認して確実に着脱可能記憶装置３０にメモリ情報を保存することができ、メモリ情報を安価かつ確実に着脱可能記憶装置３０に保存させることができる。
【実施例２】
【００７２】
図６及び図７は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第２実施例を示す図であり、図６は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第２実施例を適用した画像処理装置におけるコントローラボードのＲＯＭ及び着脱可能記憶装置上のプログラム配置を示す図である。
【００７３】
なお、本実施例は、上記第１実施例の画像処理装置及びそのコントローラボード１と同様の画像処理装置及びコントローラボードに適用したものであり、本実施例の説明においては、第１実施例と同様の構成部分には、同一の符号を付してその説明を省略または簡略化する。
【００７４】
図６において、コントローラボード１のＲＯＭ１２上には、第１実施例と同様のＯＳ２１、実行機能部２２及び基本機能部２３ａ〜２３ｎの各プログラムが格納されており、また、着脱可能記憶装置３０上には、第１実施例と同様のコアダンプ処理再開処理部３１ａとコアファイル作成場所通知処理部３１ｂを有する再開機能部３１のプログラムが格納されているとともに、再開設定機能部３２のプログラムが格納されている。
【００７５】
再開設定機能部（特定手段）３２は、再開対象記述部３２ａを有しており、再開対象記述部３２ａは、再開機能部３１がコアダンプ機能部２１ａに通知するコアダンプ処理を再開する対象が記述されている。すなわち、再開設定機能部３２は、再開対象記述部３２ａの記述内容によって、停止中のコアダンプ処理のうち再開対象のコアダンプ処理を特定する。
【００７６】
また、再開機能部３１は、この再開対象記述部３２ａに記述されている再開対象のコアダンプ処理を再開対象コアダンプ処理として実行機能部２２に通知する再開対象コアファイル処理通知部３１ｃを有している。
【００７７】
本実施例の画像処理装置のコントローラボード１は、着脱可能記憶装置３０の再開設定機能部３２によって、停止した複数のコアダンプ処理から再開する対象のコアダンプ処理を特定して、該コアダンプ処理を再開する。
【００７８】
すなわち、画像処理装置は、いま、図７に示すように、複数のアプリケーション５０（５０ａ、５０ｂ等）が実行中である場合、予めコアダンプ処理（メモリ情報保存処理）を実行するように設定された不具合が実行中のアプリケーションプログラム５０ａにおいて発生すると、ＯＳ２１は、図７に示すように、コアダンプ機能部２１ａを呼び出し、コアダンプ機能部２１ａが、コアダンプ処理を開始し、まず、作成するコアファイルの名前を、不具合を発生させたアプリケーションプログラムの名前、プロセスＩＤ等を使用して作成する。
【００７９】
次に、コアダンプ機能部２１ａは、作成したコアファイル名を使用し、コアファイルの作成場所として、不具合を発生させたプログラムが作業に使用していたディレクトリを選択して、コアファイルの作成を試みる。
【００８０】
コアダンプ機能部２１ａは、対象プログラムの作業ディレクトリにコアファイル名のコアファイルを作成可能か判断し、コアファイルを作成することができないときには、コアダンプ処理を行うことができないため、そのまま処理を終了する。コアダンプ機能部２１ａは、コアファイルを作成することができると、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができるかチェックし、既に着脱可能記憶装置１９ａ〜１９ｎに着脱可能記憶装置３０が装着されていて該着脱可能記憶装置３０を保存場所としてコアファイル名でコアファイルの作成が可能であると、該保存場所に上記不具合の発生したアプリケーションプログラムの使用しているメモリ情報を、ＯＳ２１の管理するメモリブロックのサイズで、該作成したコアファイルに書き込む。コアダンプ機能部２１ａは、コアファイルの書き込みを行うと、書き込みが正常に行われたかチェックし、書き込みが正常に行われないときには、メモリ情報を保存することができないと判断して、コアダンプ処理（メモリ情報保存処理）を終了する。
【００８１】
コアファイルの書き込みが正常に行われたときには、コアダンプ機能部２１ａは、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるかチェックし、最後のブロックでないときには、メモリ情報の書き込みから上記同様に処理し、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるときには、コアダンプ機能部２１ａは、メモリ情報保存が最後まで正常に終了したと判断して、メモリ情報保存処理（コアダンプ処理）を終了する。
【００８２】
そして、コアダンプ機能部２１ａは、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができないときには、コアダンプ処理を一時停止し、コアダンプ処理が停止したことを、例えば、シリアルコンソールへの表示、画像処理装置の操作表示部のＬＥＤ等の発光体の点灯、点滅等、ブザーの鳴動の通知方法でユーザに通知して、コアダンプ処理が再開されるのを待つ。
【００８３】
この１つのコアダンプ処理の停止中に、予めコアダンプ処理（メモリ情報保存処理）を実行するように設定された不具合が実行中の他のアプリケーションプログラム５０、例えば、アプリケーション５０ｂにおいて発生すると、ＯＳ２１は、上記同様に、コアダンプ機能部２１ａを呼び出し、コアダンプ機能部２１ａは、コアダンプ処理を開始する。コアダンプ機能部２１ａは、コアダンプ処理を上記同様に処理して、コアファイルの作成を行うことができないときには、コアダンプ処理を一時停止し、コアダンプ処理が停止したことを、例えば、シリアルコンソールへの表示、画像処理装置の操作表示部のＬＥＤ等の発光体の点灯、点滅等、ブザーの鳴動の通知方法でユーザに通知して、コアダンプ処理が再開されるのを待つ。
【００８４】
ユーザは、コアダンプ処理停止通知によって、コアダンプ処理が停止したことを認識し、コアダンプ処理を再開させるために、再開機能部３１を搭載した着脱可能記憶装置３０をいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着する。このとき、着脱可能記憶装置３０には、再開機能部３１だけでなく、再開対象のコアダンプ処理に関する記述である再開対象記述部３２ａを有する再開設定機能部３２を搭載している。
【００８５】
この再開対象記述部３２ａは、ユーザが再開したいコアダンプ処理を特定するために行う記述であり、再開させるコアダンプ処理の特定方法としては、例えば、不具合を発生させたアプリケーションプログラムのファイル名で特定する方法、プロセスＩＤで特定する方法、停止しているコアダンプ処理の中からランダムで１つの処理を再開させる方法等を用いることができる。例えば、ある現象が発生している際に、コアダンプ処理になっている対象が判明している場合には、プロセスＩＤで特定する方法やプログラムファイル名で特定する方法を利用することができ、同じプログラムで複数のプロセスが存在していて、それらの複数のプロセスのうち、複数のプロセスがコアダンプ処理の停止中である場合、コアファイルの取得を行いたいプロセスが判明しているときには、プロセスＩＤで特定する方法を用いることができる。また、大容量の着脱可能記憶装置３０が使用可能で、全てのコアダンプ処理によるコアファイルの格納が可能であることが分かっている場合には、全ての停止しているコアダンプ処理を再開させるようにしてもよい。さらに、どのプロセスがコアダンプ処理の停止中であるかが明らかでないときには、停止中のコアダンプ処理の中からランダムに１つのコアダンプ処理を特定して再開させるようにしてもよい。
【００８６】
実行機能部２２は、そのマウント処理実行処理部２２ａが、着脱可能記憶装置３０がいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着されたか監視し、着脱可能記憶装置３０がいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着されると、装着された着脱可能記憶装置３０をシステムに認識させるマウント処理を実行する。実行機能部２２は、そのアプリケーション実行処理部２２ｂが、該装着された着脱可能記憶装置３０に搭載されているアプリケーションであるコアダンプ処理再開処理部３１ａを実行し、マウント場所通知処理部２２ｃが、着脱可能記憶装置３０から該アプリケーションを実行する際に、着脱可能記憶装置３０がファイルシステム上でマウントされている場所を、着脱可能記憶装置３０の裁可機能部３１に通知する。このマウント場所通知処理部２２ｃから再開機能部３１へのマウント場所の通知方法としては、例えば、再開機能部３１の環境変数に設定する方法、再開機能部３１の実行時のパラメータとして指定する方法、共有メモリ機能やsocket機能等のプロセス間通信機能を利用した方法等を用いることができる。
【００８７】
そして、着脱可能記憶装置３０に搭載されている再開機能部３１は、実行機能部２２のアプリケーション実行処理部２２ｂによって、その再開機能部３１のコアダンプ処理再開処理部３１ａが実行されると、再開設定機能部３２の再開対象記述部３２ａの読み込みを行って、停止中のコアダンプ処理のうち再開させるコアダンプ処理を特定し、該特定したコアダンプ処理を、再開対象コアファイル処理通知部３１ｃがＯＳ２１のコアダンプ機能部２１ａに通知するとともに、そのコアファイル作成場所通知処理部３１ｂが、実行機能部２２のマウント場所通知処理部２２ｃから通知された着脱可能記憶装置３０がマウントされた場所を、コアファイル保存場所として、ＯＳ２１のコアダンプ機能部２１ａに通知する。
【００８８】
コアダンプ機能部２１ａは、再開機能部３１によって停止しているコアダンプ処理のうち特定されたコアダンプ処理が再開されると、該再開に際して通知されたコアファイル保存場所にコアファイルの作成を行い、コアファイルの作成に成功したかチェックする。
【００８９】
コアダンプ機能部２１ａは、コアファイルの作成に失敗すると、コアダンプ処理を行うことができないと判断して、そのまま処理を終了し、コアファイルの作成に成功すると、該保存場所に上記不具合の発生したアプリケーションプログラムの使用しているメモリ情報を、ＯＳ２１の管理するメモリブロックのサイズで、該作成したコアファイルに書き込んで、書き込みが正常に行われたかチェックする。
【００９０】
書き込みが正常に行われないときには、コアダンプ機能部２１ａは、メモリ情報を保存することができないと判断して、コアダンプ処理（メモリ情報保存処理）を終了し、書き込みが正常に行われたときには、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるかチェックする。最後のブロックでないときには、コアダンプ機能部２１ａは、メモリ情報の書き込みから上記同様に処理し、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであると、メモリ情報保存が最後まで正常に終了したと判断して、コアダンプ処理を終了する。
【００９１】
このように、本実施例の画像処理装置のコントローラボード１は、着脱可能記憶装置３０に、停止中のコアダンプ処理を特定する再開対象記述部３２ａを有する再開設定部３２を搭載し、再開機能部３１が、ＯＳ２１のコアダンプ機能部２１ａによって停止されているコアダンプ処理のうち再開設定部３２で特定されるコアダンプ処理を再開させている。
【００９２】
したがって、停止しているコアダンプ処理を選択的に再開させることができるので、停止中の複数のコアダンプ処理のうち、再開対象とするコアダンプ処理に必要なメモリサイズの着脱可能記憶装置３０を用意して着脱可能記憶装置装着口１９ａ〜１９ｎに装着することで、コアダンプ処理を実行して、高価で大容量の記憶装置を用いることなく、メモリ情報を保存することができる。
【００９３】
また、本実施例のコントローラボード１は、着脱可能記憶装置３０の搭載する再開設定部３２が、停止中のコアダンプ処理の発生元のプログラムのプロセスＩＤまたはプログラムファイル名によって停止中のコアダンプ処理を特定、あるいは、停止中の複数のコアダンプ処理の全てを特定している。
【００９４】
したがって、再開させるコアダンプ処理を複数の特定方法のうち適宜の特定方法を用いて特定することができ、利用性を向上させつつ、適切なコアダンプ処理を実行させることができる。
【００９５】
そして、上述のように停止中の複数のコアダンプ処理のうち、一部のコアダンプ処理のみを再開させると、再開しなかったその他のコアダンプ処理は、そのまま停止状態を保つ。
【００９６】
したがって、１度コアファイルを取得すると、該取得したコアファイルを別の機器（例えば、コンピュータ等）に移して、着脱可能記憶装置３０の空き容量を増やしたうえで、再度、着脱可能記憶装置装着光１９ａ〜１９ｎに該着脱可能記憶装置３０を装着して、上記同様にコアファイルの取得を行うことができ、着脱可能記憶装置３０が、大容量の記憶域を有していない場合にも、全てのコアファイルを順次着脱可能記憶装置３０にコアダンプして、処理することができる。
【実施例３】
【００９７】
図８〜図１１は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第３実施例を示す図であり、図８は、本発明の制御装置、画像処理装置、メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記憶媒体の第３実施例を適用した画像処理装置におけるコントローラボードのＲＯＭ及び着脱可能記憶装置上のプログラム配置を示す図である。
【００９８】
なお、本実施例は、上記第１実施例の画像処理装置及びそのコントローラボード１と同様の画像処理装置及びコントローラボードに適用したものであり、本実施例の説明においては、第１実施例と同様の構成部分には、同一の符号を付してその説明を省略または簡略化する。
【００９９】
本実施例の画像処理装置は、停止されたコアダンプ処理を指定して中断することのできるコアダンプ処理制御処理（メモリ情報保存制御処理）を行う。
【０１００】
図８において、コントローラボード１のＲＯＭ１２上には、第１実施例と同様のＯＳ２１、実行機能部２２、基本機能部２３ａ〜２３ｎ及びＵＩ（ユーザインターフェイス）制御部２４の各プログラムが格納されており、また、着脱可能記憶装置３０上には、第２実施例と同様のコアダンプ処理再開処理部３１ａとコアファイル作成場所通知処理部３１ｂと再開対象コアファイル処理通知部３１ｃを有する再開機能部３１及び再開対象記述部３２ａを有する再開設定機能部３２のプログラムが格納されている。
【０１０１】
ＵＩ制御部（報知手段、中断手段）２４は、停止中コアダンプ処理表示処理部２４ａ、停止中コアファイル処理中断選択肢表示処理部２４ｂ及び停止中コアダンプ処理中断通知処理部２４ｃを有している。停止中コアダンプ処理表示処理部２４ａは、コアダンプ機能部２１ａが実行中のコアダンプ処理を停止すると、画像処理装置のＵＩ（ユーザインターフェイス）である操作表示部の表示部にコアダンプ処理が停止した旨を表示し、停止中コアファイル処理中断選択肢表示処理部２４ｂは、停止中のコアダンプ処理を中断させる選択肢を操作表示部の表示部に表示する。停止中コアダンプ処理中断通知処理部２４ｃは、停止中コアファイル処理中断選択肢表示処理部２４ｂによって中断の選択されたコアダンプ処理の中断要求をコアダンプ機能部２１ａに出して、中断させる。
【０１０２】
本実施例の画像処理装置のコントローラボード１は、停止したコアダンプ処理を、ＵＩでの選択に応じて、図９及び図１０に示すように、中断させる中断処理を行う。なお、図９においては、第１実施例の図４と同様の処理ステップについては、同一のステップナンバーを付して、その説明を簡略化する。
【０１０３】
すなわち、画像処理装置は、いま、図９及び図１０に示すように、実行中のアプリケーション５０において予めコアダンプ処理（メモリ情報保存処理）を実行するように設定された不具合が発生すると、ＯＳ２１は、コアダンプ機能部２１ａを呼び出し、コアダンプ機能部２１ａは、コアダンプ処理を開始し、まず、作成するコアファイルの名前を、不具合を発生させたアプリケーションプログラムの名前、プロセスＩＤ等を使用して作成する（ステップＳ１０１）。
【０１０４】
次に、コアダンプ機能部２１ａは、作成したコアファイル名を使用し、コアファイルの作成場所として、不具合を発生させたプログラムが作業に使用していたディレクトリを選択して、コアファイルの作成を試みる。
【０１０５】
コアダンプ機能部２１ａは、対象プログラムの作業ディレクトリにコアファイル名のコアファイルを作成可能か判断し（ステップＳ１０２）、コアファイルを作成することができないときには、コアダンプ処理を行うことができないため、そのまま処理を終了する。ステップＳ１０２で、コアダンプ機能部２１ａは、コアファイルを作成することができると、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができるかチェックし（ステップＳ１０３）、既に着脱可能記憶装置１９ａ〜１９ｎに着脱可能記憶装置３０が装着されていて該着脱可能記憶装置３０を保存場所としてコアファイル名でコアファイルの作成が可能であると、該保存場所に上記不具合の発生したアプリケーションプログラムの使用しているメモリ情報を、ＯＳ２１の管理するメモリブロックのサイズで、該作成したコアファイルに書き込む（ステップＳ１０４）。コアダンプ機能部２１ａは、コアファイルの書き込みを行うと、書き込みが正常に行われたかチェックし（ステップＳ１０５）、書き込みが正常に行われないときには、メモリ情報を保存することができないと判断して、コアダンプ処理を終了する。
【０１０６】
ステップＳ１０５で、コアファイルの書き込みが正常に行われたときには、コアダンプ機能部２１ａは、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるかチェックし（ステップＳ１０６）、最後のブロックでないときには、メモリ情報の書き込みから上記同様に処理する（ステップＳ１０４〜Ｓ１０６）。ステップＳ１０６で、書き込んだメモリ情報がプログラムが使用しているメモリの中で最後のブロックであるときには、コアダンプ機能部２１ａは、コアダンプ処理が最後まで正常に終了したと判断して、コアダンプ処理を終了する。
【０１０７】
ステップＳ１０３で、着脱可能記憶装置３０を保存場所として、該保存場所にコアファイル名でコアファイルの作成を行うことができないとき、例えば、着脱可能記憶装置３０が装着されていない、装着されている着脱可能記憶装置３０の空き領域がない、コアファイル作成場所が読み込み専用領域である等によってコアファイルの作成を行うことができないときには、コアダンプ機能部２１ａは、コアダンプ処理を一時停止し、コアダンプ機能部２１ａがコアダンプ処理を停止すると、ＵＩ制御部２４は、その停止中コアダンプ処理表示処理部２４ａが画像処理装置の操作表示部の表示部にコアダンプ処理が停止された旨を表示するとともに、停止中コアファイル処理中断選択肢表示処理部２４ｂが、画像処理装置の操作表示部の表示部に、例えば、図１１に示すような停止通知・中断選択画面を表示して、コアダンプ処理が再開されるか、中断が選択操作されて、中断機能が呼ばれるかチェックする（ステップＳ２０１）。このＵＩ制御部２４のコアダンプ機能部２１ａがコアダンプ処理停止の通知をコアダンプ機能部２１ａから受け取る方法は、例えば、ＵＩ制御部２４が、コアダンプ機能部２１ａからのコアダンプ処理停止の通知を常時監視して同期的にコアダンプ処理停止の通知を受け取る方法、シグナル機能のように非同期でコアダンプ処理停止の通知を受け取る方法、または、定期的にＯＳ２１に問い合わせて、停止しているコアダンプ処理がないか確認するという方法等を用いることができる。また、コアダンプ機能部２１ａがＵＩ制御部２４にコアダンプ処理停止を通知する方法は、ＯＳ２１からＵＩ制御部２４に直接通知する方法、別のプログラム（例えば、実行機能部２２等）にまず通知を行い、そこからＵＩ制御部２４に通知する方法等を用いることができる。
【０１０８】
ＵＩ制御部２４は、コアダンプ機能部２１ａからコアダンプ処理停止の通知を受け取ると、上述のように、停止通知・中断選択画面にコアダンプ処理に問題が発生して停止した旨を表示し、ユーザに対して問題発生を通知するとともに、停止しているコアダンプ処理の中断を可能とする中断ボタン（中断選択肢）を画面に提示して、中断機能が選択されたかチェックする（ステップＳ２０２）。
【０１０９】
ユーザは、図１１に示したような停止通知・中断選択画面で、中断を選択するか、再開機能部３１を搭載した着脱可能記憶装置３０をいずれかの着脱可能記憶装置装着口１９ａ〜１９ｎに装着する。
【０１１０】
ユーザが着脱可能記憶装置３０を着脱可能記憶装置装着口１９ａ〜１９ｎのいずれかに装着すると、ステップＳ２０２で、停止したコアダンプ処理の再開が選択されたと判断して、上記第２実施例と同様に、停止しているコアダンプ処理を再開する。
【０１１１】
ＵＩ制御部２４は、ユーザが停止通知・中断選択画面で中断を選択すると、停止中コアダンプ処理中断通知処理部２４ｃが、中断の選択されたコアダンプ処理の中断要求を、ＯＳ２１のコアダンプ機能部２１ａに出す。
【０１１２】
コアダンプ機能部２１ａは、ＵＩ制御部２４の停止中コアダンプ処理中断通知処理部２４ｃから中断要求があると、該中断要求に係るコアダンプ処理を中断させて、コアダンプ処理を終了する（ステップＳ２０３）。
【０１１３】
このように、本実施例のコントローラボード１は、ＯＳ２１のコアダンプ機能部２１ａがコアダンプ処理を停止させると、その旨をＵＩ制御部２４の表示部に表示する等の方法で報知している。
【０１１４】
したがって、シリアル端末（シリアルコンソール）等の特別な装置を使用することなく、画像処理装置等のアプリケーションの処理に問題が発生して停止していることをユーザが知ることができ、問題発生時の情報取得が可能な状態となっていることをユーザが認識して、メモリ情報を適切に取得することができる。
【０１１５】
また、本実施例のコントローラボード１は、コアダンプ機能部２１ａが停止したコアダンプ処理を、ＵＩ制御部２４の停止中コアファイル処理中断選択肢表示処理部２４の表示に応じた選択によって、停止中コアダンプ処理中断通知処理部２４ｃがコアダンプ機能部２１ａに中断要求を行って、コアダンプ機能部２１ａが、該中断要求のあったコアダンプ処理を中断させている。
【０１１６】
したがって、ユーザによって不要なメモリ情報の取得を中断させることができ、必要ではないメモリ情報がいつまでもメモリ上に存在しつづけ、正常に動作しているプログラムが使用可能なメモリ領域を圧迫する状態を回避することができる。
【０１１７】
また、本実施例のコントローラボード１は、ＯＳとしてＵＮＩＸ系のＯＳを用いて、該ＯＳの機能を利用して、メモリ情報の保存処理であるコアダンプを行う場合に適用している。
【０１１８】
したがって、一般的に使用されている形式で解析に必要な情報を取得することができ、取得した情報を解析するためのソフトウェアも既存のものを利用することができる。その結果、簡単かつ容易に本発明のメモリ情報保存制御を導入することができる。
【０１１９】
なお、ＯＳとしては、ＵＮＩＸ系のＯＳに限るものではなく、上記コアダンプ処理機能（メモリ情報保存機能）を搭載しているか、該コアダンプ処理機能（メモリ情報保存機能）をアプリケーションプログラムで付加できるＯＳであればいずれのＯＳであってもよい。
【０１２０】
さらに、本実施例の画像処理装置は、画像データに所定の画像処理を施す画像処理装置に制御装置としてのコントローラボード１を搭載している。
【０１２１】
したがって、画像処理装置の動作の解析に必要なメモリ情報を適切に着脱可能記憶装置３０に保存することができ、画像処理装置の解析を確実かつ効率的に行うことができる。
【０１２２】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【０１２３】
本発明は、アプリケーションプログラムの不具合発生時にメモリ情報を保存する制御装置、該制御装置を搭載するファクシミリ装置、複合装置、画像読み取り装置等の画像処理装置、該メモリ情報保存制御方法、メモリ情報保存制御プログラム及び記録媒体に利用することができる。
【図面の簡単な説明】
【０１２４】
【図１】本発明の第１実施例を適用した画像処理装置のコントローラボードのブロック構成図。
【図２】図１のＲＯＭ及び着脱可能記憶装置上のプログラム配置を示す図。
【図３】図２のＲＡＭ上に展開されるプログラム配置を示す図。
【図４】図１のコントローラボードによるコアダンプ制御処理を示すフローチャート。
【図５】図１のコントローラボードによるコアダンプ制御処理の処理手順の説明図。
【図６】本発明の第２実施例のコントローラボードのＲＯＭ及び着脱可能記憶装置上のプログラム配置を示す図。
【図７】図６のコントローラボードによるコアダンプ制御処理の処理手順の説明図。
【図８】本発明の第２実施例のコントローラボードのＲＯＭ及び着脱可能記憶装置上のプログラム配置を示す図。
【図９】第３実施例の中断処理を含むコアダンプ制御処理を示すフローチャート。
【図１０】第３実施例の中断処理を含むコアダンプ制御処理の処理手順の説明図。
【図１１】図９及び図１０のコアダンプ制御処理で表示される停止通知・中断選択画面の一例を示す図。
【図１２】従来のコアダンプ処理を示すフローチャート。
【符号の説明】
【０１２５】
１  コントローラボード
１０  ＡＳＩＣ
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  ＮＶＲＡＭ
１５  ＲＴＣ
１６  エンジンインターフェイス
１７  ＵＳＢインターフェイス
１８  ネットワークインターフェイス
１９ａ〜１９ｎ  着脱可能記憶装置装着口
２１  ＯＳ
２１ａ  コアダンプ処理機能部
２２  実行機能部
２２ａ  マウント処理実行処理部
２２ｂ  アプリケーション実行処理部
２２ｃ  マウント場所通知処理部
２３ａ〜２３ｎ  基本機能部
２４  ＵＩ制御部
２４ａ  停止中コアダンプ処理表示処理部
２４ｂ  停止中コアファイル処理中断選択肢表示処理部
２４ｃ  停止中コアダンプ処理中断通知処理部
３０  着脱可能記憶装置
３１  再開機能部３１
３１ａ  コアダンプ処理再開処理部
３１ｂ  コアファイル作成場所通知処理部
３２  再開設定機能部
３２ａ  再開対象記述部
４０  システムプログラム
５０  アプリケーションプログラム
【図１】
0005146000.tif 000002
【図２】
0005146000.tif 000003
【図３】
0005146000.tif 000004
【図４】
0005146000.tif 000005
【図５】
0005146000.tif 000006
【図６】
0005146000.tif 000007
【図７】
0005146000.tif 000008
【図８】
0005146000.tif 000009
【図９】
0005146000.tif 000010
【図１０】
0005146000.tif 000011
【図１１】
0005146000.tif 000012
【図１２】
0005146000.tif 000013