(57)【要約】【課題】アプリケーションソフトウェアが異常を起こした時に本来の携帯電話機能が利用できなくなるのを防ぐことが可能なモバイル通信端末を提供する。【解決手段】動作状態監視タスク１１はフリーズ検知のために各タスクへのフリーズ監視タイマによって、動作確認要求イベント（メッセージ）を発行し、動作確認応答にてフリーズを検知する。この動作確認要求イベント（メッセージ）を受信したタスクは動作状態監視タスク１１の提供するアプリケーションインタフェース関数をコールし、動作確認応答を行う。動作状態監視タスク１１はフリーズ監視タイマがタイムアウトの場合、動作確認応答が返ってこないタスクがあるか、全てのアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５の実行カウンタの更新が１つも行われていなければ、装置フリーズ（動作不可能）状態として初期化処理を行い、モバイル通信端末１を復旧させる。【選択図】      図１
2004258936.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションソフトウェアが動作可能なモバイル通信端末であって、前記アプリケーションソフトウェアで異常が発生したことを検出する検出機能と、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させるフェイルセーフ機能とを有することを特徴とするモバイル通信端末。
【請求項２】
前記複数のアプリケーションソフトウェアは、各々対応する実行カウンタをイベント受信時に加算することを特徴とする請求項１記載のモバイル通信端末。
【請求項３】
前記検出機能は、デバイスドライバ層から上位側のソフトウェア部分のタスク群のフリーズを監視するフリーズ監視タイマであることを特徴とする請求項１または請求項２記載のモバイル通信端末。
【請求項４】
前記フェイルセーフ機能は、前記フリーズ監視タイマがタイムアウトとなりかつ動作確認要求に対する動作確認応答が返ってこないタスクがある時に初期化処理を行って自端末を復旧させることを特徴とする請求項３記載のモバイル通信端末。
【請求項５】
前記フェイルセーフ機能は、前記フリーズ監視タイマがタイムアウトとなりかつ前記実行カウンタの更新が１つも行われていない時に初期化処理を行って自端末を復旧させることを特徴とする請求項３または請求項４記載のモバイル通信端末。
【請求項６】
複数のアプリケーションソフトウェアが動作可能なモバイル通信端末のフェイルセーフ方法であって、前記モバイル通信端末側に、前記アプリケーションソフトウェアで異常が発生したことを検出するステップと、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させるステップとを有することを特徴とするフェイルセーフ方法。
【請求項７】
前記複数のアプリケーションソフトウェアは、各々対応する実行カウンタをイベント受信時に加算することを特徴とする請求項６記載のフェイルセーフ方法。
【請求項８】
前記異常が発生したことを検出するステップは、フリーズ監視タイマにてデバイスドライバ層から上位側のソフトウェア部分のタスク群のフリーズを監視することを特徴とする請求項６または請求項７記載のフェイルセーフ方法。
【請求項９】
前記装置を復旧させるステップは、前記フリーズ監視タイマがタイムアウトとなりかつ動作確認要求に対する動作確認応答が返ってこないタスクがある時に初期化処理を行って自端末を復旧させることを特徴とする請求項８記載のフェイルセーフ方法。
【請求項１０】
前記装置を復旧させるステップは、前記フリーズ監視タイマがタイムアウトとなりかつ前記実行カウンタの更新が１つも行われていない時に初期化処理を行って自端末を復旧させることを特徴とする請求項８または請求項９記載のフェイルセーフ方法。
【請求項１１】
複数のアプリケーションソフトウェアが動作可能なモバイル通信端末のフェイルセーフ方法のプログラムであって、コンピュータに、前記アプリケーションソフトウェアで異常が発生したことを検出する処理と、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させる処理とを実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はモバイル通信端末及びそれに用いるフェイルセーフ方法並びにそのプログラムに関し、特にモバイル通信端末におけるフェイルセーフ（ｆａｉｌ−ｓａｆｅ）機能に関する。
【０００２】
【従来の技術】
現在、携帯電話機やＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ）、及びＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等のモバイル通信端末においては、リアルタイムＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上に様々なアプリケーションソフトウェアが存在している。
【０００３】
例えば、携帯電話機の場合には、インタネット閲覧用のブラウザソフト、電子メール用のＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、スケジュール帳、電話帳、カメラで撮影した画像の処理ソフト、音楽再生用のソフトウェア等の様々なアプリケーションソフトウェアが存在している。
【０００４】
これらのアプリケーションソフトウェアは携帯電話機本来の通信端末機能以外に搭載されるものであり、携帯電話機における各種機能の拡充とあいまって、年々、大容量化してきている。したがって、上記のようなモバイル通信端末においても、様々な情報処理装置と同様に、アプリケーションソフトウェアの異常による障害に対する保守が必要になってきている。
【０００５】
上記の情報処理装置における保守処理としては、不慮のシステムロック発生時にハード的にリセットすることなく回復させる処理（例えば、特許文献１参照）、マスタシステムが回復した時に速やかにマスタシステム及びバックアップシステム各々のデータの不整合を解消する処理（例えば、特許文献２参照）、起動キュー、再起動キュー、割込みキューが脱落した場合でも正常な動作を継続させる処理（例えば、特許文献３参照）等がある。
【０００６】
【特許文献１】
特開２００１−１０９６３７号公報（第４頁、図４）
【特許文献２】
特開２００１−３３７９３９号公報（第９，１０頁、図１）
【特許文献３】
特開２００２−０９９４３７号公報（第５〜９頁、図１）
【０００７】
【発明が解決しようとする課題】
上述した従来のモバイル通信端末では、上述したアプリケーションソフトウェアのが異常を起こした時に、本来の携帯電話機能を利用することができないことがあり、ボタンを押しても反応せず、電源も落とせない状態になる可能性があるという問題がある。この問題については、上記の特許文献１〜３に記載の技術でも解決することはできない。
【０００８】
そこで、本発明の目的は上記の問題点を解消し、アプリケーションソフトウェアが異常を起こした時に本来の携帯電話機能が利用できなくなるのを防ぐことができるモバイル通信端末及びそれに用いるフェイルセーフ方法並びにそのプログラムを提供することにある。
【０００９】
【課題を解決するための手段】
本発明によるモバイル通信端末は、複数のアプリケーションソフトウェアが動作可能なモバイル通信端末であって、前記アプリケーションソフトウェアで異常が発生したことを検出する検出機能と、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させるフェイルセーフ機能とを備えている。
【００１０】
本発明によるフェイルセーフ方法は、複数のアプリケーションソフトウェアが動作可能なモバイル通信端末のフェイルセーフ方法であって、前記モバイル通信端末側に、前記アプリケーションソフトウェアで異常が発生したことを検出するステップと、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させるステップとを備えている。
【００１１】
本発明によるフェイルセーフ方法のプログラムは、複数のアプリケーションソフトウェアが動作可能なモバイル通信端末のフェイルセーフ方法のプログラムであって、コンピュータに、前記アプリケーションソフトウェアで異常が発生したことを検出する処理と、その異常が発生したことを検出した時に装置リセットを行って装置を復旧させる処理とを実行させている。
【００１２】
すなわち、本発明のモバイル通信端末は、リアルタイムＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上で動作しているアプリケーションソフトウェアが異常を起こした時、本来の通信端末機能が利用できなくなる動作不能ケースを回避することを特徴とする。
【００１３】
より具体的に説明すると、本発明のモバイル通信端末では、リアルタイムＯＳ上で動作しているアプリケーションソフトウェアが異常を起こしたことを検出した時に、装置リセットを行って装置を復旧させるフェイルセーフ（ｆａｉｌ−ｓａｆｅ）機能を実行するために動作状態監視タスクを実装している。
【００１４】
これによって、本発明のモバイル通信端末では、アプリケーションソフトウェアのシステムが故障を起こした際に、その故障から回復するためのソフトウェア構造が実現されるので、アプリケーションソフトが異常を起こした時に「電源ボタンも動作しない」状態となって、本来の携帯電話機能を利用することができなくなるのを防止することが可能となる。
【００１５】
【発明の実施の形態】
次に、本発明の実施例について図面を参照して説明する。図１は本発明の一実施例によるモバイル通信端末の構成を示すブロック図である。図１において、モバイル通信端末１は動作状態監視タスク１１と、ＯＳ（オペレーティングシステム）１２と、アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５と、アプリケーションインタフェース群１６と、デバイスドライバ群１７と、ハードウェア群１８とから構成されており、ＯＳ１２上ではアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５のほかに、モバイル通信端末本来の携帯電話機能が動作するようになっている。
【００１６】
動作状態監視タスク１１と、アプリケーションインタフェース群１６と、デバイスドライバ群１７とはそれぞれコンピュータ（図示せず）で実行可能なプログラムによって構成することも、またハードウェアやファームウェアで構成することも可能である。
【００１７】
動作状態監視タスク１１はフェイルセーフ（ｆａｉｌ−ｓａｆｅ）機能を実行するために実装されるタスクであり、後述する処理フローにしたがってモバイル通信端末１が動作不能の状態に陥ったことを検出した時、装置リセットを行い、装置を復旧させる。
【００１８】
オペレーティングシステム１２はモバイル通信端末１のリアルタイムＯＳである。アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５は動作状態監視タスク１１が動作監視の対象とするソフトウェアである。また、アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５としては、インタネット閲覧用のブラウザソフト、電子メール用のＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、スケジュール帳、電話帳、カメラで撮影した画像の処理ソフト、音楽再生用のソフトウェア等がある。
【００１９】
アプリケーションインタフェース群１６は動作状態監視タスク１１が動作監視の対象とするインタフェース群であり、デバイスドライバ群１７は動作状態監視タスク１１が動作監視の対象とするドライバ群である。ハードウェア群１８はモバイル通信端末本来の携帯電話機能やアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５による処理を実現するためのハードウェア構成を示している。
【００２０】
動作状態監視タスク１１はデバイスドライバ層から上位側のソフトウェア部分のタスク群のフリーズを監視し、そのタスクプライオリティはデバイスドライバ群１７よりも高位とし、ハードウェア群１８よりも低位に設定する。また、動作状態監視タスク１１が監視対象とするアプリケーションに対しては、アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５にてイベント受信時にアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５別の実行カウンタを加算する処理関数をコール（Ｃａｌｌ）する。
【００２１】
動作状態監視タスク１１は監視対象とするアプリケーションインタフェース群１６、デバイスドライバ群１７を制御するために、アプリケーションインタフェース群１６、デバイスドライバ群１７のタスクに動作確認要求イベントを発行する。これが動作監視対象タスクへの動作確認要求である。動作確認要求イベント（メッセージ）を受信したタスクは、動作確認処理関数をコールする。
【００２２】
動作状態監視タスク１１はフリーズ検知のために各タスクへのフリーズ監視タイマによって、動作確認要求イベント（メッセージ）を発行し、動作確認応答にてフリーズを検知する。この動作確認要求イベント（メッセージ）を受信したタスクは動作状態監視タスク１１の提供するアプリケーションインタフェース関数をコールし、動作確認応答を行う。
【００２３】
アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５はイベントを受信するたびに、動作状態監視タスク１１の提供するアプリケーションインタフェース関数をコールし、実行カウンタを更新する。
【００２４】
動作状態監視タスク１１はフリーズ監視タイマがタイムアウトの場合、動作確認応答が返ってこないタスクがあるか、全てのアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５の実行カウンタの更新が１つも行われていなければ、装置フリーズ（動作不可能）状態として初期化処理を行い、モバイル通信端末１を復旧させる。
【００２５】
図２は図１の動作状態監視タスク１１のタスク処理を示すフローチャートであり、図３は図１の動作状態監視タスク１１の動作監視対象のタスク処理を示すフローチャートである。これら図１〜図３を参照して本発明の一実施例によるモバイル通信端末１の動作について説明する。
【００２６】
尚、図２において、フリーズ監視タイマは監視する周期のタイムアウト時に各タスクを監視するためのタイマであり、実行カウンタは各アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５がタスク実行時にインクリメントされるタイマである。
【００２７】
また、動作確認要求は動作状態監視タスク１１からアプリケーションインタフェース層やデバイスドライバ層に要求され、動作確認応答はその動作確認要求に対するアプリケーションインタフェース層やデバイスドライバ層の応答である。
【００２８】
図３において、実行カウンタはアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５が実行されるたびにインクリメントされるカウンタであり、アプリケーションソフトウェア層に実装される。動作確認は動作確認要求された場合に動作確認応答を行い、アプリケーションインタフェース層やデバイスドライバ層に実装される。
【００２９】
動作状態監視タスク１１は動作開始時にタスクの初期化を行い（図２ステップＳ１）、イベント待ちとなる（図２ステップＳ２）。この後に、動作状態監視タスク１１はフリーズ監視タイマイベントが発生すると（図２ステップＳ３）、全てのアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５の実行カウンタの読出し処理を行う（図２ステップＳ４）。
【００３０】
さらに、動作状態監視タスク１１は監視対象の全タスクからの動作確認応答の読出し処理を行い（図２ステップＳ５）、全てのアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５の実行カウンタのいずれかが変化したかを判断する（図２ステップＳ６）。
【００３１】
動作状態監視タスク１１は実行カウンタのいずれかが変化していない場合、監視対象の全タスクから動作確認応答がきていなければ（図２ステップＳ７）、装置フリーズを検知と判断し、装置フリーズ（動作不可能）状態として初期化処理（リセット処理）を行い、モバイル通信端末１を復旧させる。
【００３２】
動作状態監視タスク１１は監視対象の全タスクから動作確認応答がきていれば（図２ステップＳ７）、監視する全タスクへ動作確認要求イベント（メッセージ）を発行し（図２ステップＳ８）、フリーズ監視タイマをセットし（図２ステップＳ９）、ステップＳ２のイベント待ちに戻る。
【００３３】
一方、動作状態監視タスク１１は実行カウンタのいずれかが変化している場合、監視対象の全タスクから動作確認応答がきていれば（図２ステップＳ１０）、監視する全タスクへ動作確認要求イベント（メッセージ）を発行し（図２ステップＳ８）、フリーズ監視タイマをセットし（図２ステップＳ９）、ステップＳ２のイベント待ちに戻る。
【００３４】
動作状態監視タスク１１は監視対象の全タスクから動作確認応答がきていなければ（図２ステップＳ１０）、現在アクティブなアプリケーションを検索する（図２ステップＳ１１）。動作状態監視タスク１１は検索したアプリケーションの実行カウンタが変化していれば（図２ステップＳ１２）、フリーズ監視タイマをセットし（図２ステップＳ９）、ステップＳ２のイベント待ちに戻る。
【００３５】
また、動作状態監視タスク１１は検索したアプリケーションの実行カウンタが変化していなければ（図２ステップＳ１２）、装置フリーズを検知と判断し、装置フリーズ（動作不可能）状態として初期化処理（リセット処理）を行い、モバイル通信端末１を復旧させる。
【００３６】
これに対して、動作状態監視タスク１１の動作監視対象は動作開始時にタスクの初期化を行い（図３ステップＳ２１）、イベント待ちとなり（図３ステップＳ２２）、実行カウンタを＋１する（図３ステップＳ２３）。
【００３７】
動作状態監視タスク１１の動作監視対象は動作確認要求イベントが発生しなければ（図３ステップＳ２４）、アプリケーション通常処理を行い（図３ステップＳ２５）、ステップＳ２２のイベント待ちに戻る。
【００３８】
また、動作状態監視タスク１１の動作監視対象は動作確認要求イベントが発生すると（図３ステップＳ２４）、動作確認応答を送信し（図３ステップＳ２６）、ステップＳ２２のイベント待ちに戻る。
【００３９】
このように、本実施例では、アプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５が異常を起こした時、「電源ボタンも動作しない」状態となり、本来の携帯電話機能を利用することができないという状態を防ぐことができる。
【００４０】
尚、本発明では、システムによってアプリケーションソフトウェア（Ａ〜Ｃ）１３〜１５が占有する時間が異なる場合でも、フリーズ監視タイマの値を変えることによって他システムでも問題なく監視動作を行うことができる。
【００４１】
【発明の効果】
以上説明したように本発明は、上述した構成及び動作とすることで、アプリケーションソフトウェアが異常を起こした時に本来の携帯電話機能が利用できなくなるのを防ぐことができるという効果が得られる。
【図面の簡単な説明】
【図１】本発明の一実施例によるモバイル通信端末の構成を示すブロック図である。
【図２】図１の動作状態監視タスクのタスク処理を示すフローチャートである。
【図３】図１の動作状態監視タスクの動作監視対象のタスク処理を示すフローチャートである。
【符号の説明】
１  モバイル通信端末
１１  動作状態監視タスク
１２  ＯＳ
１３〜１５  アプリケーションソフトウェア（Ａ〜Ｃ）
１６  アプリケーションインタフェース群
１７  デバイスドライバ群
１８  ハードウェア群
【図１】
2004258936.tif 000003
【図２】
2004258936.tif 000004
【図３】
2004258936.tif 000005