(57)【要約】【課題】  一部のハードウェアに関する故障や不具合の判定だけでなく、あらゆる故障や不具合の判定をリアルタイムで実行できる端末システムを提供する。【解決手段】  プロセッサとアプリケーションと診断ソフトウェアを備え、診断ソフトウェアによって自己システムを自動的に診断し、自己システムに異常があるときに自己復旧する端末システムと、ネットワークを通して端末システムと接続できる遠隔地に置かれた診断サーバとを備える。端末システムに診断ソフトウェアを搭載し、当該診断ソフトウェアにより、端末システムにおいて不具合が発生したことを検知し、動的に端末システムの診断処理を実行し、診断データを得る診断処理と、診断処理により得られた診断データを基に診断レポートを作成する診断レポート作成処理と、作成した診断レポートを通信手段を介して診断サーバに送る診断レポート送信処理を実行する。【選択図】図１
2007042082.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサとアプリケーションと診断ソフトウェアを備え、前記診断ソフトウェアによって自己システムを自動的に診断し、自己システムに異常があるときに自己復旧する端末システムと、ネットワークを通して前記端末システムと接続できる遠隔地に置かれた診断サーバとを備えた診断システム。
【請求項２】
プロセッサとメモリと通信手段とアプリケーションとを備えた端末システムと、通信手段を介して前記端末システムと通信できる遠隔地に置かれた診断サーバとを備えた診断システムにおいて、
前記端末システムに診断ソフトウェアを搭載し、当該診断ソフトウェアにより、
前記端末システムにおいて不具合が発生したことを検知し、動的に前記端末システムの診断処理を実行し、診断データを得る診断処理と、
前記診断処理により得られた診断データを基に診断レポートを作成する診断レポート作成処理と、
作成した前記診断レポートを前記通信手段を介して前記診断サーバに送る診断レポート送信処理を実行することを特徴とする診断システム。
【請求項３】
前記端末システムを擬人化し、一連の前記診断処理ステップを、
前記端末システムの状態を観察し、すべてが正常な状態を健康状態、一部が正常ではない状態を体調不良状態と判断する観察処理ステップと、
前記観察処理ステップにおいて前記体調不良状態と判断された場合、障害が発生している可能性がある個所に対して実際に障害が発生しているか否かを検査し、実際に障害発生を検知すれば病気状態、実際には障害発生が検知されなければ健康状態と判定する検査処理ステップと、
前記検査処理ステップにおいて前記病気状態と判断された場合、前記障害の復旧処理に必要なデータを収集する診察処理ステップとして捉える請求項１または２に記載の診断システム。
【請求項４】
前記観察処理ステップが、前記アプリケーションが関数を呼び出すごとに関数の引数やリターン値などのデータをシステム・ログとして記録し、当該記録データを解析して、端末システムが健康状態であるか体調不良状態であるかを判断するステップを含むものである請求項３に記載の診断システム。
【請求項５】
前記検査処理ステップが、前記障害が発生している可能性がある個所のリソースに関する各種パラメータをチェックすることにより、前記病気状態の判定と前記病気発症個所の判定を行なうステップを含むものである請求項３に記載の診断システム。
【請求項６】
前記診察処理ステップが、過去の復旧処理で使用した診断データを分析し、前記障害発生個所に対する前記復旧処理に必要な診断データを収集する学習ステップを備えた請求項３に記載の診断システム。
【請求項７】
前記診断処理ステップが割り込み関数として組み込まれ、前記端末システムに発生した障害がシステムクラッシュまたはシステムフリーズである場合に、当該クラッシュやフリーズの原因を究明するために必要になるメモリデータを割り込み方式によって前記メモリからダンプする処理ステップを含む請求項３に記載の診断システム。
【請求項８】
前記端末システムを擬人化し、一連の前記復旧処理ステップを、復旧処理を前記病気状態と判定した個所に対して治療を施す治療処理ステップと捉えた請求項３に記載の診断システム。
【請求項９】
端末システムにおいて、記録時のタイムスタンプ、ログ・レベル、ベンダ、モジュール、オペレーション、オブジェクト状態の諸データを含み、自己システムの診察に必要となるデータをリアルタイムで記録するログデータ収集手段を備えた請求項３に記載の診断システム。
【請求項１０】
スタック、ヒップとレジスタのデータを含み、システムがクラッシュやフリーズした際にクラッシュやフリーズの原因を究明するために必要になるメモリデータを割り込み方式によってダンプするシステムクラッシュとフリーズ時のメモリデータ（メモリダンプ）収集手段を備えた請求項３に記載の診断システム。
【請求項１１】
システムの特性（機能、モジュール、起きやすい異常と異常が起きやすい場所等）に関するデータ、システムの健康状態に関するデータを含み、自己学習によって診断に必要となる情報と知識を蓄積する診断知識学習手段を備えた請求項３に記載の診断システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末システムと診断サーバを備え、端末システム上で動作するソフトウェアの障害を診断する診断システムに関するものである。
また、本発明は、端末システム上でソフトウェアの障害を検知した場合に自動復旧せしめる復旧システムに関するものである。
【背景技術】
【０００２】
携帯電話の普及が進むにつれ、携帯電話には単なる通話機能だけではなく、テレビジョン画像の受信機能など多種多様な機能の搭載が求められている。その一方、携帯電話の新機種投入のサイクルが短くなる傾向があり開発期間の短縮が求められている。そのため、携帯電話のソフトウェア上でバグが発生するリスクが高くなっている。
通常、携帯電話に障害が発生した場合は、まず、利用者自身が携帯電話事業者のカスタマサービスに電話してサポートを受けることとなる。しかし、組み込みソフトウェアのバグに起因する障害である場合、利用者とカスタマサービス担当者との間の電話でのやり取りでは障害は回復できない。結局、電話サポートでは障害復旧ができずに携帯電話をカスタマサービスまで持ち込む必要があった。
【０００３】
カスタマサービス内にて携帯電話の組み込みソフトウェアの差し替えメンテナンスができればその場で障害復旧することが可能であるが、通常は組み込みソフトウェアの差し替えメンテナンスは高度な専門知識を必要とするために、カスタマサポート内では障害の原因を究明しないまま携帯電話メーカー内のサポート組織に取り次ぐ場合が殆どである。携帯電話メーカーではまず携帯電話に発生した障害を正確に再現する必要があり、その上で組み込みソフトウェアに潜むバグを特定しなければならない。この作業は必ずしも容易ではなく、組み込みソフトウェアのバグの特定とその除去に時間がかかることもあり得る。
【０００４】
一方、利用者が携帯電話に障害が起こったと感じてカスタマサービスに持ち込むケースは必ずしも携帯電話の組み込みソフトウェアにバグがある場合ばかりではない。例えば、利用者の誤操作によって携帯電話の設定がおかしくなったり、メモリの容量不足から携帯電話の一部機能が使えなくなったりする場合もあり得る。さらには、単なる利用者の勘違いで、障害のない携帯電話がカスタマサポートに持ち込まれるケースもあり得る。カスタマサポートでは簡単で使いやすい検査ツールがないために十分に検査しないまま安易に新しい携帯電話に交換してしまう場合もある。この場合、交換にかかる費用はメーカー負担となる場合が多く、メーカーに不要な損害が発生していた。
【０００５】
従来技術において、携帯電話事業者のカスタマサポートに持ち込まれた携帯電話の状態を即座かつ的確に判断し、携帯電話の迅速な修理・復旧を行なう携帯電話の修理サービス支援方法として特許文献１に記載された方法が知られている。特許文献１の方法は、保守情報を保存する保守情報記憶領域を記憶部に確保して保守情報を当該保守情報記憶領域に書き込んで保存しておき、カスタマサポート内において携帯電話の記憶部の保守情報記憶領域から保守情報を読み出して表示部に表示させ、サポート要員に通知するという方法である。
【０００６】
【特許文献１】特開２００４−１９４２４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記したように携帯電話には通話機能以外に種々多様な機能が搭載されているので、実際に起こる障害はソフトウェアに起因している場合が多い。しかし、特許文献１に記載された方法では、保守情報しか記録していないので、一部のハードウェアに関する故障や不具合の判定にしか利用することができない。そのため特許文献１の従来技術ではカスタマサポート・サービスとして不十分である。
また、特許文献１に記載された方法では、カスタマサポートへの持ち込みが前提となっており、ソフトウェアにバグが存在した場合、同機種の携帯電話で次々と障害が発生し、多数の携帯電話が一度にカスタマサポートに持ち込まれることも想定され、カスタマサポートで混乱が発生する可能もある。
【０００８】
上記問題点に鑑み、本発明は、一部のハードウェアに関する故障や不具合の判定だけでなく、モバイルデバイスのあらゆる故障や不具合の判定をリアルタイムで判定・診断でき、さらに、携帯電話に発生した障害を自動的に復旧することができるワイヤレスデバイスシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明のワイヤレスデバイスシステムは、プロセッサとアプリケーションと診断ソフトウェアを備え、前記診断ソフトウェアによって自己システムを自動的に診断し、自己システムに異常があるときに自己復旧する端末システムと、ネットワークを通して前記端末システムと接続できる遠隔地に置かれた診断サーバとを備えたことを特徴とする。
また、上記目的を達成するため、本発明のワイヤレスデバイスシステムは、プロセッサとメモリと通信手段とアプリケーションとを備えた端末システムと、通信手段を介して前記端末システムと通信できる遠隔地に置かれた診断サーバとを備えた診断システムにおいて、
前記端末システムに診断ソフトウェアを搭載し、当該診断ソフトウェアにより、
前記端末システムにおいて不具合が発生したことを検知し、動的に前記端末システムの診断処理を実行し、診断データを得る診断処理と、
前記診断処理により得られた診断データを基に診断レポートを作成する診断レポート作成処理と、
作成した前記診断レポートを前記通信手段を介して前記診断サーバに送る診断レポート送信処理を実行することを特徴とする。
【００１０】
上記構成により、端末システムにおいて診断機能を持たせることにより、診断処理を端末システム側で実行し、診断結果をまとめた診断レポートという形で診断サーバに送信することができる。
端末システムのログデータを診断サーバに送り、すべての診断を診断サーバで行なう従来方式に比べ、一部のハードウェアに関する故障や不具合の判定だけでなく、モバイルデバイスのあらゆる故障や不具合の判定をリアルタイムで判定・診断できる。また、端末システムから送信するデータ容量についても、ログデータすべてを送信する従来方式に比べ、診断レポートは診断結果を中心にまとめた小さな容量のものであるのでリソースの負荷が小さなものとなる。
端末システムに復旧ソフトウェアを搭載しておけば端末システムが自力で自動復旧する可能性も多くなり、従来のように利用者がカスタマサポートに連絡する必要がなく、メーカの修理窓口に持ち込む必要もなくなる。
【００１１】
なお、端末システムはシステムリソースが小さいシステムが前提とされるが、多様なシステムに適用できる。例えば、携帯電話などのワイヤレスモバイルシステム、インテリジェント家電製品、ロボット、車（カーナビゲーションシステム）、製造ラインの工作機械装置など多様なものに適用できる。
【００１２】
次に、ワイヤレスデバイスの診断処理・復旧処理を把握しやすくする工夫を説明する。それはワイヤレスデバイスを擬人化する手法である。
ワイヤレスデバイスを擬人化して障害を病気として一連の診断処理および復旧処理を実行する。例えば診断処理ステップとして観察処理ステップと検査処理ステップと診察処理ステップを備え、復旧処理ステップとして治療処理ステップを備えた、合計４つのステップに分けて擬人化する。
【００１３】
観察処理ステップは、ワイヤレスデバイスの状態を観察し、すべてが正常な状態を健康状態、一部が正常ではない状態を体調不良状態と判断する処理ステップである。例えば、組み込みアプリケーションが関数を呼び出すごとに関数の引数やリターン値などのデータをシステム・ログとして記録し、当該記録データを解析して、ワイヤレスデバイスが健康状態であるか体調不良状態であるかを判断するステップを含むものである。
【００１４】
検査処理ステップは、観察処理ステップにおいて体調不良状態と判断された場合、障害が発生している可能性がある個所に対して実際に障害が発生しているか否かを検査し、実際に障害発生を検知すれば病気状態、実際には障害発生が検知されなければ健康状態と判定する処理ステップである。例えば、障害が発生している可能性がある個所のリソースに関する各種パラメータをチェックすることにより、病気状態の判定と病気発症個所の判定を行なうステップを含むものである。
【００１５】
診察処理ステップは、検査処理ステップにおいて病気状態と判断された場合、障害の復旧処理に必要なデータを収集する処理ステップである。例えば、過去の復旧処理で使用した診断データを分析し、障害発生個所に対する復旧処理に必要な診断データを収集する学習ステップを備えたものである。
【００１６】
治療処理ステップは、復旧ソフトウェアによる組み込みアプリケーションに対する復旧処理を治療として、病気状態と判定した個所に対して治療を施す処理ステップである。例えば、システムのリセット処理（注射治療）、診断結果レポートの作成処理（カルテ記録）のステップを含むものである。
【００１７】
次に、応用レベル診断ソフトウェアはワイヤレスデバイスにおける障害発生時のタイムスタンプデータ、ログ・レベルデータ、ベンダ情報データ、モジュール状態データ、オペレーション状態データ、オブジェクト状態データ、メモリダンプデータを含む各種データに対するリアルタイムデータ収集処理ステップを含むものとする。例えば、ワイヤレスデバイスに発生した障害が、システムクラッシュまたはシステムフリーズである場合、当該クラッシュやフリーズの原因を究明するために必要になるメモリデータを割り込み方式によってメモリからダンプする処理ステップを備えたものとする。
【００１８】
なお、応用レベル復旧ソフトウェアにおいてもワイヤレスデバイスを擬人化する工夫を導入することができる。応用レベル復旧処理を治療処理ステップと擬人化し、応用レベル復旧ソフトウェアによる組み込みアプリケーションに対する応用レベル復旧処理を治療として、病気状態と判定した個所に対して治療を施すものとする。例えば、システムの再コンフィグレーション処理（外科手術治療）、システムのリセット処理（注射治療）、診断結果レポートの作成処理（カルテ記録）のステップを含むものである。
【００１９】
なお、本発明の診断システムは、端末システムにおいて、記録時のタイムスタンプ、ログ・レベル、ベンダ、モジュール、オペレーション、オブジェクト状態の諸データを含み、自己システムの診察に必要となるデータをリアルタイムで記録するログデータ収集手段を備えることが好ましい。
また、本発明の診断システムは、端末システムにおいて、スタック、ヒップとレジスタのデータを含み、システムがクラッシュやフリーズした際にクラッシュやフリーズの原因を究明するために必要になるメモリデータを割り込み方式によってダンプするシステムクラッシュとフリーズ時のメモリデータ（メモリダンプ）収集手段を備えることが好ましい。
また、本発明の診断システムは、端末システムにおいて、システムの特性（機能、モジュール、起きやすい異常と異常が起きやすい場所等）に関するデータ、システムの健康状態に関するデータを含み、自己学習によって診断に必要となる情報と知識を蓄積する診断知識学習手段を備えることが好ましい。
【発明の効果】
【００２０】
本発明のワイヤレスデバイスシステムによれば、診断機能と復旧機能をワイヤレスデバイス自身とリモートサーバに分散して持たせることにより、診断・復旧をワイヤレスデバイスが自力で行なうことができるようにして速やかな自動復旧を実現するとともに、応用レベルの診断・復旧をワイヤレスデバイスとリモートサーバの協働により行なうことによりワイヤレスデバイスのリソース負荷を小さく抑えることができる。一方、復旧処理により復旧できないレベルの障害に対しては、ワイヤレスネットワークを介したリモートでの応用レベルの復旧サービスを受けることができる。
【００２１】
また、本発明のワイヤレスデバイスシステムによれば、応用レベル診断ソフトウェアは必要が生じた時点で起動するので、障害が発生していない状態や基礎レベルの診断・復旧処理ができる状態では、不必要にワイヤレスデバイスのリソースに負荷をかけることがない。
また、本発明のワイヤレスデバイスシステムによれば、すべての診断・復旧にかかるデータをリモートサーバで一元管理できるので、多数にのぼるワイヤレスデバイスに共通する障害の診断データや復旧結果をリモートサーバ上で共有することが可能となる。
ワイヤレスデバイスを擬人化する手法を導入すれば、ワイヤレスデバイスの診断処理・復旧処理を把握しやすくなる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態について実施例により具体的に説明する。なお、本発明はこれらの実施例に限定されるものではない。
なお、診断システムは、システムリソースが小さいシステムが前提とされるが、多様なシステムに適用できる。例えば、携帯電話などのワイヤレスモバイルシステム、インテリジェント家電製品、ロボット、車（カーナビゲーションシステム）、製造ラインの工作機械装置など多様なものに適用できる。
以下の説明において、端末システムは携帯電話などのワイヤレスデバイスに限定されることはないが、以下の説明では携帯電話などのワイヤレスデバイスを想定して説明する。
【実施形態】
【００２３】
以下、本発明の実施例を図面を参照して説明する。図１は、本発明によるモバイルデバイスの診断と復旧方法を実現することができるシステムの構成を示すブロック図である。
【００２４】
図１に示す診断システムにおいて、ワイヤレスデバイス０１に診断・復旧機能を実装して、デバイスの健康状態を観察し、システムが病気になったときに診断して、必要な処置を行い、システムを正常に復旧する。診断する際に、診断サーバ０２に対して、診断データベース０３からワイヤレスネットワーク０４経由で必要な診断情報を取り寄せることもできる。
【００２５】
診断結果は、ワイヤレスネットワーク０４を通して、診断サーバ０２に報告し、診断レポートとして診断データベース０３に登録する。事業者のカスタマサポートから、この診断レポートを見ることができる。事業者のカスタマサポートは、この診断レポートをチェックして、ワイヤレスデバイス側で解決しなかったケースに対して、診断レポートに記載する情報に基づいて、解決方法を見つける。ソフトウェア上のバグであれば、メーカに対してバグ報告を行い、バグ修正を依頼する。
【００２６】
メーカが、バグ修正依頼を受けた後に、ネットワーク経由で診断データベースから詳細な診断情報データを取り寄せて、バグの原因を調べ、バグの場所を特定し、ソフトウェア上のバグを修正する。
【００２７】
図２は、ワイヤレスデバイスの診断・復旧手順の一例を示す説明図である。図２に示す例では、まず観察０５によってシステムの健康状態を常時に把握し、システムの病気をキャッチする。システムの病気を認識したら、その病気に対して、検査０６においてさらに詳細なデータを調べて、病気の場所を特定し、診断用データを集める。場合によって、この検査段階で、特定した病気の場所に対して、専用の検査プログラムを動かして、試験データを収集する。次に、診察０７において、集めた診断用データを分析して、病気になった原因を解明する。最後に、処置０８において、解明した病気の原因に対して、病気の治療に着手する。
【００２８】
システムの病気の治療方法の例としては、システムのリブート（注射）、システムパラメータの更正やプロセス実行優先度の調整、システム設定の部分的訂正または全部再構成（手術）、ソフトウェア上のバグフィックス報告（処方）がある。
【００２９】
図３は、診断例を示す説明図である。図３は、各診断例に対して、病気１１、原因１２と処置１３に分けてその診断内容を示す。第１番目の例のメモリが足りない１４の病気に対して、診断した結果として使用後メモリをリリースせず１５がわかり、システム・リブート１６という処置を取れば、メモリが足りなくなった病気を治してシステムが復旧する。
【００３０】
図３に示している第２番目の例では、よく起きるキーがきかない１７という病気に対して、診断した結果がキーを押したイベントを拾えない１８という原因であり、これに対してキー押しのイベントを拾うプロセスの実行優先度を調整して、キーを押したときに即時に実行するようにプロセス優先度調整１９という処置を取れば、次にキーを押すときにキーがきくようになる。
【００３１】
図３に示している第３番目の例では、利用者をよく困らせるメール送信できない２０という病気に関して、システムにおいて、メール関連のパラメータを調べ、メール設定がおかしい２１とわかり、その設定を正常値に戻すというメール設定直し２２処置を取ってメールを送れるようになる。メール設定の正常値は、ローカルに保存している場合にその値を使い、ない場合は診断サーバから取り寄せてその値を使用する。
【００３２】
利用者によくイライラさせる通信障害という問題に対して、システムの病気なのか、電波が届かないのであるのかのいずれで明確な情報を利用者に示すべきである。図３に示している第４番目の例では、通信障害２３に対して、本発明の診断手法を用いて、電波が弱い２４という原因がすぐにわかるので、利用者に場所移動指示２５を出せば、利用者が電波のよい場所へ移動し、イライラ感がなくなる。
【００３３】
ワイヤレスデバイス上で、システムクラッシュというソフトウェアバグ（病気）がよくある。システムクラッシュの再現が難しくて、クラッシュの原因が見つかりにくいのが現状である。図３に示している第５番目の例では、このシステムクラッシュ２６が起きたときに、本発明の診断手法を利用すれば、たとえばNULLポインタである２７クラッシュの原因がわかり、また、クラッシュが発生した場所も特定できる。この結果に基づいて、ソフトウェア上のバグフィックス報告２８を診断サーバに送り、メーカがすぐにそのバグを治せる。
【００３４】
また、ワイヤレスデバイス上で、システムフリーズというソフトウェアバグ（病気）もよくある。システムクラッシュと同様にシステムフリーズの再現が難しくて、フリーズの原因が見つかることが困難である。図３に示している第６番目の例では、このシステムフリーズ２９が起きたときに、本発明の診断手法を利用すれば、たとえば無限ループである３０フリーズの原因がわかり、また、フリーズが発生した場所も特定できる。この結果に基づいて、ソフトウェア上のバグフィックス報告３１を診断サーバに送り、メーカが直ちにそのバグを治せる。
【実施例】
【００３５】
図４は、上記の診断・復旧機能を実装する一例を示すブロック図である。図４に示している例では、本発明の診断・復旧を機能するワイヤレスデバイスに、診断エンジン３５、診断アプリケーション３６、診断情報３７と通信部３８を実装する。
【００３６】
診断エンジンが、かかりつけ医師としてシステムに常駐し、システムの健康状態を監視する。監視するデータとして、システムパラメータ、システムログとシステム健康データがある。診断エンジンが、システム健康データによってシステムの病気の有無を判断する。システムが病気であることを認識したら、診断アプリケーションを起動する。
【００３７】
診断アプリケーションが、システムにかかった病気を治療する専門医として、認識した病気の治療にあたる。まず、病気の原因を究明するために、詳細な検査を行う。検査として、関連のシステムパラメータとシステムログを調べて、治療に必要となる情報データ、例えば病気になった場所を特定する関数の情報を集める。また、必要であれば、検査用データを準備して検査プログラムを動かし、病気になった場所を絞り込み、病気の原因例えシステムクラッシュになったNULLポインタを特定する診断用データを収集する。検査によって取得した診断用データが、診断情報３７に格納する。
【００３８】
診断アプリケーションが、検査によって、病気になった場所と病気の原因を特定でき、対応処置を取り、システムを復旧させる。対応処置が、専門医の知識と経験によって決められる。例えば、メモリが足りなくなったら、システムをリブートしてすべてのリリースしなかったメモリがリリースされ、問題が解決される。システムがフリーズしたときに、その原因が無限ループであることがわかったら、特定した場所を診断レポートに記録して、メーカに報告すれば、メーカがすぐにソフトウェア上のバグを直す。
【００３９】
図５は、ワイヤレスデバイスの記憶領域に保存される上記の診断情報の一例を示す説明図である。ワイヤレスデバイスの診断に必要となる情報が、システムパラメータ４０、システムログ４１とシステム健康データ４２がある。上記の検査によって、システムが病気になったときにこれらの情報データから、病気の場所と原因を特定する診断用データ４３を作成する。
【００４０】
図６は、これまでの実施例の中に記載してあったシステムクラッシュの診断実施例を示す説明図である。システムクラッシュ時の情報を収集するために、診断プログラムを割込処理関数の中に組み込める。この診断プログラムによって診断に必要なメモリデータをダンプしてフラッシュに保存する。図６に示す例では、システムクラッシュ発生４５の後に、割込処理関数呼び出し４６によって、メモリダンプ４７を行い、システムリブート４８の後に、ダンプデータ解析４９によって、クラッシュの場所と原因が解明される。
【００４１】
図７は、これまでの実施例の中に記載してあったシステムフリーズの診断実施例を示す説明図である。システムフリーズ時の情報を収集するために、診断プログラムを割込処理関数の中に組み込める。この診断プログラムによって診断に必要なメモリデータをダンプしてフラッシュに保存する。図７に示す例では、システムフリーズ発生５０の後に、ウォッチドッグタイマ作動５１で割込処理関数呼出し５２、メモリダンプ５３を行い、システムリブート５４の後に、ダンプデータ解析５５によって、フリーズの場所と原因が解明される。
【００４２】
図８は、システムログ実施の一例を示す説明図である。システムログは、システムの中であらゆるところから発生し、時間順で出力される。ログの量も多く、診断に必要のない情報が多く含まれているため、そのまま診断に利用することが困難である。図８に示す例では、まず、発生したログ６０を分類６１して、診断に必要のないログデータを無視し、必要なログデータのみをデータベースＤＢ６３に登録６２する。データベースにあるログデータが、キーワード例えば健康レベル、ステータス、モジュール、パラメータ、イベント、ログ時間で検索できる。システムの病気が認識されたときに、データベースに登録しているログデータを検索６４して、そのデータに対して解析６５を行い、診断用データ６６を作成する。
【００４３】
図９は、ネットワークを通した診断実施の一例を示す説明図である。図９に示す例では、診断にワイヤレスデバイス側のもつ情報が不十分であるときに診断エンジン７０が診断サーバ７１に対してリクエスト７２を送る。リクエストには、デバイス情報のほかにシステムの病気に関する情報データ（病気の症状）が含まれる。診断サーバが、受信したリクエストに対して、病気の症状を見て、データベースに必要な診断用データと対応の診断アプリケーションを検索し、レスポンス７３メッセージに載せて診断エンジンに送る。通信方式としては、ＯＴＡ（Over-the-air）／ＳＭＳ（Short message services）／ＤＴＭＦ（Dual Tone Multiple Frequencies）７４がある。通常のＩＰコネクションがあれば、ＯＴＡで、それがなければ、ＳＭＳで、ＳＭＳも使えなければ、ＤＴＭＦを利用してデータ伝送を行う。ＳＭＳとＤＴＭＦの場合は、少量なデータ伝送しかできないため、通信設定やシステムのパラメータなどの限定したデータ伝送を行う。ＤＴＭＦ方式は、音声通信に問題がなければ利用でき、通信のできない場合に活用できる有効な手段である。
【図面の簡単な説明】
【００４４】
【図１】本発明によるワイヤレスデバイスの診断と復旧方法を実現することができる診断システムの構成を示すブロック図である。
【図２】ワイヤレスデバイスの診断・復旧手順の一例を示す説明図である。
【図３】ワイヤレスデバイスを診断する例を示す説明図である。
【図４】ワイヤレスデバイスに診断・復旧機能を実装する一例を示すブロック図である。
【図５】ワイヤレスデバイスの記憶領域に保存される診断情報の一例を示す説明図である。
【図６】システムクラッシュ診断実施の一例を示す説明図である。
【図７】システムクフリーズ診断実施の一例を示す説明図である。
【図８】システムログ実施の一例を示す説明図である。
【図９】ネットワークを通した診断実施の一例を示す説明図である。
【符号の説明】
【００４５】
０１  ワイヤレスデバイス（携帯電話、携帯端末）
０２  診断サーバ
０３  診断データベース
０４  ワイヤレスネットワーク
３５  診断エンジン
３６  診断アプリケーション
３７  診断情報保存部
３８  通信部
４０  システムパラメータ保存部
４１  システムログ保存部
４２  システム健康データ保存部
４３  診断用データ保存部
７０  診断エンジン
７１  診断サーバ
７２  リクエスト・メッセージ
７３  レスポンス・メッセージ
７４  通信媒体
【図１】
2007042082.tif 000003
【図２】
2007042082.tif 000004
【図３】
2007042082.tif 000005
【図４】
2007042082.tif 000006
【図５】
2007042082.tif 000007
【図６】
2007042082.tif 000008
【図７】
2007042082.tif 000009
【図８】
2007042082.tif 000010
【図９】
2007042082.tif 000011