(57)【要約】【課題】演算能力を有効に活用して他のモバイル端末と並列処理を実行することで作業や業務の効率を改善する。【解決手段】モバイル端末１０−１は、クレードル１２−１を介して電力線１と接続し、通信部３５により電力線を介して接続される他のモバイル端末と通信する。端末稼働確認部２２ａは、通信が可能な他のモバイル端末の稼働状況を確認する。担当振り分け部２２ｄは、端末稼働確認部２２ａによって稼働可能であると確認された他のモバイル端末との間で処理の担当を振り分ける。並列処理制御部２２は、担当振り分け部２２ｄにより振り分けられた処理を他のモバイル端末に、通信部３５により通信しながら実行させる。【選択図】      図２
2008191787.tif 000002
【特許請求の範囲】
【請求項１】
電力線と接続するための接続手段と、
前記接続手段によって接続された電力線を介して他のモバイル端末と通信する通信手段と、
前記通信手段により通信が可能な他のモバイル端末の稼働状況を確認する稼働確認手段と、
前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末との間で振り分けられる処理を前記他のモバイル端末と前記通信手段により通信しながら実行する並列処理実行手段と
を具備したことを特徴とするモバイル端末。
【請求項２】
前記接続手段は、ＰＬＣ（Power Line Communications）モデムが内蔵されたクレードルを介して前記電力線と接続することを特徴とする請求項１記載のモバイル端末。
【請求項３】
複数種類のモバイル端末の性能を示すデータを管理するリソース管理手段と、
自端末と前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末の中から、前記リソース管理手段によって管理されたデータをもとに親端末を選定する親端末選定手段と、
前記親端末選定手段によって親端末と選定された場合に、前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末において実行させる処理の振り分けを行う振り分け手段と
をさらに具備したことを特徴とする請求項１記載のモバイル端末。
【請求項４】
前記振り分け手段は、前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末の数に変動があった場合に、再度、処理の振り分けを行うことを特徴とする請求項３記載のモバイル端末。
【請求項５】
前記並列処理実行手段により実行された処理の処理結果を、前記電力線を介して接続された情報処理装置に送信して格納させることを特徴とする請求項１記載のモバイル端末。
【請求項６】
他のモバイル端末と無線により通信を行う無線通信手段をさらに具備し、
前記稼働確認手段は、前記無線通信手段により通信が可能な他のモバイル端末の稼働状況を確認し、
前記並列処理実行手段は、前記稼働確認手段によって稼働可能であると確認された前記無線通信手段により接続された前記他のモバイル端末と通信しながら処理を実行することを特徴とする請求項１記載のモバイル端末。
【請求項７】
電力線と接続されるコンピュータを、
前記電力線を介して他のモバイル端末と通信する通信手段と、
前記通信手段により通信が可能な他のモバイル端末の稼働状況を確認する稼働確認手段と、
前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末との間で処理の担当を振り分ける振り分け手段と、
前記振り分け手段により振り分けられた処理を前記他のモバイル端末と前記通信手段により通信しながら実行する処理実行手段として機能させるための並列処理制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話機などのモバイル端末、同モバイル端末において実行される並列処理制御プログラムに関する。
【背景技術】
【０００２】
近年では、携帯電話機に代表されるモバイル端末を大部分の人が所有する状況となっている。このため、家庭やオフィスなどにおいては数台〜数十台数のモバイル端末が存在していることになる。携帯電話機は、常時、使用されるものではないため、ユーザの近辺に放置されていたり、クレードルに載置された状態（充電中の状態）で存在している。
【０００３】
携帯電話機は、演算能力が飛躍的に向上しているが、基本的にスタンドアロンで使用される端末であるため、夜間や休息時間帯などの未使用時には演算能力が活用されていない。
【０００４】
従来では、端末装置とデータ処理装置とを無線通信網を介して接続し、簡便な方法で分散処理を実行する分散処理システムが考えられている（特許文献１）。特許文献１に記載された分散処理システムにおいて、データ処理装置は、存在通知パケットを常時発信している。端末装置は、データ処理装置と無線通信が可能である範囲内に移動したときに存在通知パケットを受信して、データ処理装置の存在を確認する。次に、端末装置は、データ処理装置に対して認証及びアソシエーションを要求する。そして、ユーザによるデータ処理要求に基づいて、データ処理装置に対して分散処理を要求する。データ処理装置は、予測ＴＡＴを算出して要求ＴＡＴと比較することにより、要求された分散処理が実行可能か否かを判断する。実行可能とされたときには、端末装置によって要求された分散処理が開始される。
【０００５】
また従来では、ネットワーク上で密結合されたＣＰＵ群を有効に利用して大規模な処理を少ない負荷で行うことができるようにする分散処理システムが考えられている（特許文献２）。特許文献２に記載された分散処理システムは、大規模ジョブを複数の小ジョブ＃１〜＃ｎに分割するジョブ分割部と、分割された複数の小ジョブ＃１〜＃ｎのうち未処理のジョブを、各端末のうちジョブ取得要求を行った端末に対して与えるジョブ送信部とを備え、大規模ジョブを複数の小ジョブ＃１〜＃ｎに分割してそれぞれを複数の端末に配信して分散実行させ、それぞれの回答を各端末からサーバに返すようにすることにより、大規模ジョブの処理を少ない計算負荷で実行することができるようにする。
【特許文献１】特開２００５−２０８８３４号公報
【特許文献２】特開２０００−２４２６１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来、携帯電話機などのモバイル端末は、スタンドアロンタイプの端末であるため、音声による通話や電子メールの送受信などの本来の機能を実行する以外では演算能力が活用されていなかった。
【０００７】
本発明は前述した事情に考慮してなされたもので、その目的は、演算能力を有効に活用して他のモバイル端末と並列処理を実行することで作業や業務の効率を改善することが可能なモバイル端末、並列処理制御プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、電力線と接続するための接続手段と、前記接続手段によって接続された電力線を介して他のモバイル端末と通信する通信手段と、前記通信手段により通信が可能な他のモバイル端末の稼働状況を確認する稼働確認手段と、前記稼働確認手段によって稼働可能であると確認された前記他のモバイル端末との間で処理の担当を振り分ける振り分け手段と、前記振り分け手段により振り分けられた処理を前記他のモバイル端末と前記通信手段により通信しながら実行する処理実行手段とを具備したことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、モバイル端末が電力線と接続される状態、例えば未使用時にクレードルに載置して充電を行っているような状態において、電力線を介して接続される他のモバイル端末と共に並列処理を実行するので、演算能力を有効に活用して作業や業務の効率を改善することが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して本発明の実施の形態について説明する。  
図１は、本実施形態におけるシステムの構成を示すブロック図である。図１に示すシステムは、例えば家庭内やオフィス内などの限られた範囲内で構築されるもので、電力線１を介して複数のモバイル端末１０（１０−１，１０−２，１０−３，１０−４）が接続され、電力線搬送通信（ＰＬＣ（Power Line Communications））によって相互に通信することができる。モバイル端末１０としては、例えば携帯電話機が用いられるものとして説明する。
【００１１】
図１に示すモバイル端末１０−１，１０−２，１０−３は、それぞれに対応するクレードル１２−１，１２−２，１２−３を介して、電力線１と接続される。通常、モバイル端末１０−１，１０−２，１０−３は、内蔵されたバッテリに充電をする場合に、クレードル１２−１，１２−２，１２−３に装着される。クレードル１２−１，１２−２，１２−３は、電力線１と接続されたコンセントにプラグを差し込むことで電力線１と接続される。クレードル１２−１，１２−２，１２−３には、電力線１を介して通信をするためのＰＬＣモデムが設けられており、充電中に電力線１を介して他のモバイル端末と通信することができる。本実施形態では、複数のモバイル端末１０の間で協働して、それぞれに振り分けられた処理を並列（分散）して実行することができる。
【００１２】
モバイル端末１０−４は、電力線１を介して通信をするためのＰＬＣモデムが内蔵されている。従って、モバイル端末１０−４は、クレードル１２を介さないで、自端末に設けられたコネクタ（図示せず）に接続された専用のケーブルをコンセントに接続することにより、電力線１を介した通信をすることができる。
【００１３】
また、本システムでは、パーソナルコンピュータ１３やＰＤＡ（personal digital assistant）１５などの情報処理装置が、それぞれに対応するＰＬＣモデム１４，１６を介して電力線１と接続されている。複数のモバイル端末１０は、パーソナルコンピュータ１３及びＰＤＡ１５とＰＬＣによって相互に通信することができる。
【００１４】
図２は、モバイル端末１０−１の機能構成を示すブロック図である。なお、他のモバイル端末１０−２，…，１０−ｎについては、モバイル端末１０−１と同様の機能が設けられ、相互に電力線１を介して通信することが可能であるものとして詳細な説明を省略する。
【００１５】
モバイル端末１０−１は、無線通信により基地局１７を介して、携帯電話機網、インターネットなどを含むネットワーク１８と接続される。ネットワーク１８には、複数のモバイル端末１０において電力線１を介した並列（分散）処理を実行するための並列処理制御プログラムを提供するサーバ１９が接続されている。サーバ１９は、モバイル端末１０からの要求に応じて、並列処理制御プログラムをダウンロードさせる。また、サーバ１９は、複数種類のモバイル端末についてのスペック（機能）を示すデータ（以下、リソース管理データと称する）を、ネットワーク１８を介してモバイル端末１０等にダウンロードさせることができるものとする。
【００１６】
また、モバイル端末１０−１は、携帯電話機網を介さないで、直接、他のモバイル端末１０−５と無線通信を行う機能（トランシーバ機能）が設けられているものとする。
【００１７】
図２に示すように、モバイル端末１０−１には、制御部２０、ＲＯＭ３０、表示部３１、音声部３２、入力部３３、無線通信部３４、通信部３５、メモリ３６、及び着脱可能メモリデバイス３７が設けられている。
【００１８】
制御部２０は、モバイル端末１０−１全体の制御を司るもので、携帯電話機としての基本的な音声通話や電子メールの送受信などの機能を制御する他、メモリ３６に記憶された並列処理制御プログラム３６ａを実行することにより他のモバイル端末等との並列処理や各種のアプリケーションを制御する。制御部２０には、並列処理制御プログラム３６ａによって並列処理制御部２２及びアプリケーション部２４が実現される。
【００１９】
並列処理制御部２２は、通信部３５によって電力線１を介して接続される他のモバイル端末１０−２，…，１０−ｎとの間で実行される並列処理を制御する。並列処理制御部２２には、端末稼働確認部２２ａ、途中離脱リカバリ部２２ｂ、リソース管理部２２ｃ、担当振り分け部２２ｄ、及び処理結果管理部２２ｅが設けられる。
【００２０】
端末稼働確認部２２ａは、電力線１を介して通信が可能な他のモバイル端末の稼働状況、すなわち複数のモバイル端末の間で並列処理を実行可能な状況にあるかを確認する。本実施形態では、例えば、モバイル端末が音声通話や電子メールの送受信などの機能が実行されていない未使用状態にある場合に並列処理が実行可能であるものとする。
【００２１】
途中離脱リカバリ部２２ｂは、他のモバイル端末と並列処理を実行している途中で、自端末あるいは他のモバイル端末が稼働可能でなくなった場合に、この稼働できなくなったモバイル端末を除く他のモバイル端末によって並列処理を継続するための処理を実行する。
【００２２】
リソース管理部２２ｃは、電力線１を介して接続されたモバイル端末の性能（機能）を示すリソース管理データ３６ｄ（後述する）を管理する。リソース管理データ３６ｄは、例えば、複数のモバイル端末において実行される並列処理を制御する親端末の選定や、親端末として選定された場合の並列処理の振り分けの際に参照される。
【００２３】
担当振り分け部２２ｄは、自端末が親端末として選定された場合に、端末稼働確認部２２ａによって稼働可能であると確認された並列処理を実行する他のモバイル端末１０のそれぞれに対して処理の振り分けを実行する。担当振り分け部２２ｄは、リソース管理部２２ｃによって管理される他のモバイル端末１０に設けられている機能に応じて、処理の振り分けを実行することができる。
【００２４】
処理結果管理部２２ｅは、他のモバイル端末１０との間で実行される並列処理の処理結果とする処理結果データ３６ｂを管理する。処理結果管理部２２ｅは、処理結果データ３６ｂを自端末において格納しておく他、並列処理される処理内容に応じて、親端末に送信する、あるいは電力線１を介して接続された他の情報機器（パーソナルコンピュータ１３、ＰＤＡ１５等）に送信して格納させることができる。
【００２５】
アプリケーション部２４は、モバイル端末１０−１に設けられた基本的な機能以外の機能（業務処理）を実現するためのもので、メモリ３６に格納されたアプリケーションプログラム３６ｃを実行することにより実現される。アプリケーション部２４は、例えば電力線１を介して接続された他のモバイル端末１０との間で並列処理を実行する。
【００２６】
ＲＯＭ３０は、モバイル端末１０に設けられる基本的な機能を実行するための各種プログラムやデータが格納されている。
【００２７】
表示部３１は、制御部２０の制御のもとで、ディスプレイにおいて各種データを表示させる。
【００２８】
音声部３２は、制御部２０の制御のもとで、音声通話をする際の音声や、各種の機能実行時における音を出力させる。
【００２９】
入力部３３は、制御部２０の制御のもとで、音声通話をする際に音声を入力するマイクの他、ユーザ操作を受け付けるための複数のボタンやキーを含む。
【００３０】
無線通信部３４は、制御部２０の制御のもとで無線通信を実行するもので、携帯電話機網（基地局１７）との通信あるいは他のモバイル端末１０との通信を実行する。
【００３１】
通信部３５は、有線接続された端末との通信を実行するもので、例えばクレードル１２−１のＰＬＣモデム１２ａ−１によって電力線１を介して接続される他のモバイル端末等との通信を制御する。通信部３５は、モバイル端末１０−１がクレードル１２−１に装着されることで、クレードル１２−１に設けられたＰＬＣモデム１２ａ−１と接続され、電力線１を介して接続される他のモバイル端末等との通信が可能となる。
【００３２】
メモリ３６は、各種プログラムやデータなどが格納される。メモリ３６には、例えば並列処理制御プログラム３６ａ、処理結果データ３６ｂ、アプリケーションプログラム３６ｃ、リソース管理データ３６ｄなどが格納される。
【００３３】
並列処理制御プログラム３６ａは、電力線１を介して接続された複数のモバイル端末との間で実行される並列処理を制御するためのプログラムである。並列処理制御プログラム３６ａは、例えばネットワーク１８を介してサーバ１９からダウンロードされる。
【００３４】
処理結果データ３６ｂは、他のモバイル端末との間で実行される並列処理により得られる処理結果を示すデータである。処理結果データ３６ｂは、例えば並列処理制御プログラム３６ａと同様にして、ネットワーク１８を介してサーバ１９からダウンロードされる。
【００３５】
アプリケーションプログラム３６ｃは、モバイル端末１０−１に設けられた基本的な機能以外の機能（業務処理）を実現するためのもので、例えばネットワーク１８を介してダウンロードされたり、他の情報機器（パーソナルコンピュータ１３、ＰＤＡ１５等）からインストールされる。
【００３６】
リソース管理データ３６ｄは、複数種類のモバイル端末についてのスペック（機能）を示すデータであり、例えばネットワーク１８を介してサーバ１９からダウンロードされる。サーバ１９では、最新のモバイル端末に関するデータを含むリソース管理データ３６ｄを提供することで、電力線１に接続されるモバイル端末１０に最新の機種が含まれている場合であっても同端末の性能を有効に利用して並列処理を実行することができる。
【００３７】
図３には、リソース管理データ３６ｄのデータ構成の一例を示している。リソース管理データ３６ｄは、モバイル端末（携帯電話機）の種類を示す機種データと対応付けて、機種データが示す端末に関するスペックデータが設定されている。スペックデータには、端末に実装された性能、例えば例えば演算能力（浮動小数点計算機能の有無など）、通信速度、リソース情報（ヒープメモリの有無、メモリ容量など）を示すデータが含まれる。
【００３８】
着脱可能メモリデバイス３７は、各種処理の処理結果データなどが格納される。着脱可能メモリデバイス３７は、着脱が可能であるため、例えば他のモバイル端末と共に実行した並列処理の処理結果データを格納し、他のモバイル端末や情報処理装置（パーソナルコンピュータ１３等）において読み出して保存するために使用することができる。
【００３９】
電源部３８は、電源制御するもので、各部への電力供給や、クレードル１２を介して接続された電力線１バッテリ３８ａへの充電を行う。電源部３８は、電力線１に接続されたことを検知して制御部２０に通知する。
【００４０】
次に、本実施形態のモバイル端末１０−１における並列処理制御の動作について説明する。図４は、並列処理制御プログラムによる並列処理制御を説明するためのフローチャートである。  
モバイル端末１０−１は、例えばクレードル１２に装着されることにより電力線１と接続される。なお、他のモバイル端末と共に並列処理を実行させる場合には、電源がオンの状態でクレードル１２に装着されるものとする。従って、モバイル端末１０−１は、クレードル１２に装着されている間、音声通話や電子メールの着信が可能な状態となっている。
【００４１】
制御部２０は、電源部３８によって電力線１と接続されたことを検知すると並列処理制御プログラム３６ａを起動して並列処理制御を開始する。なお、モバイル端末１０−１では、電力線１を介して他のモバイル端末と共に実行される処理（業務）のアプリケーションプログラム３６ｃが予め設定されているものとする。
【００４２】
制御部２０は、通信部３５によって、クレードル１２のＰＬＣモデム１２ａを通じて、電力線１を介して接続される他のモバイル端末との通信を開始する。制御部２０は、他のモバイル端末１０との接続があると（ステップＡ１）、親端末選定処理を実行する（ステップＡ２）。親端末選定処理では、複数のモバイル端末において実行される並列処理を制御する親端末を、電力線１を介して接続された稼働可能なモバイル端末の中から選定する（詳細については図５を参照しながら説明する）。
【００４３】
モバイル端末１０−１は、親端末選定処理によって親端末が選定されると、電力線１を介して接続された他のモバイル端末１０と共に並列処理を実行する（ステップＡ３）。モバイル端末１０−１は、親端末選定処理によって自端末が親端末として選定された場合には、親端末並列処理を実行して複数のモバイル端末１０による並列処理を制御する（詳細については図６を参照しながら説明する）。また、モバイル端末１０−１は、親端末選定処理によって自端末が子端末として選定された場合には、子端末並列処理を実行して、振り分けられた処理を実行する（詳細については図８を参照しながら説明する）。
【００４４】
モバイル端末１０−１は、並列処理の実行中に、他のモバイル端末１０が電力線１と接続されて稼働可能となるか、あるいは電力線１から切断されるなどして稼働不能となったことが確認された場合、すなわち稼働可能なモバイル端末１０の数に変動があった場合には（ステップＡ４、Ｙｅｓ）、改めて親端末選定処理を実行する（ステップＡ２）。この親端末選定処理では、変動後のモバイル端末１０に応じて処理の振り分けを実行する。
【００４５】
また、モバイル端末１０−１は、電力線１を介して他のモバイル端末１０との接続がなくなった場合（ステップＡ５、Ｙｅｓ）、並列処理の実行が不可能となるので並列処理制御を終了する。
【００４６】
このようにして、本実施形態におけるシステムでは、電力線１に接続されて稼働可能な状態にある複数のモバイル端末１０から動的に親端末を選定し、親端末として選定されなかった他の子端末に対して、それぞれの端末性能に応じて並列処理の振り分けが行われる。すなわち、モバイル端末１０（携帯電話機等）がクレードル１２に装着され、ユーザにより音声通話やメールの送受信などにより使用されない状態（稼働可能な状態）にある場合には、その間に並列処理を実行させてモバイル端末１０−１の性能を有効に活用することができる。
【００４７】
次に、図４における親端末選定処理（ステップＡ２）の詳細について、図５に示すフローチャートを参照しながら説明する。  
並列処理制御部２２は、通信部３５により、電力線１を介して接続された他のモバイル端末１０との通信を開始する（ステップＢ１）。端末稼働確認部２２ａは、通信可能なモバイル端末１０の数をチェックする（ステップＢ２）。すなわち、並列処理の実行が可能なモバイル端末１０を確認する。
【００４８】
ここで、複数の稼働可能なモバイル端末１０が存在しない場合、すなわち自端末のみが稼働可能な場合には（ステップＢ３、Ｎｏ）、並列処理制御部２２は、並列処理の実行ができないものと判別し、並列処理の対象となっていた業務処理が自端末のみで処理可能であるかを確認する。自端末のみで実行可能である場合には（ステップＢ４、Ｙｅｓ）、並列処理制御部２２は、アプリケーション部２４により自端末のみで業務処理を実行する（ステップＢ５）。なお、自端末のみで実行できない場合には（ステップＢ４、Ｎｏ）、並列処理制御を終了する。
【００４９】
一方、複数の稼働可能なモバイル端末１０が存在する場合（ステップＢ３）、並列処理制御部２２は、通信可能な他のモバイル端末１０との間で、それぞれの機種を示す機種データを相互に送受信する（ステップＢ６）。リソース管理部２２ｃは、機種データを受信すると、それぞれの他のモバイル端末１０の機能を、メモリ３６に予め格納されているリソース管理データ３６ｄを参照してチェックする（ステップＢ７）。
【００５０】
並列処理制御部２２は、リソース管理部２２ｃによってチェックされる各端末の機能に基づいて親端末を設定する（ステップＢ８）。例えば、親端末は、複数のモバイル端末１０において実行される並列処理の管理を行うだけで、実質的な業務処理を実行しないものとする。従って、スペックが高い必要がない。並列処理制御部２２は、自端末が他のモバイル端末１０のスペックよりも低い場合、例えば演算能力が最も低いことが確認された場合には自端末を親端末として設定する。なお、他のモバイル端末１０においても同様の親端末選定処理を実行することで、他のモバイル端末１０ではそれぞれが子端末として設定することになる。また、他の何れかのモバイル端末１０のスペックが自端末より低い場合には、自端末を子端末として設定する。
【００５１】
なお、ここでは、スペックが低いモバイル端末１０を親端末に選定するものと説明しているが、親端末に要求される条件を予め設定しておき、その条件に該当するモバイル端末１０が存在する場合に、同モバイル端末１０を親端末に設定するなど、その他の選定方法を用いることも可能である。
【００５２】
次に、自端末が親端末として設定された場合には、担当振り分け部２２ｄは、並列処理の各作業を、稼働可能な他のモバイル端末１０（子端末）に振り分ける（ステップＢ１０）。ここで、担当振り分け部２２ｄは、リソース管理部２２ｃによって判別された各子端末の機能に応じて並列処理を振り分けることにより、各端末に実装された性能を有効に活用することができる。
【００５３】
次に、モバイル端末１０−１が親端末として選定された場合に実行される親端末並列処理について、図６に示すフローチャートを参照しながら説明する。
【００５４】
並列処理制御部２２は、親端末並列処理を起動し（ステップＣ１）、並列処理の対象となっている業務処理のデータ初期化（処理開始時）、あるいはセーブデータのロード（処理再開時）を各子端末において実行させる（ステップＣ２）。その後、並列処理制御部２２は、各子端末において、それぞれに振り分けた処理を実行させる（ステップＣ３）。
【００５５】
並列処理制御部２２は、並列処理が実行されている間、各子端末における並列処理の実行状況をチェックする（ステップＣ４）。並列処理制御部２２は、振り分けた処理を終了した子端末があった場合（ステップＣ５、Ｙｅｓ）、同子端末における処理結果（処理結果データ３６ｂ）を受信して、例えば電力線１を介して接続されたパーソナルコンピュータ１３において格納する（ステップＣ６）。
【００５６】
なお、並列処理により実行される業務処理の内容によっては、親端末に処理結果を格納したり、あるいは処理を実行した各子端末において格納しておくようにしても良い。さらに、予め決められたモバイル端末において（例えばメモリ容量が大きい端末）、処理結果を格納するように設定することもできる。ステップＣ２では、この時の処理結果の格納先からセーブデータをロードする。
【００５７】
処理が終了した端末がある場合、担当振り分け部２２ｄは、現在、他の子端末に振り分けている処理を、再振り分け可能であるかを判別する（ステップＣ９）。つまり、処理が終了した子端末の処理能力を有効に利用するために、この子端末に対して別の処理を割り振れるかを判別する。
【００５８】
再割り振りが可能な場合には（ステップＣ９、Ｙｅｓ）、担当振り分け部２２ｄは、並列処理の各作業を、稼働可能な全ての子端末を対象として再び振り分ける（ステップＣ１０）。並列処理制御部２２は、処理が振り分けられた各子端末に対して並列処理を実行させる（ステップＣ３）。
【００５９】
また、端末稼働確認部２２ａによって稼働が停止した子端末を確認した場合（ステップＣ７）、すなわち電力線１から切断されたり、着信があった子端末が存在する場合には、途中離脱リカバリ部２２ｂは、稼働が停止したモバイル端末を除く他のモバイル端末によって並列処理を継続するための途中離脱リカバリ処理を実行する（ステップＣ８）。
【００６０】
図７は、途中離脱リカバリ処理を説明するためのフローチャートである。  
まず、途中離脱リカバリ部２２ｂは、端末稼働確認部２２ａによって稼働が停止したことが確認された子端末における処理内容を判定する（ステップＤ１）。ここでは、並列処理の実行前に担当振り分け部２２ｄにより振り分けられた処理をもとに判定する。
【００６１】
途中離脱リカバリ部２２ｂは、並列処理の実行途中にあるデータ（途中データ）のロードが可能であるか判別する。例えば、稼働が停止された子端末により処理が停止するまでの処理結果データ（途中データ）が、親端末あるいはパーソナルコンピュータ１３に格納されている場合にはロード可能であるとする。
【００６２】
途中データがロード可能でない場合には、稼働が停止した子端末がそれまでに実行した処理を無効とするために、並列処理制御部２２は、並列処理を実行する他の子端末の処理動作を一時停止させ（ステップＤ３）、処理途中の並列処理結果の見直しを実行する（ステップＤ４）。すなわち、並列処理制御部２２は、稼働が停止した子端末が並列処理を開始する前の処理状態に各端末を戻す。
【００６３】
ここで、担当振り分け部２２ｄは、並列処理の各作業を、稼働可能な残りの子端末を対象として再び振り分ける（ステップＣ９，Ｃ１０）。並列処理制御部２２は、処理が振り分けられた各子端末に対して並列処理を実行させる（ステップＣ３）。
【００６４】
こうして、親端末並列処理では、振り分けられた処理を終了した子端末がある場合には、この子端末に対して別の処理を再振り分けすることで、稼働可能な全ての端末を有効に活用して全体の処理効率を向上させることができる。また、並列処理の実行中に稼働が停止された子端末がある場合には、途中離脱リカバリ処理によって並列処理を実行可能な状態に戻して、残りの子端末によって並列処理を再開させることができる。
【００６５】
全ての処理が終了すると（ステップＣ１１、Ｙｅｓ）、並列処理制御部２２は、並列処理制御のメインルーチンに戻る。そして、他の実行すべき業務処理がある場合には、同様にして処理を振り分けて並列処理を実行する。
【００６６】
一方、親端末が電力線１から切断されたり、着信があった場合には、並列処理制御部２２は、並列処理から離脱するための終了処理を実行して並列処理制御を終了させる（ステップＣ１３）。
【００６７】
このようにして、親端末として設定された場合には、電力線１を介して接続された複数のモバイル端末の状況に応じて並列処理を制御することができる。
【００６８】
次に、モバイル端末１０−１が子端末として選定された場合に実行される子端末並列処理について、図８に示すフローチャートを参照しながら説明する。
【００６９】
並列処理制御部２２は、子端末並列処理を起動し（ステップＥ１）、親端末の制御に応じて、並列処理の対象となっている業務処理のデータ初期化（処理開始時）、あるいはセーブデータのロード（処理再開時）を実行する（ステップＥ２）。その後、並列処理制御部２２は、親端末によって割り振られた処理をアプリケーション部２４によって実行させる（ステップＥ３）。並列処理を実行中には、並列処理制御部２２は、アプリケーション部２４による処理結果（途中データ）を、適宜、親端末あるいは電力線１を介して接続されたパーソナルコンピュータ１３に送信して格納させることができる。
【００７０】
また、並列処理制御部２２は、並列処理を実行している間、親端末が存在しているかをチェックし、親端末が存在していれば（ステップＥ４、Ｙｅｓ）継続して並列処理を実行する。一方、親端末が存在しない場合（ステップＥ４、Ｎｏ）、すなわち親端末として選定されたモバイル端末１０が電力線１から切断されたり、着信があった場合には、並列処理制御部２２は、並列処理を一時停止させて（ステップＥ８）、処理結果を格納し（ステップＥ８）、子端末並列処理を終了する。
【００７１】
この場合、前述と同様にして親端末選定処理を実行して（図４、ステップＡ２）、現在、稼働可能な複数のモバイル端末から親端末を選定して並列処理を再開する（ステップＡ３）。
【００７２】
また、並列処理制御部２２は、自端末が電力線１から切断されたり、着信があった場合には（ステップＥ５、Ｙｅｓ）、処理を終了させる。
【００７３】
また、並列処理制御部２２は、親端末に振り分けられた処理を終了した場合には（ステップＥ６、Ｙｅｓ）、親端末に対して処理結果データ３６ｂを送信して並列処理を終了する（ステップＥ７）。なお、処理結果データ３６ｂは、自端末においてそのまま格納しておいても良いし、電力線１を介して接続されたパーソナルコンピュータ１３に送信して格納させることもできる。
【００７４】
このようにして、子端末として設定された場合には、親端末によって振り分けられた処理を実行することができる。子端末に振り分けられる処理は、親端末において機種の性能に応じて割り振られているので効率良く処理を実行することができる。
【００７５】
次に、複数のモバイル端末１０により実行される並列処理の具体例について説明する。  
ここでは、家族４人がそれぞれ所有している４台のモバイル端末１０が家内の電力線１を介して接続され、相互に通信が可能な状態にあるものとする。第１のモバイル端末１０は、親端末として選定され、他のモバイル端末１０の機能チェック、稼働状況のチェックなどを含む並列処理を制御する。以下の説明では、第１のモバイル端末１０（親端末）は、並列処理中に稼働停止しないものとする。
【００７６】
その他、３台のモバイル端末１０は、次のような機能の特徴を有しているものとする。すなわち、第２のモバイル端末１０は、演算能力が最も高く、第３のモバイル端末１０は、第２のモバイル端末１０の次に演算能力が高いものとする。第４のモバイル端末１０は、演算能力はもっとも低いがメモリ容量が最も多いものとする。
【００７７】
各モバイル端末１０には、アプリケーション部２４により実行される業務処理として、当日及び過去１ヶ月のモバイルキャッシュ機能（買い物、交通費等の決済）による利用履歴管理、個人スケジュール管理機能（旅行、イベント、買い物等）が設けられているものとする。並列処理では、各個人スケジュールに応じて、各端末のモバイルキャッシュ機能による利用可能金額を、予め決められた総額の中で振り分けるものとする。
【００７８】
各端末における利用可能金額を設定するための演算処理は、第２及び第３のモバイル端末１０に振り分けられるものとする。第４のモバイル端末１０には、第１のモバイル端末１０（親端末）における並列処理制御を補助する処理（例えば各端末の接続及び稼働状況の管理）が振り分けられるものとする。
【００７９】
まず、並列処理の開始時に実行されるデータ初期化として、各モバイル端末１０において、それぞれの個人スケジュール、過去１ヶ月の利用履歴、当日の利用履歴のデータを相互に送受信して格納する。なお、過去１ヶ月の利用履歴のデータは、例えばパーソナルコンピュータ１３に格納しておき、パーソナルコンピュータ１３から取得するようにしても良い。
【００８０】
第２及び第３のモバイル端末１０は、各端末からのスケジュールデータを集計し（例えば１０日先に旅行がある、１５日先に収入があるなど）、スケジュールの内容に応じた出費予想金額を算定する。そして、各モバイル端末１０に対する利用可能金額の振り分けを行う。
【００８１】
親端末は、並列処理の途中で第２及び第３のモバイル端末１０から受信された途中データをバックアップ（格納）すると共に、第４のモバイル端末１０においても格納させる。また、親端末は、第４のモバイル端末１０によって管理されている各端末の接続及び稼働状況を示すデータを取得してシステムの状況を把握する。
【００８２】
親端末は、第２または第３のモバイル端末１０に着信があったり、電力線１から切断された場合には、処理の途中で受信された途中データまでの処理を有効として並列処理を停止させる。
【００８３】
例えば、第３のモバイル端末１０に着信があった場合、スケジュールデータの集計が全て終了していなければ、この処理を第２あるいは第４のモバイル端末１０において代行できるか、残り作業と各端末のスペックとを考慮して判別する。そして、代行可能であることが確認された場合には、第２あるいは第４のモバイル端末１０に、それまで第３のモバイル端末１０に振り分けられていた処理を代行させる。この際、第３のモバイル端末１０の稼働が停止するまでに受信されていた途中データを用いて処理を再開させる。
【００８４】
第３のモバイル端末１０が稼働可能な状態になった場合には、親端末は、第３のモバイル端末１０に対して稼働停止前の処理を再び振り分けると共に、それまでの処理で受信された途中データを第３のモバイル端末１０に渡して、稼働停止前と同様にして並列処理を実行させる。
【００８５】
また、第２のモバイル端末１０の稼働が停止された場合、処理速度が低下してしまうが、親端末は、前述と同様にして、その他の稼働可能な第３または第４のモバイル端末１０に、それまで第２のモバイル端末１０に振り分けられていた処理を代行させる。
【００８６】
また、第４のモバイル端末１０の稼働が停止された場合、親端末は、第４のモバイル端末１０に振り分けられていた処理を代行する。
【００８７】
第２及び第３のモバイル端末１０による並列処理によって全ての処理が完了すると、処理結果データ（完成データ）として第４のモバイル端末１０に格納する。第１〜第３のモバイル端末１０は、データ領域をクリアした後、第４のモバイル端末１０に格納された完成データを受信して格納する。
【００８８】
すなわち、各モバイル端末１０にモバイルキャッシュ機能による利用可能金額を示すデータが設定される。各モバイル端末１０の所有者は、それぞれに振り分けられた利用可能金額の範囲でモバイルキャッシュ機能を利用することで、家族全体で予め決められた総額を超過しないようにできる。
【００８９】
こうして、モバイル端末１０が使用されていない間、例えば夜間などにおいて前述した処理を実行して、各モバイル端末１０に対して必要なデータの設定が行われるので、モバイル端末１０が有する演算能力を有効に活用し、業務効率の向上を図ることが可能となる。
【００９０】
なお、前述した説明では、モバイルキャッシュ機能とスケジュール機能に関係するデータに対する処理例を示しているが、その他の様々な処理を並列処理の対象とすることができる。例えば、膨大な演算量を必要とする科学技術計算を実行する場合（分散処理）などにも適用することができる。本実施形態のシステムでは、電力線１を介して接続されたモバイル端末１０が稼働可能であれば並列処理に参加させることができるので、全てのモバイル端末１０が有する演算能力を有効に利用することができる。
【００９１】
また、前述した説明では、電力線１を介して接続されたモバイル端末１０によって並列処理を実行するとして説明しているが、例えばモバイル端末１０間で直接、無線通信が可能な、例えば図１に示すモバイル端末１０−５を含めて並列処理を実行させることも可能である。この場合、モバイル端末１０−２を介してモバイル端末１０−５の稼働状況を確認し、稼働可能であると確認された場合に処理を振り分けて並列処理を実行させる。
【００９２】
また、モバイル端末１０を例えば携帯電話機としているが、電力線１を介して通信可能な機能が設けられた機器であれば、前述した並列処理に利用することができる。例えば、家電製品（冷蔵庫、エアコン、電子レンジなど）に実装される演算装置に通信機能を設けることで、この演算装置の演算能力を利用することも可能となる。
【００９３】
また、前述した説明では、モバイル端末１０は、例えばクレードル１２に設けられたＰＬＣモデム１２ａを介して電力線１と接続されるものとして説明しているが、モバイル端末１０にＰＬＣモデム１２ａを設けることで、直接、電力線１と接続できるようにしても良い。
【００９４】
また、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【００９５】
また、実施形態に記載した手法は、コンピュータ（モバイル端末）に実行させることができるプログラム（ソフトウエア手段）として、例えば磁気ディスク（フレキシブルディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ等）、半導体メモリ（ＲＯＭ、ＲＡＭ、フラッシュメモリ等）等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、コンピュータ（モバイル端末）に実行させるソフトウエア手段（実行プログラムのみならずテーブルやデータ構造も含む）をコンピュータ内に構成させる設定プログラムをも含む。本装置を実現するコンピュータは、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、コンピュータ（モバイル端末）内部あるいはネットワークを介して接続される機器に設けられた磁気ディスクや半導体メモリ等の記憶媒体を含むものである。
【図面の簡単な説明】
【００９６】
【図１】本実施形態におけるシステムの構成を示すブロック図。
【図２】モバイル端末１０−１の機能構成を示すブロック図。
【図３】リソース管理データ３６ｄのデータ構成の一例を示す図。
【図４】並列処理制御プログラムによる並列処理制御を説明するためのフローチャート。
【図５】親端末選定処理の詳細について説明するためのフローチャート。
【図６】モバイル端末１０−１が親端末として選定された場合に実行される親端末並列処理について説明するためのフローチャート。
【図７】途中離脱リカバリ処理を説明するためのフローチャート。
【図８】モバイル端末１０−１が子端末として選定された場合に実行される子端末並列処理について説明するためのフローチャート。
【符号の説明】
【００９７】
１…電力線、１０（１０−１，１０−２，…，１０−ｎ）…モバイル端末、１２（１２−１，１２−２，…）…クレードル、１２ａ（１２ａ−１，１２ａ−２，…，１２ａ−ｎ）…ＰＬＣモデム、１３…パーソナルコンピュータ、１４，１６…ＰＬＣモデム、１５…ＰＤＡ、１７…基地局、１８…ネットワーク、１９…サーバ、２０…制御部、２２…並列処理制御部、２２ａ…端末稼働確認部、２２ｂ…途中離脱リカバリ部、２２ｃ…リソース管理部、２２ｄ…担当振り分け部、２２ｅ…処理結果管理部、２４…アプリケーション部、３０…ＲＯＭ、３１…表示部、３２…音声部、３３…入力部、３４…無線通信部、３５…通信部、３６…メモリ、３６ａ…並列処理制御プログラム、３６ｂ…処理結果データ、３６ｃ…アプリケーションプログラム、３６ｄ…リソース管理データ、３７…着脱可能メモリデバイス、３８…電源部、３８ａ…バッテリ。
【図１】
2008191787.tif 000003
【図２】
2008191787.tif 000004
【図３】
2008191787.tif 000005
【図４】
2008191787.tif 000006
【図５】
2008191787.tif 000007
【図６】
2008191787.tif 000008
【図７】
2008191787.tif 000009
【図８】
2008191787.tif 000010