(57)【要約】【課題】  新たなコンピュータウィルスのような不測の要因により引き起こされるコンピュータの障害を検知する。【解決手段】  プログラムデータ比較部１３４が、プログラム記録部１１０に記録されたプログラム（オペレーティングシステムおよびアプリケーションプログラム）からチェックサムを求め、初期状態プログラムデータ記録部１３２に記録された初期状態プログラム（測定機器１の出荷時のプログラム）のチェックサムと比較する。さらに、この比較結果に基づき、障害判定部１４４が、プログラム記録部１１０に記録されたプログラムに障害（例えば、コンピュータウィルスの感染、測定機器１の利用者の過誤によるプログラムの消去）が起きたか否かを判定する。具体的には、チェックサムが不一致であれば、プログラムに障害が起きたと判定する。【選択図】  図２
2006350955.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを記録するプログラム記録手段と、
初期状態の前記プログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録手段と、
前記プログラム記録手段に記録された前記プログラムを表すプログラムデータを、前記初期状態プログラムデータと比較するプログラムデータ比較手段と、
前記プログラムデータ比較手段の比較結果に基づき、前記プログラム記録手段に記録された前記プログラムに障害が起きたか否かを判定する障害判定手段と、
を備えた障害検出装置。
【請求項２】
請求項１に記載の障害検出装置であって、
前記プログラムデータ比較手段の比較結果が、前記プログラムデータと前記初期状態プログラムデータとの不一致を示すものである場合に、
前記障害判定手段は前記プログラムに障害が起きたと判定する、
障害検出装置。
【請求項３】
請求項１に記載の障害検出装置であって、
前記プログラムは、オペレーティングシステムおよびアプリケーションプログラムを有する、
障害検出装置。
【請求項４】
請求項１に記載の障害検出装置であって、
前記プログラムデータ比較手段の作動を指示する障害検出指示手段、
を備えた障害検出装置。
【請求項５】
請求項１に記載の障害検出装置であって、
前記初期状態プログラムデータは、初期状態の前記プログラムそのものであり、
前記プログラムデータは、前記プログラムそのものである、
障害検出装置。
【請求項６】
請求項１に記載の障害検出装置であって、
前記初期状態プログラムデータは、初期状態の前記プログラムのチェックサムであり、
前記プログラムデータは、前記プログラムのチェックサムである、
障害検出装置。
【請求項７】
請求項１に記載の障害検出装置であって、
前記初期状態プログラムデータは、初期状態の前記プログラムを圧縮したものであり、
前記プログラムデータは、前記プログラムを圧縮したものである、
障害検出装置。
【請求項８】
請求項１に記載の障害検出装置であって、
初期状態の前記プログラムを記録する初期状態プログラム記録手段、
を備え、
前記障害判定手段により前記プログラムに障害が起きたと判定された場合は、前記プログラム記録手段の記録内容が、前記初期状態プログラム記録手段に記録された初期状態の前記プログラムに変更される、
障害検出装置。
【請求項９】
請求項８に記載の障害検出装置であって、
前記初期状態プログラム記録手段は、前記障害判定手段により前記プログラムに障害が起きたと判定された場合に、ネットワークを介して、初期状態の前記プログラムを取得する、
障害検出装置。
【請求項１０】
請求項１に記載の障害検出装置であって、
被測定物が接続可能であり、前記被測定物の測定を行なうための障害検出装置。
【請求項１１】
プログラム記録手段が、プログラムを記録するプログラム記録工程と、
初期状態プログラムデータ記録手段が、初期状態の前記プログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録工程と、
プログラムデータ比較手段が、前記プログラム記録手段に記録された前記プログラムを表すプログラムデータを、前記初期状態プログラムデータと比較するプログラムデータ比較工程と、
障害判定手段が、前記プログラムデータ比較手段の比較結果に基づき、前記プログラム記録手段に記録された前記プログラムに障害が起きたか否かを判定する障害判定工程と、
を備えた障害検出方法。
【請求項１２】
プログラムを記録するプログラム記録処理と、
初期状態の前記プログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録処理と、
前記プログラム記録処理により記録された前記プログラムを表すプログラムデータを、前記初期状態プログラムデータと比較するプログラムデータ比較処理と、
前記プログラムデータ比較処理の比較結果に基づき、前記プログラム記録処理により記録された前記プログラムに障害が起きたか否かを判定する障害判定処理と、
をコンピュータに実行させるための障害検出用プログラム。
【請求項１３】
プログラムを記録するプログラム記録処理と、
初期状態の前記プログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録処理と、
前記プログラム記録処理により記録された前記プログラムを表すプログラムデータを、前記初期状態プログラムデータと比較するプログラムデータ比較処理と、
前記プログラムデータ比較処理の比較結果に基づき、前記プログラム記録処理により記録された前記プログラムに障害が起きたか否かを判定する障害判定処理と、
をコンピュータに実行させるための障害検出用プログラムを記録したコンピュータによって読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は計測器などにコンピュータを組み込んだ組み込み装置におけるコンピュータウィルス等による障害の防止に関する。
【背景技術】
【０００２】
近年、コンピュータウィルスがコンピュータに感染し、コンピュータに記録されたソフトウェアの改ざん等を行なうといった被害が多発している。このような被害は、計測器などにコンピュータを組み込んだ組み込み装置においても発生する。そこで、市販のウィルス対策ソフトを使用して、コンピュータウィルスを検出し、コンピュータウイルスの感染を防止することが広く行なわれている。
【０００３】
ウィルス対策ソフトは、例えば、コンピュータウィルスのデータベースを用いてコンピュータウィルスの検出を行なう（例えば、特許文献１を参照）。
【０００４】
【特許文献１】特開２００３−２１６４４５号公報（要約）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のような従来技術によれば、未発見のコンピュータウィルスを検知できない。未発見のコンピュータウィルスの特徴は、コンピュータウィルスのデータベースには記録されていないからである。
【０００６】
そこで、本発明は、新たなコンピュータウィルスのような不測の要因により引き起こされるコンピュータの障害を検知する方法などを提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明は、プログラムを記録するプログラム記録手段と、初期状態のプログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録手段と、プログラム記録手段に記録されたプログラムを表すプログラムデータを、初期状態プログラムデータと比較するプログラムデータ比較手段と、プログラムデータ比較手段の比較結果に基づき、プログラム記録手段に記録されたプログラムに障害が起きたか否かを判定する障害判定手段とを備えるように構成される。
【０００８】
上記のように構成された発明によれば、プログラム記録手段が、プログラムを記録する。初期状態プログラムデータ記録手段が、初期状態のプログラムを表す初期状態プログラムデータを記録する。プログラムデータ比較手段が、プログラム記録手段に記録されたプログラムを表すプログラムデータを、初期状態プログラムデータと比較する。障害判定手段が、プログラムデータ比較手段の比較結果に基づき、プログラム記録手段に記録されたプログラムに障害が起きたか否かを判定する。
【０００９】
また、本発明は、プログラムデータ比較手段の比較結果が、プログラムデータと初期状態プログラムデータとの不一致を示すものである場合に、障害判定手段はプログラムに障害が起きたと判定するようにしてもよい。
【００１０】
また、本発明は、プログラムがオペレーティングシステムおよびアプリケーションプログラムを有するようにしてもよい。
【００１１】
また、本発明は、プログラムデータ比較手段の作動を指示する障害検出指示手段を備えるようにしてもよい。
【００１２】
また、本発明は、初期状態プログラムデータが、初期状態のプログラムそのものであり、プログラムデータは、プログラムそのものであるようにしてもよい。
【００１３】
また、本発明は、初期状態プログラムデータが、初期状態のプログラムのチェックサムであり、プログラムデータは、プログラムのチェックサムであるようにしてもよい。
【００１４】
また、本発明は、初期状態プログラムデータが、初期状態のプログラムを圧縮したものであり、プログラムデータは、プログラムを圧縮したものであるようにしてもよい。
【００１５】
また、本発明は、初期状態のプログラムを記録する初期状態プログラム記録手段を備え、障害判定手段によりプログラムに障害が起きたと判定された場合は、プログラム記録手段の記録内容が、初期状態プログラム記録手段に記録された初期状態のプログラムに変更されるようにしてもよい。
【００１６】
また、本発明は、初期状態プログラム記録手段が、障害判定手段によりプログラムに障害が起きたと判定された場合に、ネットワークを介して、初期状態のプログラムを取得するようにしてもよい。
【００１７】
また、本発明は、被測定物が接続可能であり、被測定物の測定を行なうためのものであってもよい。
【００１８】
本発明は、プログラム記録手段が、プログラムを記録するプログラム記録工程と、初期状態プログラムデータ記録手段が、初期状態のプログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録工程と、プログラムデータ比較手段が、プログラム記録手段に記録されたプログラムを表すプログラムデータを、初期状態プログラムデータと比較するプログラムデータ比較工程と、障害判定手段が、プログラムデータ比較手段の比較結果に基づき、プログラム記録手段に記録されたプログラムに障害が起きたか否かを判定する障害判定工程とを備えるように構成される。
【００１９】
本発明は、プログラムを記録するプログラム記録処理と、初期状態のプログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録処理と、プログラム記録処理により記録されたプログラムを表すプログラムデータを、初期状態プログラムデータと比較するプログラムデータ比較処理と、プログラムデータ比較処理の比較結果に基づき、プログラム記録処理により記録されたプログラムに障害が起きたか否かを判定する障害判定処理とをコンピュータに実行させるための障害検出用プログラムである。
【００２０】
本発明は、プログラムを記録するプログラム記録処理と、初期状態のプログラムを表す初期状態プログラムデータを記録する初期状態プログラムデータ記録処理と、プログラム記録処理により記録されたプログラムを表すプログラムデータを、初期状態プログラムデータと比較するプログラムデータ比較処理と、プログラムデータ比較処理の比較結果に基づき、プログラム記録処理により記録されたプログラムに障害が起きたか否かを判定する障害判定処理とをコンピュータに実行させるための障害検出用プログラムを記録したコンピュータによって読み取り可能な記録媒体である。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施形態を図面を参照しながら説明する。
【００２２】
図１は、本発明の実施形態にかかる測定機器１の構成を示すハードウェアブロック図である。測定機器１には被測定物（DUT : Device Under Test）２が接続可能である。測定機器１は被測定物２を測定するためのものであり、例えばスペクトラムアナライザなどである。なお、被測定物２は、例えば、光ファイバや周波数変換素子（例えば、ミキサ）である。また、測定機器１はネットワーク４に接続可能である。なお、ネットワーク４は、例えばインターネットである。
【００２３】
測定機器１は、コンピュータ本体１０、キーボード１２ａ、フロントパネル１２ｂ、ディスプレイ１３、メモリカード１４ａ、ハードディスク１４ｂ、ＦＤＤ（フロッピー（登録商標）ディスクドライブ）１４ｃ、モデム１６、計測部１８を備える。測定機器１は、コンピュータ本体１０が組み込まれた組み込み機器である。
【００２４】
コンピュータ本体１０は、ＣＰＵ１０ａ、ＲＡＭ１０ｂ、ＲＯＭ１０ｃを有する。ＲＡＭ１０ｂは、読み書き可能なメモリであり、一時的な作業記憶領域などとして利用される。ＲＯＭ１０ｃは、読み出しのみ可能なメモリ（例えば、フラッシュメモリ）であり、BIOSなどが記録されている。ＣＰＵ１０ａは、ＲＡＭ１０ｂを一時的な作業記憶領域としながら、ＲＯＭ１０ｃに記録されたBIOSなどを実行する。
【００２５】
キーボード１２ａおよびフロントパネル１２ｂは、コンピュータ本体１０に接続されている。キーボード１２ａおよびフロントパネル１２ｂはキーを有し、測定機器１の利用者がキーを押すことにより、コンピュータ本体１０を操作できる。なお、フロントパネル１２ｂは、測定機器１の前面に取り付けられたパネルである。
【００２６】
ディスプレイ１３は、コンピュータ本体１０に接続されており、コンピュータ本体１０の情報処理の内容を表示する。なお、ディスプレイ１３は、例えば、測定機器１の前面に取り付けられている。
【００２７】
メモリカード１４ａ、ハードディスク１４ｂおよびＦＤＤ（フロッピー（登録商標）ディスクドライブ）１４ｃは、コンピュータ本体１０に接続されており、コンピュータ本体１０の外部補助記憶装置である。メモリカード１４ａの規格としては、例えばコンパクトフラッシュ（登録商標）が知られている。メモリカード１４ａおよびハードディスク１４ｂには、システム関連の主要プログラムが記録されている。ＦＤＤ１４ｃにはフロッピー（登録商標）ディスクが挿入可能であり、フロッピー（登録商標）ディスクから必要なプログラムなどを読み込み可能となっている。このようなプログラムを、コンピュータ本体１０が読み込んで実行する。
【００２８】
モデム１６は、コンピュータ本体１０に接続されており、コンピュータ本体１０がネットワーク４にアクセスするためのものである。
【００２９】
計測部１８は、コンピュータ本体１０に接続されており、コンピュータ本体１０の制御を受けながら、被測定物２から測定データを取得する。
【００３０】
測定機器１のコンピュータ本体１０、メモリカード１４ａおよびハードディスク１４ｂにより障害検出装置１００が実現される。
【００３１】
図２は、障害検出装置１００の構成を示す機能ブロック図である。障害検出装置１００は、プログラム記録部１１０、計測制御部１１２、障害検出指示部１２０、初期状態プログラムデータ記録部１３２、プログラムデータ比較部１３４、初期状態プログラム記録部１４２、障害判定部１４４を備える。
【００３２】
なお、プログラム記録部１１０、計測制御部１１２、初期状態プログラムデータ記録部１３２および初期状態プログラム記録部１４２は、例えば、メモリカード１４ａおよびハードディスク１４ｂにこれらの各部の機能を実現するためのプログラムを記録しておくことにより実装できる。
【００３３】
また、障害検出指示部１２０、プログラムデータ比較部１３４および障害判定部１４４は、例えば、ＲＯＭ１０ｃ（例えば、フラッシュメモリ）にこれらの各部の機能を実現するためのプログラムを記録しておくことにより実装できる。
【００３４】
プログラム記録部１１０は、プログラム（例えば、オペレーティングシステムおよびアプリケーションプログラム）を記録する。プログラム記録部１１０は、アプリケーション記録部１１０ａ、ＯＳ（オペレーティングシステム）記録部１１０ｂを有する。アプリケーション記録部１１０ａは、アプリケーションプログラム（例えば、被測定物２の計測制御のためのプログラム）を記録する。ＯＳ（オペレーティングシステム）記録部１１０ｂは、オペレーティングシステム（例えば、Windows（登録商標）など）を記録する。
【００３５】
計測制御部１１２は、プログラム記録部１１０からプログラムを読み出して実行することにより、計測部１８の制御を行なう。これにより、計測制御部１１２は、被測定物２の測定を行なうことになる。計測制御部１１２による測定結果は、ディスプレイ１３に表示される。
【００３６】
障害検出指示部１２０は、プログラムデータ比較部１３４に障害検出の指示を行ない、プログラムデータ比較部１３４を作動させる。障害検出指示部１２０は、キーボード１２ａあるいはフロントパネル１２ｂにおける、所定の特別なキーが押された場合に、プログラムデータ比較部１３４を作動させるようにすることが好ましい。あるいは、障害検出指示部１２０は、測定機器１の電源投入時に、ＦＤＤ１４ｃにフロッピー（登録商標）ディスクが挿入されている場合に、プログラムデータ比較部１３４を作動させるようにすることもまた好ましい。
【００３７】
初期状態プログラムデータ記録部１３２は、初期状態のプログラムを表す初期状態プログラムデータを記録する。初期状態プログラムデータは、初期状態のプログラムそのもの、あるいは初期状態のプログラムを圧縮したものでもよいが、初期状態のプログラムのチェックサムでもよい。あるいは、初期状態のプログラムのメッセージダイジェスト（ハッシュ値）でもよい。すなわち、初期状態のプログラムに固有のデータとみなすことができるものであればよい。なお、初期状態のプログラムとは、例えば、測定機器１の出荷時のプログラムである。測定機器１は、コンピュータ本体１０が組み込まれた組み込み機器である。このため、測定機器１の利用者が、出荷時のプログラムの他にプログラムをインストールすることを禁止している。
【００３８】
なお、チェックサムの計算方法には、”Adler-32”および”Fletcher checksum”といった周知の方法がある。Adler-32は、Fletcher checksumを改良した方法である。また、Adler-32によりチェックサムを計算すると、CRC32とほぼ同等の信頼性を持ちながら、CRC32よりも高速に計算を行なえる。
【００３９】
初期状態プログラムデータ記録部１３２は、初期アプリケーションデータ記録部１３２ａ、初期ＯＳデータ記録部１３２ｂを有する。初期アプリケーションデータ記録部１３２ａは、初期状態のアプリケーションプログラムを表す初期アプリケーションデータを記録する。初期ＯＳデータ記録部１３２ｂは、初期状態のオペレーティングシステムを表す初期オペレーティングシステムデータを記録する。
【００４０】
なお、初期状態プログラムデータ記録部１３２は、FAT（File Allocation Table）のように測定機器１のユーザに対して公開するよりはむしろ、測定機器１のユーザからファイルシステムとして見えないようなハードディスク１４ｂにおける領域に実装することが好ましい。これにより、初期状態プログラムデータ記録部１３２の記録内容の改ざんを困難にすることができる。
【００４１】
プログラムデータ比較部１３４は、プログラム記録部１１０に記録されたプログラムを表すプログラムデータ（プログラムに固有のデータとみなすことができるもの）を、初期状態プログラムデータ記録部１３２に記録された初期状態プログラムデータと比較する。初期状態プログラムデータを初期状態のプログラムそのものとした場合は、プログラムデータはプログラムそのものである。初期状態プログラムデータを初期状態のプログラムのチェックサムとした場合は、プログラムデータはプログラムのチェックサムである。初期状態プログラムデータを初期状態のプログラムを圧縮したものとした場合は、プログラムデータはプログラムを圧縮したものである。初期状態プログラムデータを初期状態のプログラムのメッセージダイジェスト（ハッシュ値）とした場合は、プログラムデータはプログラムのメッセージダイジェスト（ハッシュ値）である。
【００４２】
測定機器１の利用者が、出荷時のプログラムの他にプログラムをインストールすることを禁止しているので、本来、プログラム記録部１１０に記録されたプログラムは初期状態（例えば、測定機器１の出荷時）と異ならないはずである。しかし、コンピュータウィルスがコンピュータ本体１０に感染すると、プログラム記録部１１０に記録されたプログラムが書き換えられてしまう。すると、プログラム記録部１１０に記録されたプログラムは初期状態（例えば、測定機器１の出荷時）と異なるものとなる。なお、測定機器１の利用者が、誤って、プログラム記録部１１０に記録されたプログラムを消去した場合もまた、プログラム記録部１１０に記録されたプログラムは初期状態（例えば、測定機器１の出荷時）と異なるものとなる。
【００４３】
プログラムデータ比較部１３４は、アプリケーションデータ比較部１３４ａ、ＯＳデータ比較部１３４ｂを有する。アプリケーションデータ比較部１３４ａは、アプリケーション記録部１１０ａに記録されたアプリケーションプログラムを表すアプリケーションデータを求め、初期アプリケーションデータ記録部１３２ａに記録された初期アプリケーションデータと比較する。ＯＳデータ比較部１３４ｂは、ＯＳ記録部１１０ｂに記録されたオペレーティングシステムを表すオペレーティングシステムデータを求め、初期ＯＳデータ記録部１３２ｂに記録された初期オペレーティングシステムデータと比較する。
【００４４】
初期状態プログラム記録部１４２は、初期状態のプログラムを記録する。初期状態のプログラムは圧縮されていてもよい。また、障害判定部１４４によりプログラムに障害が起きたと判定された場合に、ネットワーク４に接続された不図示のサーバから、初期状態のプログラムをダウンロードしてきて、記録するようにしてもよい。この場合は、初期状態プログラムデータを、チェックサムとしておくとよい。
【００４５】
初期状態プログラム記録部１４２は、初期アプリケーション記録部１４２ａ、初期ＯＳ記録部１４２ｂを有する。初期アプリケーション記録部１４２ａは、初期状態のアプリケーションプログラムを記録する。初期ＯＳ記録部１４２ｂは、初期状態のオペレーティングシステムを記録する。初期状態のアプリケーションプログラムおよび初期状態のオペレーティングシステムは、圧縮されていてもよい。また、障害判定部１４４によりプログラムに障害が起きたと判定された場合に、ネットワーク４に接続された不図示のサーバから、初期状態のアプリケーションプログラムおよび初期状態のオペレーティングシステムをダウンロードしてきて、記録するようにしてもよい。
【００４６】
なお、初期状態プログラム記録部１４２は、FAT （File
Allocation Table）のように測定機器１のユーザに対して公開するよりはむしろ、測定機器１のユーザからファイルシステムとして見えないようなハードディスク１４ｂにおける領域に実装することが好ましい。これにより、初期状態プログラム記録部１４２の記録内容の改ざんを困難にすることができる。
【００４７】
障害判定部１４４は、プログラムデータ比較部１３４の比較結果に基づき、プログラム記録部１１０に記録されたプログラムに障害（例えば、コンピュータウィルスの感染、測定機器１の利用者の過誤によるプログラムの消去）が起きたか否かを判定する。具体的には、プログラムデータと初期状態プログラムデータとが不一致であれば、プログラムに障害が起きたと判定する。プログラムデータと初期状態プログラムデータとの不一致は、コンピュータウィルスの感染、測定機器１の利用者の過誤によるプログラムの消去などを示唆するものだからである。なお、プログラムデータと初期状態プログラムデータとが一致すれば、プログラムに障害が起きていないと判定する。
【００４８】
なお、障害判定部１４４は、プログラムに障害が起きたと判定した場合、ディスプレイ１３に、「プログラムに障害が起きた」旨のエラーメッセージの表示を指示する。ディスプレイ１３は、この指示を受け、エラーメッセージを表示する。
【００４９】
また、障害判定部１４４は、プログラムに障害が起きたと判定した場合、初期状態プログラム記録部１４２に記録された初期状態のプログラムを読み出して、プログラム記録部１１０に上書きする。これにより、プログラム記録部１１０の記録内容は、初期状態のプログラムとなる。すなわち、障害が起きたプログラムが復旧される。測定機器１の利用者が、出荷時のプログラムの他にプログラムをインストールすることを禁止しているため、プログラムのあるべき状態は初期状態（出荷時の状態）である。
【００５０】
障害判定部１４４は、アプリケーション障害判定部１４４ａ、ＯＳ障害判定部１４４ｂを有する。
【００５１】
アプリケーション障害判定部１４４ａは、アプリケーションデータ比較部１３４ａの比較結果が不一致である場合に、アプリケーション記録部１１０ａに記録されたアプリケーションプログラムに障害が起きたと判定する。なお、アプリケーションデータ比較部１３４ａの比較結果が一致である場合には、アプリケーション記録部１１０ａに記録されたアプリケーションプログラムに障害が起きていないと判定する。
【００５２】
アプリケーション障害判定部１４４ａは、アプリケーションプログラムに障害が起きたと判定した場合、ディスプレイ１３に、「アプリケーションプログラムに障害が起きた」旨のエラーメッセージの表示を指示する。ディスプレイ１３は、この指示を受け、エラーメッセージを表示する。
【００５３】
また、アプリケーション障害判定部１４４ａは、アプリケーションプログラムに障害が起きたと判定した場合、初期アプリケーション記録部１４２ａに記録された初期状態のアプリケーションプログラムを読み出して、アプリケーション記録部１１０ａに上書きする。これにより、アプリケーション記録部１１０ａの記録内容は、初期状態のアプリケーションプログラムとなる。すなわち、障害が起きたアプリケーションプログラムが復旧される。
【００５４】
ＯＳ障害判定部１４４ｂは、ＯＳデータ比較部１３４ｂの比較結果が不一致である場合に、ＯＳ記録部１１０ｂに記録されたオペレーティングシステムに障害が起きたと判定する。なお、ＯＳデータ比較部１３４ｂの比較結果が一致である場合には、ＯＳ記録部１１０ｂに記録されたオペレーティングシステムに障害が起きていないと判定する。
【００５５】
ＯＳ障害判定部１４４ｂは、オペレーティングシステムに障害が起きたと判定した場合、ディスプレイ１３に、「オペレーティングシステムに障害が起きた」旨のエラーメッセージの表示を指示する。ディスプレイ１３は、この指示を受け、エラーメッセージを表示する。
【００５６】
また、ＯＳ障害判定部１４４ｂは、オペレーティングシステムに障害が起きたと判定した場合、初期ＯＳ記録部１４２ｂに記録された初期状態のオペレーティングシステムを読み出して、アプリケーション記録部１１０ａに上書きする。これにより、ＯＳ記録部１１０ｂの記録内容は、初期状態のオペレーティングシステムとなる。すなわち、障害が起きたオペレーティングシステムが復旧される。
【００５７】
次に、本発明の実施形態の動作を図３のフローチャートを参照して説明する。
【００５８】
まず、障害検出指示部１２０は、キーボード１２ａあるいはフロントパネル１２ｂにおける所定の特別なキーが押されたか、あるいは、測定機器１の電源投入時にＦＤＤ１４ｃにフロッピー（登録商標）ディスクが挿入されているか否かを判定し、障害検出の指示を行なうか否かを決定する（Ｓ１２）。
【００５９】
所定の特別なキーが押されたか、あるいは、フロッピー（登録商標）ディスクが挿入されているならば、プログラムデータ比較部１３４に障害検出の指示を行ない（Ｓ１２、Ｙｅｓ）、プログラムデータ比較部１３４を作動させる。
【００６０】
プログラムデータ比較部１３４は、プログラム記録部１１０に記録されたプログラムを表すプログラムデータ（プログラムに固有のデータとみなすことができるもの）を、初期状態プログラムデータ記録部１３２に記録された初期状態プログラムデータと比較する。この比較により、プログラム記録部１１０に記録されたアプリケーションプログラムおよびオペレーティングシステムが、初期状態のアプリケーションプログラムおよび初期状態のオペレーティングシステムと同じものか否かが判定される（Ｓ１４）。
【００６１】
ここで、プログラム記録部１１０に記録されたアプリケーションプログラムおよびオペレーティングシステムが、初期状態のアプリケーションプログラムおよび初期状態のオペレーティングシステムと同じものではないと判定されたならば（Ｓ１４、Ｎｏ）、障害判定部１４４は、プログラムに障害が起きたと判定し、ディスプレイ１３に、「プログラムに障害が起きた」旨のエラーメッセージの表示を指示する。ディスプレイ１３は、この指示を受け、エラーメッセージを表示する（Ｓ１６）。
【００６２】
そして、障害判定部１４４は、初期状態プログラム記録部１４２に記録された初期状態のプログラムを読み出して、プログラム記録部１１０に上書きする（Ｓ１８）。
【００６３】
その後、計測制御部１１２は、プログラム記録部１１０からプログラムを読み出して実行することにより、計測部１８の制御を行なう。これにより、計測制御部１１２は、被測定物２の測定を開始することになる（Ｓ２０）。
【００６４】
なお、障害検出の指示が行なわれない場合（Ｓ１２、Ｎｏ）、およびプログラム記録部１１０に記録されたアプリケーションプログラムおよびオペレーティングシステムが、初期状態のアプリケーションプログラムおよび初期状態のオペレーティングシステムと同じものであると判定された場合（Ｓ１４、Ｙｅｓ）は、計測制御部１１２により被測定物２の測定が開始される（Ｓ２０）。
【００６５】
本発明の実施形態によれば、プログラムデータ比較部１３４が、プログラム記録部１１０に記録されたプログラム（オペレーティングシステムおよびアプリケーションプログラム）から、プログラムデータ（プログラムに固有のデータとみなすことができるもの、チェックサム等）を求め、初期状態プログラムデータ記録部１３２に記録された初期状態プログラムデータ（初期状態のプログラムに固有のデータとみなすことができるもの、チェックサム等）と比較する。さらに、この比較結果に基づき、障害判定部１４４が、プログラム記録部１１０に記録されたプログラムに障害（例えば、コンピュータウィルスの感染、測定機器１の利用者の過誤によるプログラムの消去）が起きたか否かを判定する。具体的には、プログラムデータと初期状態プログラムデータとが不一致であれば、プログラムに障害が起きたと判定する。
【００６６】
このような障害検出装置１００によれば、プログラム記録部１１０に記録されたプログラムが初期状態（例えば、測定機器１の出荷時）と異ならないであろうことが期待される組み込み機器（測定機器１）におけるプログラムの障害を確実に発見できる。
【００６７】
この際、特に、コンピュータウィルスのデータベースの更新を必要としないため、プログラムの障害の発見のための労力を軽減できる。
【００６８】
なお、このような障害検出は、所定の特別なキーが押されたか、あるいは測定機器１の電源投入時にＦＤＤ１４ｃにフロッピー（登録商標）ディスクが挿入されているかを、障害検出指示部１２０により検出してから行なわせることができる。これにより、障害検出を任意の時点で実行できる。特に、ＲＡＭ１０ｂに常駐して測定機器１の動作を監視しなくてすむので、ＲＡＭ１０ｂの容量を節約できる。また、被測定物２の測定よりも前に障害検出を行なうことができるため、測定スループット等への悪影響を防止できる。
【００６９】
しかも、障害判定部１４４は、プログラムに障害が起きたと判定した場合、初期状態プログラム記録部１４２に記録された初期状態のプログラムを読み出して、プログラム記録部１１０に上書きする。これにより、プログラム記録部１１０に記録されたプログラムが初期状態と異ならないであろうことが期待される測定機器１におけるプログラムを確実に復旧できる。
【００７０】
さらに、初期状態プログラム記録部１４２は、障害判定部１４４によりプログラムに障害が起きたと判定された場合に、ネットワーク４に接続された不図示のサーバから、初期状態のプログラムをダウンロードしてきて、記録するようにしてもよい。これにより、障害が起きたと判定された場合にのみ初期状態のプログラムを記録すればよいので、障害が起きていない場合には、測定機器１における記録容量を節約できる。
【００７１】
また、上記の実施形態は、以下のようにして実現できる。ＣＰＵ、ハードディスク、メディア（フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭなど）読み取り装置を備えたコンピュータのメディア読み取り装置に、上記の各部分（例えば、プログラム記録部１１０、計測制御部１１２、障害検出指示部１２０、初期状態プログラムデータ記録部１３２、プログラムデータ比較部１３４、初期状態プログラム記録部１４２および障害判定部１４４）を実現するプログラムを記録したメディアを読み取らせて、ハードディスクにインストールする。このような方法でも、上記の機能を実現できる。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施形態にかかる測定機器１の構成を示すハードウェアブロック図である。
【図２】障害検出装置１００の構成を示す機能ブロック図である。
【図３】本発明の実施形態の動作を示すフローチャートである。
【符号の説明】
【００７３】
１  測定機器
２  被測定物
４  ネットワーク
１１０  プログラム記録部
１１２  計測制御部
１２０  障害検出指示部
１３２  初期状態プログラムデータ記録部
１３４  プログラムデータ比較部
１４２  初期状態プログラム記録部
１４４  障害判定部
【図１】
2006350955.tif 000003
【図２】
2006350955.tif 000004
【図３】
2006350955.tif 000005