(57)【特許請求の範囲】
【請求項１】
複数のタスクプログラムを有する携帯情報端末装置において、
少なくとも１つのタスクプログラムによって構成され、複数のタスクプログラム間の競合を制御する競合制御部であって、複数のタスクプログラムの処理間における相互の競合を判定する競合判定部、該競合判定部による判定結果に基づいて問い合わせを行ったプログラムの処理及び開始している処理を有するプログラムについての動作を指定する動作指定部、及び、該動作指定部で指定された動作を、前記問い合わせを行ったプログラム及び既に開始しているプログラムに通知する動作通知部を有する競合制御部を備え、
各タスクプログラムは、自身の処理の開始に際して前記競合制御部に開始の可否の問い合わせを行い、該問い合わせを行ったプログラム及び既に処理を開始しているプログラムは夫々、前記競合制御部からの指定に基づいて、その状態を遷移させ、
前記動作指定部の指定する動作は、前記問い合わせを行ったタスクプログラムの処理と、前記既に処理を開始しているプログラムとを対応させて指示を記憶したテーブルによりに決定され、前記動作指定部が、前記問い合わせを行ったタスクに指定する動作には、許可、保留、及び、破棄のうち少なくとも１つが含まれることを特徴とする携帯情報端末装置。
【請求項２】
前記動作指定部が、前記既に処理を開始しているタスクプログラムに指定する動作には、継続、終了、中断、及び開始のうち少なくとも１つが含まれる請求項１に記載の携帯情報端末装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、携帯情報端末装置に関し、特に詳しくは複数のタスク間に発生する競合を制御する機能を有する携帯情報端末装置に関する。
【０００２】
【従来の技術】
携帯電話機等の携帯情報端末は、今日では広く普及しており、日常生活に欠かせないものとなっている。携帯情報端末は、電話番号を入力して発信をするタスクや、基地局からの信号を受信して着信の制御を行うタスクなど、複数のタスクプログラムによって、その全体としての機能が構成される。それらタスクには、直接通話に関する処理を行うものではない、スケジュールアラームや低電圧アラームなども含まれる。
【０００３】
タスクには、ユーザによるキー入力で処理を開始するもの、基地局からの信号によって処理を開始するもの、設定された時間になると自動的に処理を開始するものなどがあり、これらの動作タイミングはそれぞれ独立である。また、各タスクは、表示部に画面を表示する機能や、音を鳴らす機能などの、共通の下位機能を使用する。このため、複数のタスクが、同時に同じ下位機能を使用しようとする競合がしばしば発生する。競合を回避するには、各タスクが他のタスクの状態を認識する必要がある。下位機能を使用しようとするタスクは、他のタスクの状態を認識し、タスクが競合するときには自身の開始を遅らせることで、競合は回避される。
【０００４】
【発明が解決しようとする課題】
しかし、上記従来の方法では、全てのタスクのプログラム中に、自身が本来行う制御のプログラムとは別に、競合回避のためのプログラム部分が必要となり、各タスクのプログラムサイズが大きくなるという問題があった。また、タスク中に新たな処理の追加を行うと、競合の内容に変更が生じ、全てのタスクを修正する必要があり、その修正作業が煩雑となる。
【０００５】
本発明は、上記問題点を解決し、簡易にタスクの競合を回避することができる携帯情報端末装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明の携帯情報端末装置は、複数のタスクプログラムを有する携帯情報端末装置において、複数のタスクプログラム間の競合を制御する競合制御部を備え、各タスクプログラムは、自身の起動に際して前記競合制御部に起動の可否の問い合わせを行い、該問い合わせを行ったプログラム及び既に開始しているプログラムは夫々、前記競合制御部からの指定に基づいて、その状態を遷移させることを特徴とする。
【０００７】
本発明の携帯情報端末では、競合制御部が、複数のタスクプログラム間の競合を一元的に管理することによって競合を回避する。このため、競合回避のプログラム部分を、全てのタスクプログラム中に設ける必要はない。また、一部のプログラムに変更のある場合には、競合制御部の内容を修正することで対応可能となる。更に、新たに開始するプログラムと、既に開始しているプログラムの何れを優先させるかは、競合制御部の指定により決定するため、優先順位の変更を簡易に行うことができる。
【０００８】
本発明の携帯情報端末装置では、前記競合制御部は、少なくとも１つのタスクプログラムによって構成されることが好ましい。
ハードウェアとして構成するのではなく、ソフトウェアとして構成すれば、変更や追加がより簡易に行える。
【０００９】
また、本発明の携帯情報端末装置では、前記競合制御部は、複数のタスクプログラム間における相互の競合を判定する競合判定部、該競合判定部による判定結果に基づいて前記問い合わせを行ったプログラム及び前記開始しているプログラムについての動作を指定する動作指定部、及び、該動作指定部で指定された動作を、前記問い合わせを行ったプログラム及び既に開始しているプログラムに通知する動作通知部を有することが好ましい。
【００１０】
本発明の携帯情報端末装置では、前記動作指示部の指定する動作は、前記問い合わせを行ったタスクプログラムの処理と、前記既に処理を開始しているプログラムとを対応させて指示を記憶したテーブルにより決定されることが好ましい。この場合、優先順位の変更等は、テーブル値を変更するだけでよい。
【００１１】
更に、本発明の携帯情報端末装置では、前記動作指示部が、前記問い合わせを行ったタスクプログラムに指定する動作には、許可、保留、及び、破棄のうち少なくとも１つが含まれることが好ましい。また、前記動作指示部が、前記既に開始しているタスクプログラムに指定する動作には、継続、終了、中断、及び開始のうち少なくとも１つが含まれることも好ましい。
【００１２】
【発明の実施の形態】
以下、図面を参照し、本発明の実施形態例に基づいて、本発明を詳細に説明する。図１は、本発明の一実施形態例の携帯情報端末を構成する携帯電話機を機能ブロック図として示している。携帯電話機は、複数のタスク１０と１つの競合マネージャ２０とを備える。競合マネージャ２０は、競合判定部２１と、動作指定部２２と、動作通知部２３と、現在状態データ２４、競合判定データ２５、及び、動作指示データ２６を記憶する記憶部２７とを有する。
【００１３】
タスク１０は、発信を行うタスク、着信を行うタスク、及び、スケジュールアラームを行うタスクなど、それぞれが所定の役割を与えられ、携帯電話機を制御する。これらのタスク１０は、その処理に対応する下位機能を使用する。タスク１０は、ユーザによるボタン操作や、着信時の呼び出し信号などユーザの操作とは非同期のイベントなど、さまざまなタイミングでその実行が開始される。タスク１０は、自身の開始時及び終了時に、競合タスクを指定して競合マネージャ２０に問い合わせを行う。
【００１４】
競合マネージャ２０は、タスク１０から問い合わせを受けると、問い合わせを受けた際に動作中の他のタスクと問い合わせを行ったタスクの関係から競合の有無の判定を行い、問い合わせを行ったタスク１０には開始の可否を通知し、他のタスク１０には、所定の動作指示を行う。開始の可否及び動作指示は、問い合わせタスクと、競合タスクの関係によって決定される。競合マネージャが、開始の可否及び動作指示を指定することでタスク間の競合は回避される。
【００１５】
以下、本実施形態例の動作の説明では、問い合わせタスク１０として、通話処理を行う通話タスク、通話を終了して待ち受けに戻るまでの処理を行う終話タスク、着信の信号を受けて着信音を鳴らす処理を行う着信タスク、通話を始めるための発信を行う発信タスク、スケジュール処理を行うスケジュール通知タスク、及び、電池の容量が少なくなってきたことを通知する低電圧アラームタスクの６つのタスクを例として挙げる。
【００１６】
競合マネージャ２０では、競合判定部２１が、タスクからの問い合わせを受け、現在状態データ２４と競合判定データ２５とを参照し、競合判定結果を得る。動作指定部２２は、競合判定部２１の処理後に、現在状態データ２４と動作指示データ２５とを参照し、動作指示結果を得る。動作通知部２３は、競合判定部２１と動作指定部２２の結果を、その結果通知の対象となるタスクに通知する。
【００１７】
現在状態データ２４の一例を表１に示す。
【表１】
0004058752.tif 000002
現在状態データ２４は、現在の各タスクの処理の状態を示している。競合マネージャ２０は、タスク１０から競合タスクを指定した問い合わせを受けると、現在状態データ２４を参照してその競合タスクの状態を調べる。
【００１８】
現在状態データ２４は、それぞれ活性、非活性、中断、及び、保留の４つのうちのいずれかの状態をとる。活性とは、処理が開始している状態を表し、非活性とは、処理が開始していない状態を表す。中断とは、活性中に一時的に処理を中断している状態を表し、保留とは、開始待ちの状態を表す。表１に示す状態は、着信タスクのみが活性であり、スケジュール通知タスクは保留、その他のタスクは非活性の状態である。
【００１９】
競合判定データ２５の一例を表２に示す。
【表２】
0004058752.tif 000003
表中の各項目は、問い合わせを行ったタスクに与えられるべき動作内容を示している。
【００２０】
競合マネージャ２０は、タスクから問い合わせが発生した際に、競合判定データ２５に示すテーブルを参照して、問い合わせを行ったタスクに通知する指示を指定する。指示の内容は、許可、破棄、保留である。許可は、競合要因がないため、問い合わせを行ったタスクの開始を許可することを表す。破棄は、競合状態となるためそのタスクの開始を許可しないことを表し、また、保留は、一時的に保留することを表す。
【００２１】
例えば、通話タスクが、通話の処理を開始しようとし、問い合わせを行う例で説明する。表２では、問い合わせタスク「通話」に注目したとき、競合タスクである「通話」の欄を見ると「破棄」とあるので、「通話」がすでに開始していたときには、新たな通話タスクはその開始が破棄される。同様に、競合タスク「終話」に対しては破棄を、「着信」に対しては許可を、「発信」に対しては破棄を、「スケジュールアラーム」に対しては許可を、「低電圧」に対しては許可を、問い合わせを行ったタスクに指示する。
【００２２】
動作指示データの一例を表３に示す。
【表３】
0004058752.tif 000004
表中の各項目は、問い合わせが発生した際に動作中などの競合タスクに与えられるべき動作指示の内容を示している。
【００２３】
競合マネージャ２０は、タスクから問い合わせが発生した際に、動作指示データ２６に示すテーブルを参照して、競合タスクに与える動作を指定する。動作の内容は、開始、終了、中断、再開、及び継続の５つである。開始とは、該当するタスクに開始指示を行うことを表し、終了とは、該当するタスクに終了指示を行うことを表す。中断とは、該当するタスクに中断指示を行うことを表し、再開とは、該当するタスクに再開指示を行うことを表し、継続とは、現在の状態を継続させ、動作指示は行わないことを表す。
【００２４】
例えば問い合わせタスク「低電圧アラーム」に注目したとき、競合タスク「スケジュール通知」の欄を見ると、「終了」である。低電圧アラームタスクが自身の処理を開始しようとし、問い合わせを行うと、可否の判定の後に、表３に示すテーブルに従い、スケジュール通知タスクが実行中であった場合には、そのスケジュール通知タスクに終了の指示が出されることになる。
【００２５】
図２は、各タスクのとる状態の状態遷移図を示している。各タスクの現在状態データ２４に示す状態は、競合判定結果及び動作指示結果により、以下に示すルールに従ってその状態が遷移する。競合マネージャ２０に問い合わせを行ったタスクは、はじめ非活性の状態であったものが、判定結果が許可であった場合には、その状態が活性へ遷移する。また、判定結果が保留である場合には、その状態が保留へ、判定結果が破棄である場合には、その状態が再び非活性へと、その状態が遷移する。
【００２６】
動作指定部２２で、継続以外の動作を指定されたタスクの処理は、指定された動作指示が開始であれば、保留から活性の状態へ、動作指示が中断であれば、活性から中断の状態へ、動作指示が再開であれば、中断から活性の状態へ、動作指示が終了であれば、保留又は中断又は活性の何れかから非活性の状態へ、その状態が遷移される。
【００２７】
図３は、上記実施形態例のタスク競合制御の手順を示している。はじめに、競合マネージャ２０は、タスク１０の開始及び終了時に、競合タスクを指定した問い合わせを受ける（ステップＳ１）。競合判定部２１は、現在状態データ２４を参照し、現在の状態が非活性以外のものを抽出する（ステップＳ２）。ステップＳ２でタスクが抽出されない場合は、タスク間の競合がなく、ステップＳ９へ進む（ステップＳ３）。競合がある場合には、抽出したタスクを競合タスクとして、問い合わせを行ったタスクを問い合わせタスクとして、表２に示す競合判定データ２５を検索する（ステップＳ４）。
【００２８】
競合判定部２１は、競合判定データ２５を検索して判定結果を得る。ステップＳ２で抽出したタスクが複数あり、得られた判定結果が複数存在し、かつ、その判定結果が全て同一でない場合には、以下の優先順位で判定結果を判断する。
破棄＞保留＞許可
判定結果が得られると、競合判定部２１の処理は終了する。
【００２９】
動作指定部２２は、再び現在状態データ２４を参照し、現在の状態が非活性以外の状態にあるものを抽出する（ステップＳ５）。抽出したタスクを競合タスクとして、問い合わせを行ったタスクを問い合わせタスクとして、表３に示す動作指示データ２５を検索する（ステップＳ６）。動作指示データ２５を検索して、ステップＳ５で抽出したタスクの全てに与える動作指示を得る。動作指示が得られると、動作指定部２２の処理は終了する。
【００３０】
動作通知部２３は、ステップＳ４で得られた判定結果を、問い合わせタスクに、ステップＳ５及びＳ６で得られた動作指示を通知する（ステップＳ７）。動作通知部２３から通知を受けた各タスクは、その通知内容に従って、動作する。
【００３１】
本実施形態例の携帯情報端末では、競合マネージャ２０が、タスクの競合状態を一元的に制御する。このため、各タスクは、自身に競合回避のためのプログラム部分を持つ必要はなく、自身の起動に際して競合マネージャ２０に問い合わせを行うプログラム部分を持つことで足りる。
【００３２】
また、競合の制御は、競合判定データ２５及び動作指示データ２６に示すテーブルにより定義される。このため、競合の仕様に変更がある場合、又は、新た場タスクの追加がある場合であっても、これらのテーブル値を変更するだけでよく、簡易に競合を回避することができる。
【００３３】
更に、本実施形態例の携帯情報端末は、競合状態となるタスクに与える動作指示を、問い合わせを行うタスク毎に設定できる。このため、優先順位の低いタスクは、その実行が必要でないと判断されるときには、終了させることもできる。
【００３４】
以上、本発明をその好適な実施形態例に基づいて説明したが、本発明の携帯情報端末装置は、上記実施形態例にのみ限定されるものでなく、上記実施形態例の構成から種々の修正及び変更を施した携帯情報端末装置も、本発明の範囲に含まれる。例えば、表２及び表３に示した競合判定データ及び動作指示データは、１つの例にすぎず、競合の仕方や優先順位などを考慮し、任意に設定することができる。
【００３５】
【発明の効果】
以上説明したように、本発明の携帯情報端末装置では、競合マネージャが各タスクの状態を一元管理し、タスクからの問い合わせが発生した際に、競合するタスク間の関係を基に動作を制御することで、競合を回避する。また、競合判定データ及び動作指示データを適切に設定することで、現在処理を行っているタスクを中断、又は終了させ、より他のタスクを優先して実行することもできる。
【図面の簡単な説明】
【図１】本発明の一実施形態例の携帯情報端末装置の機能を示すブロック図。
【図２】タスクの状態遷移図。
【図３】本発明の一実施形態例の携帯情報端末装置の競合マネージャの処理の流れを示すフローチャート。
【符号の説明】
１０：タスク
２０：競合マネージャ
２１：競合判定部
２２：動作指定部
２３：動作通知部
２４：現在状態データ
２５：競合判定データ
２６：動作指示データ
２７：記憶部
【図１】
0004058752.tif 000005
【図２】
0004058752.tif 000006
【図３】
0004058752.tif 000007