(57)【特許請求の範囲】
【請求項１】
更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置であって、
前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定する動作確認部と、
前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替える制御処理部と、
を備え、
前記動作確認部は、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定する
ことを特徴とする情報処理装置。
【請求項２】
前記更新前プログラムを記憶する記憶領域と、前記更新後プログラムを記憶する記憶領域と、前記更新後プログラムへ更新するか否かを示す更新フラグを記憶する記憶領域と、を備えた記憶部と、を備え、
前記制御処理部は、前記更新フラグが前記更新後プログラムへ更新することを示す場合には、起動時に、前記更新前プログラムを用いて前記タッチパネルデバイスを制御する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記動作確認部は、前記動作確認時間内に入力装置からキャンセル信号を入力した場合には前記タッチパネルデバイスの動作異常と判定する
ことを特徴とする請求項１または請求項２の何れか一項に記載の情報処理装置。
【請求項４】
前記動作確認部は、前記動作確認時間において、当該動作確認時間のカウントダウンを行い、表示装置にカウントダウン開始からカウントダウン終了までの時刻表示を制御する
ことを特徴とする請求項１から請求項３の何れか一項に記載の情報処理装置。
【請求項５】
更新前プログラムを用いた制御対象の制御から、更新後プログラムを用いた制御対象の制御へ更新する情報処理装置であって、
前記更新後プログラムを用いた前記制御対象の制御の開始時に、動作確認時間を設け、当該動作確認時間に前記制御対象が動作正常か動作異常かを判定する動作確認部と、
前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記制御対象の制御から、前記更新前プログラムを用いた制御対象の制御へと切り替える制御処理部と、
を備え、
前記制御対象が自装置に備えられたタッチパネルデバイスであり、
前記動作確認部は、前記動作確認時間において、当該動作確認時間のカウントダウンを行い、表示装置にカウントダウン開始からカウントダウン終了までの時刻表示を制御する
ことを特徴とする情報処理装置。
【請求項６】
更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置の制御方法であって、
前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定し、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定し、
前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替える
ことを特徴とする制御方法。
【請求項７】
更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置のコンピュータを、
前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定し、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定する動作確認手段、
前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替える制御処理手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法とプログラムに関する。
【背景技術】
【０００２】
プログラムを実行する情報処理装置においては、当該プログラムの実行に基づく情報処理装置の動作の機能拡張を目的として、当該プログラムを新たなプログラムに更新する場合がある。例えば、情報処理装置の一例としての携帯電話装置は、市場流通後、無線通信を介して新たなプログラムをダウンロードし、自己のプログラムを更新する機能（以下プログラムアップデートと記す）を有している。そして、例えば、タッチパネルデバイスが、携帯電話装置本体とは独立したプログラムで動作する構成の場合、そのタッチパネルのプログラム（以下タッチパネルファームウェアと記す）も、更新の対象となる。
なお、プログラム更新時の障害回避の技術として、特許文献１が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１０５４０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、従来の携帯電話装置はプログラムアップデート時に、ダウンロードしたプログラムコードの正当性の検証および実行プログラム更新後の正当性の検証を行っている。しかしながら、それらはバイナリデータとしてのプログラムの正当性を検証しているのみであり、実動作時において障害を含んでいるか否かを検証することはできなかった。従って、主たる入力デバイスとしてタッチパネルを有する携帯電話装置においては、このタッチパネルファームウェア（タッチパネルデバイスを制御するプログラム）の更新に、なんらかの障害が発生した場合、回復させるための操作も含めて操作不能の状態に陥ってしまうという問題があった。
また、特許文献１のようなプログラム更新時の障害回避技術も存在するが、新たなプログラムによる運用開始を行った後に、障害監視を開始することになるため、全ての操作が不能に陥った状態になった場合には、ユーザの操作が情報処理装置に入力できず、その障害を回避する手段がなくなってしまう。
【０００５】
そこでこの発明は、上述の課題を解決することのできる情報処理装置およびその制御方法とプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は、更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置であって、前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定する動作確認部と、前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替える制御処理部と、を備え、前記動作確認部は、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定することを特徴とする情報処理装置である。
また本発明は、更新前プログラムを用いた制御対象の制御から、更新後プログラムを用いた制御対象の制御へ更新する情報処理装置であって、前記更新後プログラムを用いた前記制御対象の制御の開始時に、動作確認時間を設け、当該動作確認時間に前記制御対象が動作正常か動作異常かを判定する動作確認部と、前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記制御対象の制御から、前記更新前プログラムを用いた制御対象の制御へと切り替える制御処理部と、を備え、前記制御対象が自装置に備えられたタッチパネルデバイスであり、前記動作確認部は、前記動作確認時間において、当該動作確認時間のカウントダウンを行い、表示装置にカウントダウン開始からカウントダウン終了までの時刻表示を制御することを特徴とする情報処理装置である。
【０００７】
また本発明は、更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置の制御方法であって、前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定し、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定し、前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替えることを特徴とする制御方法である。
【０００８】
また本発明は、更新前プログラムを用いたタッチパネルデバイスの制御から、更新後プログラムを用いたタッチパネルデバイスの制御へ更新する情報処理装置のコンピュータを、前記更新後プログラムを用いた前記タッチパネルデバイスの制御の開始時に、動作確認時間を設け、当該動作確認時間に前記タッチパネルデバイスが動作正常か動作異常かを判定し、前記動作確認時間内に前記タッチパネルデバイスからの信号入力が無い場合に当該タッチパネルデバイスの動作異常と判定する動作確認手段、前記動作確認時間に動作異常と判定した場合に、前記更新後プログラムを用いた前記タッチパネルデバイスの制御から、前記更新前プログラムを用いたタッチパネルデバイスの制御へと切り替える制御処理手段、として機能させることを特徴とするプログラムである。
【発明の効果】
【０００９】
本発明によれば、通常起動後に入力装置が制御できなくなっていまい、プログラム更新によってどのような操作も受け付けなくなってしまうような事態を防ぐことができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置の構成を示す第１のブロック図である。
【図２】情報処理装置の構成を示す第２のブロック図である。
【図３】データ処理部のＲＯＭで記憶するデータ例を示す図である。
【図４】情報処理装置の処理フローを示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の一実施形態による情報処理装置を図面を参照して説明する。
図１は同実施形態による情報処理装置の構成を示す第１のブロック図である。
この図において、符号１は情報処理装置である。情報処理装置１は、たとえば、携帯電話装置、スマートフォン、ゲーム機、タブレットＰＣ、ノートＰＣなどに適用可能である。そして情報処理装置１は、制御処理部１１０、動作確認部１１１、制御対象２を備えている。本実施形態において制御対象２はタッチパネルデバイスであるものとする。しかしながらタッチパネルデバイスの代わりに他の入力装置や他の処理部などを制御対象２とするように構成してもよい。
【００１２】
当該情報処理装置１は、更新前プログラムを用いた制御対象２の制御から、更新後プログラムを用いた制御対象２の制御へ更新する装置である。
そして、動作確認部１１１は、更新後プログラムを用いた制御対象２の制御の開始時に、動作確認時間を設け、当該動作確認時間に制御対象２が動作正常か動作異常かを判定する。
また、制御処理部１１０は、動作確認時間に動作異常と判定された場合に、更新後プログラムを用いた制御対象２の制御から、更新前プログラムを用いた制御対象２の制御へと切り替える。以下、制御対象２をタッチパネルデバイス２として説明する。
【００１３】
図２は同実施形態による情報処理装置１の構成を示す第２のブロック図である。
次に、図２を用いて、情報処理装置１の機能の詳細を説明する。
図２に示すように、情報処理装置１は、各種データ処理を行うデータ処理部１０、ユーザの指等の生体のタッチパネルへの接触やそのタッチパネル上の検出範囲における接触位置を検知するタッチパネルデバイス２、タッチパネルに積層され表示情報の表示出力の制御を行う表示装置３、無線回路／モデム５、電源６、入力装置７を主な機能として構成されている。
またデータ処理部１０は、図１で説明した制御処理部１１０および動作確認部１１１を含んで構成されたプロセッサ１１、ＲＡＭ１２、ＲＯＭ１３（記憶部）により構成されている。
【００１４】
またタッチパネルデバイス２は、タッチパネル２１、当該タッチパネル２１を制御するＣＰＵ２２、メモリ２３、を含んで構成されている。ここではメモリ２３は揮発性であるとする。またタッチパネルデバイス２の制御に用いるタッチパネルファームウェアは、ＲＯＭ１３に予め格納されている。タッチパネルデバイス２のＣＰＵ２２は情報処理装置１の起動時に、このタッチパネルファームウェアをバス４を介して読み込み実行する。
また、データ処理部１０を構成するプロセッサ１１、ＲＡＭ１２、ＲＯＭ１３や、タッチパネルデバイス２、表示装置３は、信号を中継するバス４を介して接続されている。
【００１５】
図３はデータ処理部のＲＯＭ１３で記憶するデータ例を示す図である。
この図が示すようにＲＯＭ１３の記憶領域は、所定のプログラムの更新処理に利用されるプログラムを格納している更新処理プログラム領域１３１と、情報処理装置１の機能を実現するプログラムを格納している実行プログラム領域１３２と、起動時にタッチパネルデバイス２に転送されるタッチパネルファームウェア（更新前プログラム）を格納しているタッチパネルファームウェア領域１３３と、プログラムアップデート実行の際に更新プログラム（更新後プログラム）を一時的に格納する更新プログラム領域１３４と、更新処理時に更新前のタッチパネルファームウェア（更新前プログラム）を格納する前タッチパネルファームウェア領域１３５と、装置機能実現のためのデータを格納するデータ領域１３６を有している。なおデータ領域には、所定のプログラム（本実施形態においてはタッチパネルファームウェア）を更新後プログラムへ更新するか否かを示す更新フラグを記憶しているものとする。より具体的には更新フラグは、プログラムアップデート処理中に“更新”に設定され、それ以外は“通常”を示す値を保持している。更新フラグが“更新”を示す値である場合には、更新後プログラムへ更新することを示している。
ＲＯＭ１３は不揮発性のメモリであるとするが、たとえばＮＡＮＤ型フラッシュメモリのようにプロセッサ１１から所定の手続きを踏むことで、消去書き換えが可能なデバイスである。
【００１６】
図４は情報処理装置１の処理フローを示す図である。
次に、本実施形態による情報処理装置１の処理の詳細について順を追って説明する。
まず、情報処理装置１に備えられた起動スイッチの押下に基づいて当該情報処理装置１に電源６に電力出力が指示される。すると、制御処理部１１０は、ＲＯＭ１３のデータ領域１３６に格納されている更新フラグを読み取る。そして、制御処理部１１０は、読み取った更新フラグが示す値を判定し（ステップＳ１０１）、当該行進フラグが「通常」を示す場合には、通常の起動処理を行う（ステップＳ１０２）。
【００１７】
当該起動処理を行う場合、制御処理部１１０は、ハードウェアの初期化と、起動に必要なプログラムのＲＯＭ１３からの読み込みを行う。このとき、制御処理部１１０は、タッチパネルファームウェアをＲＯＭ１３のタッチパネルファームウェア領域１３３から読み込んで、バス４を介してタッチパネルデバイス２へ転送する（ステップＳ１０３）。タッチパネルデバイス２のＣＰＵ２２は、タッチパネルファームウェアを入力すると、当該タッチパネルファームウェアをメモリ２３へ格納する。そしてプロセッサ１１の起動時の処理により、情報処理装置１が起動する（ステップＳ１０４）。
【００１８】
情報処理装置１が起動すると、ユーザ操作や各プログラムに基づいて処理が行われる。そしてあるタイミングで制御処理部１１０がタッチパネルファームウェアのプログラムアップデートの開始を検出したとする。すると、制御処理部１１０はタッチパネルファームウェアのプログラムアップデートの処理を開始する（ステップＳ１０５）。タッチパネルファームウェアのプログラムアップデートの処理を開始すると制御処理部１１０は、まず、ＲＯＭ１３のタッチパネルファームウェア領域１３３に格納されているタッチパネルファームウェアを、ＲＯＭ１３内の前タッチパネルファームウェア領域１３５へ記録し、当該タッチパネルファームウェアのバックアップを行う（ステップＳ１０６）。
【００１９】
そして、制御処理部１１０は、新たなタッチパネルファームウェアのダウンロードを行う（ステップＳ１０７）。当該ダウンロードには、無線回路／モデム５を介して所定のダウンロードサーバへアクセスし、新たなタッチパネルファームウェアを当該ダウンロードサーバからダウンロードを行う。制御処理部１１０は、新たなタッチパネルファームウェアをダウンロードすると、その新たなタッチパネルファームウェアをＲＯＭ１３の更新プログラム領域１３４に格納する。そして、制御処理部１１０は、新たなタッチパネルファームウェアを更新プログラム領域１３４から読み取って、タッチパネルファームウェア領域１３３に記録し、これにより、格納されていた元のタッチパネルファームウェアを、新たなタッチパネルファームウェアへ更新する（ステップＳ１０８）。
【００２０】
制御処理部１１０は、ステップＳ１０８の更新が完了すると、データ領域１３６内に格納されている更新フラグを「通常」から「更新」へと書き換える（ステップＳ１０９）。そして、制御処理部１１０は、再起動処理を開始する（ステップＳ１１０）。
【００２１】
再起動処理によって情報処理装置１が再起動する。この再起動時には制御処理部１１０は、ＲＯＭ１３のデータ領域１３６に格納されている更新フラグを読み取る。そして制御処理部１１０は、ステップＳ１０１に移行し、読み取った更新フラグが示す値を判定する。ここで、ステップＳ１０９において更新フラグは「更新」へと書き換えられている。従って更新フラグは「更新」を示す。制御処理部１１０は、更新フラグが「更新」を示す場合、プログラム更新後の起動処理を開始する（ステップＳ１１１）。
【００２２】
当該プログラム更新後の起動処理においては、制御処理部１１０は、通常の起動処理を行わずに、まずＲＯＭ１３のタッチパネルファームウェア領域１３３に格納されている、更新後の新たなタッチパネルファームウェアを読み込んで、当該新たなタッチパネルファームウェアを、バス４を介してタッチパネルデバイス２へ転送する（ステップＳ１１２）。タッチパネルデバイス２のＣＰＵ２２は、新たなタッチパネルファームウェアを入力すると、当該新たなタッチパネルファームウェアをメモリ２３へ格納する。これにより新たなタッチパネルファームウェアの転送が終了する。そして、タッチパネルファームウェアの転送が終了すると、制御処理部１１０は動作確認部１１１へ、動作確認処理の開始を指示する。
【００２３】
次に、動作確認処理の開始の指示を受けた動作確認部１１１は、動作確認時間をＲＯＭ１３から読み込む。そして、動作確認部１１１は、動作確認処理を開始し（ステップＳ１１３）、動作確認時間のカウントダウンを行う（ステップＳ１１４）。このとき、動作確認部１１１は、表示装置３に、カウントダウン開始からカウントダウン終了までの時刻表示を制御する（ステップＳ１１５）。これにより、表示装置３には、カウントダウン開始の時刻表示（例えば１５秒）からカウントダウン終了時刻（０秒）まで１秒刻みでの表示が行われる。そして、動作確認部１１１は、当該動作確認時間の間に、タッチパネルデバイス２から信号を入力しないか、または、入力装置７からキャンセル信号を入力するかを判定する（ステップＳ１１６）。
【００２４】
そして、動作確認部１１１は、動作確認時間の間にタッチパネルデバイス２から信号を入力しない場合、または、作確認時間の間に入力装置７からキャンセル信号を入力した場合の何れかの場合には、タッチパネルデバイス２の動作異常と判定する。動作確認部１１１は、動作確認時間の間にタッチパネルデバイス２から信号を入力しない場合、または動作確認時間の間に入力装置７からキャンセル信号を入力した場合、の何れの場合にも当てはまらないと判定した場合には、タッチパネルデバイス２の動作正常と判定する。
【００２５】
制御処理部１１０は、動作確認部１１１より、タッチパネルデバイス２の動作異常または動作正常を示す信号を入力する。そして、制御処理部１１０は、動作確認部１１１より動作異常を示す信号を入力した場合には、ＲＯＭ１３内の前タッチパネルファームウェア領域１３５に格納されている更新前のタッチパネルファームウェアを読み込む（ステップＳ１１７）。そして、制御処理部１１０は、タッチパネルファームウェア領域１３３に格納されている更新後の新たなタッチパネルファームウェアを、更新前のタッチパネルファームウェアに書き換える（ステップＳ１１８）。
【００２６】
次に制御処理部１１０は、ＲＯＭ１３内のタッチパネルファームウェア領域１３３に格納されている更新前のタッチパネルファームウェアを読み込んで、バス４を介してタッチパネルデバイス２へ転送する（ステップＳ１１９）。タッチパネルデバイス２のＣＰＵ２２は、更新前のタッチパネルファームウェアを入力すると、当該更新前のタッチパネルファームウェアをメモリ２３へ格納する。つまり、タッチパネルデバイス２のＣＰＵ２２は、メモリ２３に格納されていた新たなタッチパネルファームウェアを更新前のタッチパネルファームウェアへ書き換える（ステップＳ１２０）。
【００２７】
そして、タッチパネルデバイス２のメモリ２３に格納されていた新たなタッチパネルファームウェアを更新前のタッチパネルファームウェアへ書き換えると、次に、制御処理部１１０は、ＲＯＭ１３内のデータ領域１３６に格納されている更新フラグを「更新」から「通常」へ書き換える（ステップＳ１２１）。なお、制御処理部１１０は、動作確認部１１１より、タッチパネルデバイス２の動作正常を示す信号を入力した場合にも、ステップＳ１２１の処理と同様に、ＲＯＭ１３内のデータ領域１３６に格納されている更新フラグを「更新」から「通常」へ書き換える。そして、制御処理部１１０は、その後の通常の起動処理と同様の処理を行う。これにより、情報処理装置１が起動する（ステップＳ１２２）。
【００２８】
以上、本発明の実施形態について説明したが、上述の処理によれば、制御対象となるタッチパネルデバイス２などの入力装置を制御するためのプログラムが更新された場合には、再起動し、当該再起動直後の通常の起動処理の前に、更新後プログラムによって入力装置の動作が正常に動作するかどうかの判定を行う。そして、更新後プログラムによる入力装置の動作異常である場合には、更新前プログラムによる制御に戻し、入力装置を制御する。
これにより、通常起動後に入力装置が制御できなくなっていまい、プログラム更新によってどのような操作も受け付けなくなってしまうような事態を防ぐことができる。
【００２９】
なお、上述の情報処理装置１は内部に、コンピュータシステムを有している。そして、上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【００３０】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００３１】
１・・・情報処理装置
２・・・タッチパネルデバイス
３・・・表示装置
４・・・バス
５・・・無線回路／モデム
６・・・電源
７・・・入力装置
１０・・・データ処理部
１１・・・プロセッサ
１２・・・ＲＡＭ（Random Access Memory）
１３・・・ＲＯＭ（Read Only Memory）
２１・・・タッチパネル
２２・・・ＣＰＵ（Central Processing Unit）
２３・・・メモリ
１１０・・・制御処理部
１１１・・・動作確認部
【図１】
0005849449.tif 000002
【図２】
0005849449.tif 000003
【図３】
0005849449.tif 000004
【図４】
0005849449.tif 000005