(57)【要約】【課題】携帯端末における差分データによるソフトウェア書き換え時の電源異常対策。【解決手段】配信された差分データによりソフトウェアの書き換え処理を行う手段と、書き換え処理の開始から終了までの間、書き換え処理中情報を記録する手段と、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する手段と、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する手段と、記録されていた場合に書き換え中のブロックが記録されているかを判断する手段と、記録されていた場合にそのブロック番号と対象ソフトウェア情報を読み出してソフトウェア配信サーバ２０に送信し、配信された該当ブロックの書き換え前のプログラムデータを、書き換え中の該当ブロックのプログラムデータと置き換えた後に差分データによる書き換え処理を再開する手段とを有する。【選択図】      図１
2005078502.tif 000002
【特許請求の範囲】
【請求項１】
携帯端末と、ソフトウェア配信サーバと、これらを相互に接続するネットワークとを備えた携帯端末ソフトウェアの差分書き換えシステムであって、
前記携帯端末は、前記ソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う手段と、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する手段と、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する手段と、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する手段と、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する手段と、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する手段と、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する手段とを有し、
前記ソフトウェア配信サーバは、前記携帯端末からの要求により該当するソフトウェアの差分データを抽出して配信する手段と、前記携帯端末から要求されたソフトウェアブロックのプログラムデータを抽出して送信する手段とを有することを特徴とする携帯端末ソフトウェアの差分書き換えシステム。
【請求項２】
前記電源異常は、電池パック外れまたは電池電圧の低下であることを特徴とする請求項１記載の携帯端末ソフトウェアの差分書き換えシステム。
【請求項３】
前記対象ソフトウェア情報は、前記携帯端末の機種情報と書き換え前のソフトウェアバージョン情報であることを特徴とする請求項１または２記載の携帯端末ソフトウェアの差分書き換えシステム。
【請求項４】
ネットワークを介してソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う手段と、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する手段と、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する手段と、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する手段と、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する手段と、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する手段と、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する手段とを有することを特徴とする携帯端末。
【請求項５】
前記電源異常は、電池パック外れまたは電池電圧の低下であることを特徴とする請求項４記載の携帯端末。
【請求項６】
前記対象ソフトウェア情報は、前記携帯端末の機種情報と書き換え前のソフトウェアバージョン情報であることを特徴とする請求項４または５記載の携帯端末。
【請求項７】
ネットワークを介してソフトウェア配信サーバから配信された差分データにより携帯端末のソフトウェアを書き換える携帯端末ソフトウェアの差分書き換え方法であって、
書き換え時に電源異常が発生し復旧した場合、電源異常発生時に書き換え中であったソフトウェアの箇所を前記携帯端末から前記ソフトウェア配信サーバに送信し、該当箇所の書き換え前のプログラムデータを前記ソフトウェア配信サーバから受信して置き換えた後に、その箇所から差分データによる書き換え処理を再開することを特徴とする携帯端末ソフトウェアの差分書き換え方法。
【請求項８】
ネットワークを介してソフトウェア配信サーバから配信された差分データにより携帯端末のソフトウェアを書き換える携帯端末ソフトウェアの差分書き換え方法であって、
差分データによるソフトウェアの書き換え処理を対象となるブロック毎に実行するステップと、書き換え処理の進捗状況を監視し、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了していないことを示す書き換え処理中情報と、進捗中のブロック番号と書き換え中または書き換え終了情報を含む書き換え状態情報とを逐次記録するステップと、書き換え処理時に電源異常が発生し復旧した場合に、書き換え処理中情報が記録されているかを判断するステップと、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断するステップと、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信し、該当ブロックの書き換え前のプログラムデータを要求するステップと、前記ソフトウェア配信サーバが該当箇所のプログラムデータを抽出して前記携帯端末に送信するステップと、前記携帯端末において、該当ブロックのプログラムデータを前記ソフトウェア配信サーバから受信したプログラムデータに置き換えた後、そのブロックから差分データによる書き換え処理を再開するステップとを有することを特徴とする携帯端末ソフトウェアの差分書き換え方法。
【請求項９】
ネットワークを介してソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う機能、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する機能、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する機能、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する機能、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する機能、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する機能、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する機能、をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯端末ソフトウェアの差分書き換えシステム，方法，携帯端末およびプログラムに関し、特に新旧ソフトウェアの差分データをネットワークを介して携帯端末に配信することによりソフトウェアの書き換えを行う、携帯端末ソフトウェアの差分書き換えシステム，方法，携帯端末およびプログラムに関する。
【背景技術】
【０００２】
近年、携帯電話機等の携帯端末においては、利用できる機能が飛躍的に増加してきており、それを実現するソフトウェアも大規模化してきている。そして、このソフトウェアの大規模化に伴い、ソフトウェア自体のバグや不具合等の増大も避けられなくなってきており、携帯端末業者や通信事業者（キャリア）はソフトウェア書き換えのための該当携帯端末の全回収（リコール）等により、これらの事態に対応している。
【０００３】
一方、更新ソフトウェアをネットワークを介して携帯端末に配信することによりソフトウェアの書き換えを行う例は、例えば、特開２００１−５３８９１号公報（特許文献１）に開示されている。この特許文献１に記載された発明は、携帯端末のメモリとして、携帯端末のソフトウェアを格納している第１記憶領域と、ダウンロードされた更新ソフトウェアを格納する第２記憶領域の２組のメモリを備え、ソフトウェアの更新に際しては、更新前のソフトウェアが記憶されている第１記憶領域に直接ダウンロードする第１の更新手段と、第２記憶領域にダウンロードされた更新ソフトウェアを第１記憶領域に転送することで更新を行う第２の更新手段とを有している。
【０００４】
しかし、特許文献１においては、更新ソフトウェア全体を携帯端末にダウンロードしているため、配信データ量が多いという問題や配信するための時間が長くかかるという問題があった。そこで、配信時間を極力減らし配信するデータ量を小さくする技術として、更新ソフトウェアの全プログラムデータを転送せずに、新旧のプログラムデータの差分を抽出した差分データのみを配信し、端末内部のプログラムデータと配信された差分データから新プログラムデータを復元してソフトウェアを書き換えるというものがある（例えば、特許文献２参照。）。
【０００５】
【特許文献１】特開２００１−５３８９１号公報（段落「０００９」、「００１０」、図２）
【０００６】
【特許文献２】特開２００２−２９７３９０号公報（段落「０００９」、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上述した特許文献２における差分データによるソフトウェア書き換えにおいては、以下に示すような電源異常時における対策が考慮されていないため、書き換え中に電源異常が発生すると、差分データによるソフトウェアの正常な書き換えが不可能となってしまう場合が考えられる。
【０００８】
差分データを利用したソフトウェア書き換えにおいては、端末内部に格納されている書き換え前のプログラムデータが正常値で存在していることが前提となっている。あるブロックのプログラムデータの書き換え中に、例えば電源異常（電池パック外れや電池電圧低下等）が発生すると書き換え処理は途中で中断し、電源復旧後のそのブロックからの書き換え再開時に、そのブロックのプログラムデータは書き換え前のプログラムデータとは異なっているため、差分データが適用できなくなってしまうという問題がある。その結果、更新ソフトウェアの全データ配信による書き換えが必要となってしまい、配信時間や配信データ量が増えてしまうことになる。
【０００９】
また、この問題を回避するために、端末内の更新前のプログラムデータのバックアップを行っておき、ソフトウェア書き換え中の電源異常等が発生した場合、このバックアップデータからプログラムデータを書き換え前の状態に戻して書き換える方法が考えられるが、バックアップ領域の確保の問題やバックアップ処理により書き換え時間が増加するという問題がある。
【００１０】
本発明は、以上の問題を解決する携帯端末ソフトウェアの差分書き換えシステム，方法，携帯端末およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の携帯端末ソフトウェアの差分書き換えシステムは、携帯端末と、ソフトウェア配信サーバと、これらを相互に接続するネットワークとを備えた携帯端末ソフトウェアの差分書き換えシステムであって、
前記携帯端末は、前記ソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う手段と、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する手段と、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する手段と、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する手段と、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する手段と、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する手段と、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する手段とを有し、
前記ソフトウェア配信サーバは、前記携帯端末からの要求により該当するソフトウェアの差分データを抽出して配信する手段と、前記携帯端末から要求されたソフトウェアブロックのプログラムデータを抽出して送信する手段とを有する。
【００１２】
本発明の第２の携帯端末ソフトウェアの差分書き換えシステムは、本発明の第１の携帯端末ソフトウェアの差分書き換えシステムにおいて、前記電源異常は、電池パック外れまたは電池電圧の低下であることを特徴とする。
【００１３】
本発明の第３の携帯端末ソフトウェアの差分書き換えシステムは、本発明の第１または第２の携帯端末ソフトウェアの差分書き換えシステムにおいて、前記対象ソフトウェア情報は、前記携帯端末の機種情報と書き換え前のソフトウェアバージョン情報であることを特徴とする。
【００１４】
本発明の第１の携帯端末は、ネットワークを介してソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う手段と、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する手段と、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する手段と、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する手段と、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する手段と、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する手段と、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する手段とを有する。
【００１５】
本発明の第２の携帯端末は、本発明の第１の携帯端末において、前記電源異常は、電池パック外れまたは電池電圧の低下であることを特徴とする。
【００１６】
本発明の第３の携帯端末は、本発明の第１または第２の携帯端末において、前記対象ソフトウェア情報は、前記携帯端末の機種情報と書き換え前のソフトウェアバージョン情報であることを特徴とする。
【００１７】
本発明の第１の携帯端末ソフトウェアの差分書き換え方法は、ネットワークを介してソフトウェア配信サーバから配信された差分データにより携帯端末のソフトウェアを書き換える携帯端末ソフトウェアの差分書き換え方法であって、
書き換え時に電源異常が発生し復旧した場合、電源異常発生時に書き換え中であったソフトウェアの箇所を前記携帯端末から前記ソフトウェア配信サーバに送信し、該当箇所の書き換え前のプログラムデータを前記ソフトウェア配信サーバから受信して置き換えた後に、その箇所から差分データによる書き換え処理を再開することを特徴とする。
【００１８】
本発明の第２の携帯端末ソフトウェアの差分書き換え方法は、ネットワークを介してソフトウェア配信サーバから配信された差分データにより携帯端末のソフトウェアを書き換える携帯端末ソフトウェアの差分書き換え方法であって、
差分データによるソフトウェアの書き換え処理を対象となるブロック毎に実行するステップと、書き換え処理の進捗状況を監視し、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了していないことを示す書き換え処理中情報と、進捗中のブロック番号と書き換え中または書き換え終了情報を含む書き換え状態情報とを逐次記録するステップと、書き換え処理時に電源異常が発生し復旧した場合に、書き換え処理中情報が記録されているかを判断するステップと、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断するステップと、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信し、該当ブロックの書き換え前のプログラムデータを要求するステップと、前記ソフトウェア配信サーバが該当箇所のプログラムデータを抽出して前記携帯端末に送信するステップと、前記携帯端末において、該当ブロックのプログラムデータを前記ソフトウェア配信サーバから受信したプログラムデータに置き換えた後、そのブロックから差分データによる書き換え処理を再開するステップとを有する。
【００１９】
本発明のプログラムは、ネットワークを介してソフトウェア配信サーバから配信された差分データによりソフトウェアのブロック毎の書き換え処理を行う機能、書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え処理中情報を記録する機能、書き換え処理の進捗に応じてブロック番号，書き換え中，書き換え終了を含む書き換え状態情報を記録する機能、電源異常からの復旧時に、書き換え処理中情報が記録されているかを判断する機能、書き換え処理中情報が記録されていた場合、書き換え状態情報を参照して書き換え中のブロックが記録されているかを判断する機能、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号と予め記憶された対象ソフトウェア情報を読み出して前記ソフトウェア配信サーバに送信する機能、前記ソフトウェア配信サーバから配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する機能、をコンピュータに実現させる。
【発明の効果】
【００２０】
本発明は、差分データによるソフトウェア書き換え時に電源異常が発生した場合、書き換え中で中断したブロック番号を携帯端末からサーバに送信し、該当箇所の書き換え前のプログラムデータをサーバから受信して置き換えた後にそのブロックからの差分データによる書き換え処理を再開するようにしたため、配信データ量や配信時間を大幅に増やすことなく、ソフトウェア書き換え中の電源異常に対応できるという効果がある。
【発明を実施するための最良の形態】
【００２１】
本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２２】
図１は、本発明を実施するための最良の形態の構成を示す図であり、携帯端末１０と、ソフトウェア配信サーバ２０と、これらを相互に接続するネットワーク１００とを備えている。
【００２３】
携帯端末１０は、ユーザに使用される携帯電話機，ＰＨＳ（Ｐersonal Ｈandyphone Ｓystem），ＰＤＡ（Ｐersonal Ｄigital Ａssistance）等の携帯情報処理装置であり、制
御部１１と、ソフトウェア書き換えプログラム記憶部１２と、ソフトウェア記憶部１３と、差分データ記憶部１４と、書き換え状態記憶部１５とを備えている。
【００２４】
制御部１１は、ＣＰＵ等の制御装置であり、プログラムによりその動作を制御される。この制御部１１は、配信された差分データによりソフトウェアのブロック毎に書き換え処理を行う手段と、ソフトウェアの書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了するまでの間、書き換え状態記憶部１５に書き換え処理中である旨の情報を記録する手段と、ブロック毎の書き換え処理の進捗に応じて書き換え中，書き換え終了等の書き換え状態を書き換え状態記憶部１５に記録する手段と、電源起動時に書き換え状態記憶部１５を参照し書き換え処理中であるかを判断する手段と、書き換え処理中であった場合、書き換え状態記憶部１５を参照し書き換え中のブロックが記録されているかを判断する手段と、書き換え中のブロックが記録されていた場合に、書き換え中のブロック番号を端末内部に登録された自端末の機種情報（機種名，機種コード等），ソフトウェアバージョン（ソフトウェア版数）とともにソフトウェア配信サーバ２０に送信する手段と、ソフトウェア配信サーバ２０から配信された該当ブロックの書き換え前のプログラムデータを受信し、書き換え中の該当ブロックのプログラムデータを受信したプログラムデータに置き換えた後に差分データによる書き換え処理を再開する手段とを備えている。
【００２５】
ソフトウェア書き換えプログラム記憶部１２は、マスクＲＯＭであり、差分データによる携帯端末１０のソフトウェア書き換え処理を制御するソフトウェア書き換えプログラムを格納している。このソフトウェア書き換えプログラムは、制御部１１に読み込まれ制御部１１の動作を制御する。ソフトウェア記憶部１３は、フラッシュＲＯＭ等のＥＰＲＯＭであり、携帯端末１０のソフトウェアを格納している。差分データ記憶部１４は、ＥＰＲＯＭであり、ソフトウェア配信サーバ２０から受信した差分データを格納する。この差分データには、差分データが適用されるブロック情報や、差分データ適用後のソフトウェアバージョン情報も含まれている。書き換え状態記憶部１５は、ＥＰＲＯＭであり、書き換え処理中情報（書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了していないことを示す情報）と、書き換え状態情報（進捗中のブロック番号と書き換え中または書き換え終了情報）とを記憶する。
【００２６】
ソフトウェア配信サーバ２０は、ワークステーション・サーバ等の情報処理装置であり、携帯端末業者や通信事業者（キャリア）等により設置される。このソフトウェア配信サーバ２０は、制御部２１と、ソフトウェア記憶部２２と、差分データ記憶部２３とを備えている。
【００２７】
制御部２１は、ＣＰＵ等の制御装置であり、プログラムによりその動作を制御される。この制御部２１は、携帯端末１０からの要求により該当する差分データを抽出して配信する手段と、携帯端末１０から要求されたソフトウェアブロックのプログラムデータを抽出して送信する手段とを備えている。
【００２８】
ソフトウェア記憶部２２は、ＥＰＲＯＭであり、携帯端末１０の各機種に対応したソフトウェアがバージョン（版数）別に格納されている。差分データ記憶部２３は、ＥＰＲＯＭであり、各ソフトウェアのバージョン間の差分データが格納されている。この差分データはソフトウェアのブロック毎に対応しており、差分データが適用されるブロック情報や、差分データ適用後のソフトウェアバージョン情報も含まれている。
【００２９】
次に、本発明を実施するための最良の形態の動作について図１および図２を参照して説明する。図２は本発明を実施するための最良の形態の動作を示すフローチャートである。
【００３０】
図２を参照すると、まず、ユーザは携帯端末１０に備えられたソフトウェア書き換えメニュー上で書き換え開始を選択する。携帯端末１０の制御部１１は、図示しない記憶部に登録された自端末の機種情報，ソフトウェアバージョン情報をソフトウェア配信サーバ２０に送信し、ソフトウェアの書き換えを要求する（ステップＡ１）。書き換え要求を受けたソフトウェア配信サーバ２０の制御部２１は、ソフトウェア記憶部２２および差分データ記憶部２３を参照して該当する差分データを抽出し（ステップＡ２）、抽出した差分データを携帯端末１０に配信する（ステップＡ３）。
【００３１】
携帯端末１０の制御部１１は、受信した差分データを差分データ記憶部１４に格納し（ステップＡ４）、差分データによる書き換え処理を実行する。この書き換え処理は、ソフトウェア記憶部１３に格納されたソフトウェアの対象となるブロックを差分データにより書き換えることで行われ、その進捗状況は制御部１１により監視され、逐次書き換え状態記憶部１５に記録される。記録される情報は、書き換え処理中情報（書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了していないことを示す情報）と、書き換え状態情報（進捗中のブロック番号と書き換え中または書き換え終了情報）である（ステップＡ５）。
【００３２】
この状態で電源異常（電池パック外れによる電源遮断や、書き換え動作に必要な所定値以下への電池電圧の低下等）が発生しなければ、制御部１１はそのまま書き換え処理を継続し、ソフトウェア書き換えを終了する（ステップＡ６→ステップＡ１５）。
【００３３】
ソフトウェア書き換え処理中に電源異常が発生すると、動作電圧の提供ができなくなるため書き換え処理は中断される。なお、電池電圧の所定値以下への低下が図示しない検出手段により検出された場合、制御部１１はその旨を表示してユーザに充電を促す（ステップＡ６→ステップＡ７）。
【００３４】
その後、電池パックの再装着または電池の充電により携帯端末１０の電源が復旧すると（ステップＡ８）、制御部１１は、書き換え処理中情報（書き換え処理が開始され書き換え対象の全ブロックの書き換えが終了していないことを示す情報）が書き換え状態記憶部１５に保存されているかを確認する（ステップＡ９）。
【００３５】
ステップＡ９で保存されていなかった場合は、書き換え再開の必要がないため、制御部１１は処理を終了する。保存されていた場合は、書き換えが終了しておらず再開処理が必要であるため、制御部１１は次に書き換え状態記憶部１５の書き換え状態情報を参照し、書き換え中のブロック番号が保存されているかを確認する（ステップＡ１０）。
【００３６】
ステップＡ１０において、書き換え中のブロック番号が保存されていなかった場合は、制御部１１は書き換え終了と記録されているブロック番号を書き換え状態記憶部１５から読み出し、差分データ記憶部１４からそのブロック番号以降のブロックに適用される差分データを取り出して書き換え処理を再開する（ステップＡ１０→ステップＡ１４）。
【００３７】
ステップＡ１０において、書き換え中のブロック番号が保存されていた場合は、制御部１１はそのブロック番号を読み出し、図示しない記憶部に登録された自端末の機種情報，ソフトウェアバージョン情報とともにソフトウェア配信サーバ２０に送信し、該当ブロックの書き換え前のプログラムデータを要求する（ステップＡ１１）。
【００３８】
ソフトウェア配信サーバ２０の制御部２１は、受信した機種情報およびソフトウェアバージョン情報を基にソフトウェア記憶部２２を参照して該当ソフトウェアを判別し、受信したブロック番号に格納されたプログラムデータ（オブジェクトコード）を携帯端末１０に送信する（ステップＡ１２）。
【００３９】
携帯端末１０の制御部１１は、ソフトウェア記憶部１３の該当ブロック（書き換え中で中断したブロック）のプログラムデータを、ソフトウェア配信サーバ２０から受信したプログラムデータ（書き換え前のプログラムデータ）に置き換え（ステップＡ１３）、そのブロックから差分データによる書き換え処理を再開する（ステップＡ１４）。そして、受信した全ての差分データの適用が終了することにより、制御部１１はソフトウェア書き換え処理を終了する。なお、この終了に伴い、制御部１１は、書き換え状態記憶部１５の書き換え処理中情報や書き換え状態情報を消去するとともに、図示しない記憶部に登録されたソフトウェアバージョン情報を、差分データに含まれた書き換え後のソフトウェアバージョン情報に更新する（ステップＡ１５）。
【図面の簡単な説明】
【００４０】
【図１】本発明を実施するための最良の形態の構成を示す図である。
【図２】本発明を実施するための最良の形態の動作を示すフローチャートである。
【符号の説明】
【００４１】
１０    携帯端末
１１    制御部
１２    ソフトウェア書き換えプログラム記憶部
１３    ソフトウェア記憶部
１４    差分データ記憶部
１５    書き換え状態記憶部
２０    ソフトウェア配信サーバ
２１    制御部
２２    ソフトウェア記憶部
２３    差分データ記憶部
１００    ネットワーク
【図１】
2005078502.tif 000003
【図２】
2005078502.tif 000004