JP2005135187A - 電子機器および組み込みソフトウェア更新方法 - Google Patents
電子機器および組み込みソフトウェア更新方法 Download PDFInfo
- Publication number
- JP2005135187A JP2005135187A JP2003371096A JP2003371096A JP2005135187A JP 2005135187 A JP2005135187 A JP 2005135187A JP 2003371096 A JP2003371096 A JP 2003371096A JP 2003371096 A JP2003371096 A JP 2003371096A JP 2005135187 A JP2005135187 A JP 2005135187A
- Authority
- JP
- Japan
- Prior art keywords
- program module
- module
- electronic device
- program
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】電子機器によって実行される組み込みソフトウェアの更新をプログラムモジュール間の依存関係を考慮した状態で自動的に正しく実行する。
【解決手段】ホームネットワークサーバ1は、組み込みソフトウェアの現在の構成を示すソフトウェア構成情報をモジュール提供サーバ2に通知し、ホームネットワークサーバ1にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報をモジュール提供サーバ2に要求する。ホームネットワークサーバ1は、更新リスト情報に基づいて、最新プログラムモジュールと最新プログラムモジュールの実行に必要な他のプログラムモジュールとを含むプログラムモジュール群をモジュール提供サーバ2からダウンロードし、ダウンロードされたプログラムモジュール群を用いて、組み込みソフトウェアを更新する。
【選択図】 図1
【解決手段】ホームネットワークサーバ1は、組み込みソフトウェアの現在の構成を示すソフトウェア構成情報をモジュール提供サーバ2に通知し、ホームネットワークサーバ1にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報をモジュール提供サーバ2に要求する。ホームネットワークサーバ1は、更新リスト情報に基づいて、最新プログラムモジュールと最新プログラムモジュールの実行に必要な他のプログラムモジュールとを含むプログラムモジュール群をモジュール提供サーバ2からダウンロードし、ダウンロードされたプログラムモジュール群を用いて、組み込みソフトウェアを更新する。
【選択図】 図1
Description
本発明は組み込みソフトウェアによって動作する電子機器およびその組み込みソフトウェアの更新方法に関する。
近年、ビデオレコーダ、TV、ネットワーク機器のような様々な電子機器がいわゆる情報家電として開発されている。これら電子機器は、その電子機器にあらかじめインストールされた組み込みソフトウェアの制御の下に動作するように設計されている。
このため、組み込みソフトウェアによって動作する電子機器においては、その組み込みソフトウェアを更新することにより、動作の不具合の解消、新たな機能の追加等を行うことができる。
ソフトウェアの更新する方法としては、新バージョンのプログラムモジュールと旧バージョンのプログラムモジュールとの間の差分のみをセンタから端末にダウンロードする技術が知られている(例えば、特許文献1参照。)。
特開2001−202234号公報
しかし、特許文献1においては、プログラムモジュール間の依存関係については考慮されていない。組み込みソフトウェアは、様々なプログラムモジュールの集合から構成されている。通常、プログラムモジュール間には依存関係が存在する。あるプログラムモジュールを実行するためには、他のあるプログラムモジュールが電子機器にすでにインストールされていることが必要となる。しかし、ユーザ自身がプログラムモジュール間の依存関係を考慮してダウンロードすべきプログラムモジュールを選択することは極めて困難である。
よって、組み込みソフトウェアの更新に必要なプログラムモジュール群をプログラムモジュール間の依存関係を考慮して自動的にダウンロードするための新たな仕組みが必要である。
本発明は上述の事情を考慮してなされたものであり、プログラムモジュール間の依存関係を考慮した状態で組み込みソフトウェアの更新を自動的に正しく実行することが可能な電子機器および組み込みソフトウェア更新方法を提供することを目的とする。
上述の課題を解決するため、本発明は、ネットワークを介してサーバとの通信を実行可能な電子機器において、前記電子機器にインストールされた組み込みソフトウェアの現在の構成を示すソフトウェア構成情報を前記サーバに通知し、前記電子機器にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報を前記サーバに要求する手段と、前記サーバから送信される前記更新リスト情報に基づいて、前記最新プログラムモジュールと前記最新プログラムモジュールの実行に必要な前記他のプログラムモジュールとを含むプログラムモジュール群を前記サーバからダウンロードする手段と、前記ダウンロードされたプログラムモジュール群を用いて、前記組み込みソフトウェアを更新する更新処理を実行する手段とを具備することを特徴とする。
本発明によれば、プログラムモジュール間の依存関係を考慮した状態で組み込みソフトウェアの更新を自動的に正しく実行することが可能となる。
以下、図面を参照して、本発明の実施形態を説明する。
図1には、本発明の一実施形態に係る電子機器の構成が示されている。この電子機器はマイクロプロセッサを含む組み込みシステムを内蔵しており、その電子機器にインストールされた組み込みソフトウェアによって動作する。組み込みソフトウェアは組み込みシステムの動作、つまり電子機器の動作を制御するソフトウェアである。この電子機器は、ホームネットワークサーバとして実現されている。
図1には、本発明の一実施形態に係る電子機器の構成が示されている。この電子機器はマイクロプロセッサを含む組み込みシステムを内蔵しており、その電子機器にインストールされた組み込みソフトウェアによって動作する。組み込みソフトウェアは組み込みシステムの動作、つまり電子機器の動作を制御するソフトウェアである。この電子機器は、ホームネットワークサーバとして実現されている。
このホームネットワークサーバ1は、通信機能とビデオレコーダ機能とを搭載した電子機器である。ホームネットワークサーバ1は、ユーザからの要求に応じて、放送番組データの視聴サービスをユーザに提供する。さらに、ホームネットワークサーバ1は、ブロードバンドルータ11を介して、インターネット3のような外部ネットワークに接続されている。ブロードバンドルータ11は、有線または無線のLANを介してパーソナルコンピュータ4に接続されている。ブロードバンドルータ11は、家庭内のパーソナルコンピュータ4とインターネット3上の各種Webサーバとの間のデータ転送を実行する。
ホームネットワークサーバ1は、TV番組のような放送番組データの受信および記録を行う機能を有する。ホームネットワークサーバ1は、現在放送中の放送番組データまたはホームネットワークサーバ1内のハードディスクドライブ14にすでに記録された放送番組データを、有線または無線のLANを介してパーソナルコンピュータ4に送信することができる。また、ホームネットワークサーバ1は、ユーザによって入力された録画予約情報で指定される放送番組データを記録する機能も有している。
ホームネットワークサーバ1の動作は、ホームネットワークサーバ1にインストールされた組み込みソフトウェア(カーネル、ドライバ群、ライブラリ、アプリケーション)によって制御される。ホームネットワークサーバ1は、組み込みソフトウェアを自動更新する機能を有している。組み込みソフトウェアの自動更新は、ホームネットワークサーバ1とインターネット3上のモジュール提供サーバ2との間の通信を用いて実行される。モジュール提供サーバ2は、例えばHTTP(Hyper Text Transfer Protocol)サーバによって実現されている。モジュール提供サーバ2とホームネットワークサーバ1との間の通信は、HTTPで規定された通信プロトコルに従って実行される。もちろん、モジュール提供サーバ2とホームネットワークサーバ1との間で取り決めた専用の通信プロトコルを用いても良い。
ブロードバンドルータ11はルータとして機能するデバイスである。ブロードバンドルータ11はWANコネクタとLANコネクタを有する。WANコネクタは、ADSL、CATVのような通信回線を介してインターネット3に接続される。LANコネクタは家庭内の有線LANを介してパーソナルコンピュータ4に接続される。ブロードバンドルータ11はさらに無線LANデバイスを内蔵しており、パーソナルコンピュータ4に無線接続することもできる。ホームネットワークサーバ1も家庭内の有線または無線のLANを介してブロードバンドルータ11に接続される。
ブロードバンドルータ11は、インターネット3上のWebサーバとパーソナルコンピュータ4との間のデータ転送を実行する。さらに、ブロードバンドルータ11は、ホームネットワークサーバ1によって受信された放送番組データをパーソナルコンピュータ4に送信する機能も有する。なお、ブロードバンドルータ11の機能をホームネットワークサーバ1が有していてもよい。
ホームネットワークサーバ1は、TVチューナ12、MPEG2エンコーダ13、ハードディスクドライブ14、オーディオ・ビデオ(AV)出力インタフェース部(AV出力I/F)15、ユーザインタフェース部(ユーザI/F)16、CPU17、メモリ18、ハードディスクドライブ19、およびMPEG2デコーダ20を備えている。
TVチューナ12はTVアンテナに接続されている。TVチューナ12はTV放送番組のような放送番組データの受信および局選択を実行するデバイスである。TVチューナ12はユーザによって指定されたあるチャネルの放送番組データを受信する。MPEG2エンコーダ13は、TVチューナ12によって受信された放送番組データを圧縮符号化する。ハードディスクドライブ14は放送番組データを格納する記憶装置である。このハードディスクドライブ14はMPEG2エンコーダ13によって圧縮符号化された放送番組データを記憶する。
AV出力I/F15は、ハードディスクドライブ14に記録された放送番組データをTV受像機5のような外部AV機器に出力する。ハードディスクドライブ14に記録された放送番組データは圧縮符号化されているので、MPEG2デコーダ20によってデコードされた後にAV出力I/F15を介して外部AV機器に出力される。ユーザI/F16は、GUIを用いてユーザとの対話を行うデバイスであり、ユーザからの操作要求を入力する入力装置、およびホームネットワークサーバ1に設けられた表示装置に操作画面を表示する出力装置とを含む。
操作画面は、AV出力I/F15を通じてTV受像機5のような外部表示装置に表示することもできる。この場合、ユーザはTV受像機5に表示される操作画面を見ながら、赤外線リモコンユニットを操作することにより、操作要求をホームネットワークサーバ1に発行することができる。また、操作画面は、ブロードバンドルータ11、および有線又は無線のLANを通じて、パーソナルコンピュータ4に表示することもできる。この場合、ユーザはパーソナルコンピュータ4の表示装置に表示される操作画面を見ながらパーソナルコンピュータ4を操作することにより、操作要求を有線又は無線のLANを通じてホームネットワークサーバ1に発行することができる。
CPU17はホームネットワークサーバ1の動作を制御するプロセッサであり、組み込みソフトウェアを実行する。組み込みソフトウェアは、複数のプログラム、つまりカーネル、ドライバ群、ライブラリ群、アプリケーションプログラム群を含む。さらに、本実施形態では、組み込みソフトウェアは、その組み込みソフトウェアの自動更新機能を実現するためのプログラム群として、ユーザ通知部102、モジュール情報取得部103、モジュール取得部104、モジュール更新処理部105、およびプロセス管理部106等を含む。CPU17は、これらユーザ通知部102、モジュール情報取得部103、モジュール取得部104、モジュール更新処理部105、およびプロセス管理部106を実行することによって、組み込みソフトウェアの自動更新のための処理を実行する。組み込みソフトウェアの更新は、それを構成する個々のプログラムモジュール単位で行われる。各プログラムモジュールはある一つの機能を実行するためのプログラム群(ソフトウェア・パッケージともいう)であり、少なくとも1つのプログラムを含む。
ユーザ通知部102は、ホームネットワークサーバ1のユーザに対してユーザインタフェース部16を介して各種情報を通知する。モジュール情報取得部103は、組み込みソフトウェアの現在の構成を示すソフトウェア構成情報をモジュール提供サーバ2に通知して、ホームネットワークサーバ1にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報をモジュール提供サーバ2に対して要求する機能を持つ。ソフトウェア構成情報は、組み込みソフトウェアを構成するプログラムモジュールそれぞれのプログラム名およびバージョン番号を示す。
モジュール取得部104は、モジュール提供サーバ2から送信される更新リスト情報に基づいて、モジュール提供サーバ2から最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを含むプログラムモジュール群をモジュール提供サーバ2からダウンロードする機能を持つ。モジュール更新処理部105は、モジュール配信サーバ2からダウンロードされたプログラムモジュール群を用いて、組み込みソフトウェアを更新する更新処理を実行する機能を持つ。プロセス管理部106は、組込機器ソフトウェアを構成する各プログラム(各プロセス)の状態を管理し、カーネルおよびアプリケーションの各々を起動、停止する機能をもつ。組み込みソフトウェアに含まれるアプリケーションプログラムは、例えば、録画、再生などの処理を実行する機能をもつ。
モジュール提供サーバ2は最新のプログラムモジュール群をホームネットワークサーバ1に提供するためのサーバコンピュータである。モジュール提供サーバ2は、モジュール蓄積部202を備えている。モジュール蓄積部202は、組込機器ソフトウェアに適用可能な、バージョンアップされたプログラムモジュール群を蓄積する記憶装置である。さらに、モジュール提供サーバ2は、モジュール配信部203、モジュールバージョン管理部204、モジュールバージョン情報配信部205、および個体情報管理部206を有している。これらモジュール配信部203、モジュールバージョン管理部204、モジュールバージョン情報配信部205、および個体情報管理部206はそれぞれモジュール提供サーバ2によって実行されるプログラムとして実現されている。
モジュール配信部203は、ホームネットワークサーバ1からのダウンロード要求に応じて、バージョンアップされたプログラムモジュールをホームネットワークサーバ1へ配信する機能をもつ。モジュールバージョン管理部204は、モジュール管理データベース301を用いて、モジュール蓄積部202に蓄積された各プログラムモジュールのバージョンを管理する。モジュール管理データベース301は、図2に示すように、モジュール蓄積部202に蓄積された各プログラムモジュール毎に、そのモジュール名、バージョン番号、依存モジュール名の3つの属性を管理する。ここで、依存モジュールとは、あるプログラムモジュールの実行に必要となるプログラムモジュールである。
モジュールバージョン情報配信部205は、ホームネットワークサーバ1にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュール(依存モジュール)とを示す更新リスト情報を、ホームネットワークサーバ1に提供する機能を持つ。個体情報管理部206は、個体情報管理データベース302を用いて、ホームネットワークサーバ1によるプログラムモジュールの更新履歴を管理する。モジュール提供サーバ2は、インターネット3に接続された複数のホームネットワークサーバ1によって共有される。このため、個体情報管理部206は、ホームネットワークサーバ毎に、プログラムモジュールの更新履歴を管理する。
個体情報管理データベース302は、図3に示すように、各ホームネットワークサーバに固有の個体識別番号毎に、そのホームネットワークサーバにダウンロードされたプログラムモジュールのモジュール名およびバージョン番号、さらには更新フラグを管理する。更新フラグは、ホームネットワークサーバ1へのプログラムモジュールのダウンロード時に更新失敗を示す値にセットされる。そして、更新フラグは、プログラムモジュールの更新が成功したことを示すホームネットワークサーバ1からの通知に応答して、更新成功を示す値に変更される。
次に、プログラムモジュール更新手順を説明する。
ホームネットワークサーバ1のプログラムモジュール更新機能の利用に先立ち、初期設定処理を行うことが必要となる。初期設定処理は、ホームネットワークサーバ1の個体識別番号をモジュール提供サーバ2に登録するデバイス登録処理である。
図4のフローチャートは初期設定処理の手順を示している。
例えばホームネットワークサーバ1のユーザがユーザインタフェース16によって表示される操作画面上の初期設定ボタンを押すと(ステップS101のYES)、ホームネットワークサーバ1のCPU17は、インターネット3を介してモジュール提供サーバ2との接続を確立し、デバイス登録要求をモジュール提供サーバ2に送信する(ステップs102)。モジュール提供サーバ2の個体情報管理部206は、ホームネットワークサーバ1から送信されたデバイス登録要求に応答して、ホームネットワークサーバ1に固有の個体識別番号を発行し、その個体識別番号を個体情報管理データベース302に保存する(ステップS103)。この後、個体情報管理部206は、発行した個体識別番号をホームネットワークサーバ1に送信する。ホームネットワークサーバ1のCPU17は、モジュール提供サーバ2から送信される個体識別番号をハードディスクドライブ19に保存する。
組込機器ソフトウェアの開発事業者は、その組み込みソフトウェアを構成するプログラムモジュール(モジュールA、モジュールB、モジュールC、…)のバージョンアップを行うと、各プログラムモジュールを例えばRPM(RedHat Package Manager)などのファイル形式でパッケージ化して、モジュール提供サーバ2のモジュール蓄積部202へ蓄積する。バージョンアップの理由は、プログラムモジュールのバグ修正、性能向上、機能強化など様々である。開発事業者がモジュールのパッケージ化を行う際には、当該開発事業者の身元を明確にするための署名を行うようにしてもよい。
開発事業者は、新バージョンのプログラムモジュールをモジュール蓄積部202へ蓄積すると共に、新バージョンのプログラムモジュールのモジュール名、バージョン番号、依存モジュール名をモジュール管理データベース301に登録する。
例えば、モジュールCを実行するためにはモジュールBが必要であり、モジュールBを実行するためにはモジュールAが必要である場合を想定する。この場合、図2に示されているように、モジュールCに対応する依存モジュールとしてモジュールBが、そしてモジュールBに対応する依存モジュールとしてモジュールAがモジュール管理データベース301に登録される。
次に、図5および図6のフローチャートを参照して、組み込みソフトウェアの更新のために実行される具体的な手順について説明する。
組込機器ソフトウェアのモジュール情報取得部103は、定期的に、個体識別番号およびソフトウェア構成情報を更新リスト情報取得要求としてモジュール提供サーバ2に対して送信し、これにより更新リスト情報をモジュール提供サーバ2に要求する(ステップS111)。このステップS111においては、モジュール情報取得部103は、まず、ハードディスクドライブ19に現在インストールされているプログラムモジュールそれぞれのバージョン番号を収集する。組み込みソフトウェアの現在の構成を示す各プログラムモジュールのモジュール名およびバージョン番号は、組込機器ソフトウェア内にデータベースとして管理しても良い。モジュール情報取得部103からモジュール提供サーバ2に通知されるソフトウェア構成情報は、図8に示されているように、組込機器ソフトウェアを構成するプログラムモジュール群それぞれのモジュール名とバージョン番号とを示すリストから構成されている。ソフトウェア構成情報の通知は、例えば毎日決まった時刻に実行される。また、複数のホームネットワークサーバからの通知が同時に発生するのを防止するために、各ホームネットワークサーバが、乱数を使って計算された時刻、あるいは個体識別番号を使って計算された時刻に、自身の組み込みソウトウェアに対応するソフトウェア構成情報をモジュール提供サーバ2に通知しても良い。
モジュール提供サーバ2のモジュールバージョン管理部204は、バージョン情報を送信したホームネットワークサーバ1の個体識別番号が個体情報データベース302に登録されていることを個体情報管理部206を通じて確認した後、更新リスト情報の作成処理を実行する(ステップS112)。このステップS112では、モジュールバージョン管理部204は、ホームネットワークサーバ1から通知されたソフトウェア構成情報とモジュール管理データベース301とに基づいて、ソフトウェア構成情報で指定されたプログラムモジュール毎に、そのプログラムモジュールが最新のものであるかどうかを判別する。ソフトウェア構成情報で通知されたプログラムモジュール群の中に最新のものでないプログラムモジュールが含まれている場合には、モジュールバージョン管理部204は、ホームネットワークサーバ1にインストール可能な最新のプログラムモジュールとその最新プログラムモジュールに対応する依存モジュールとを示す更新リスト情報を作成する。更新リスト情報の例を図9に示す。プログラムモジュール間の依存関係によってはそれらプログラムモジュールをインストールする順番にも制約が加えられることがある。例えば、モジュールCをアップデートするためにはモジュールBを先にアップデートする必要があり、モジュールBをアップデートするためにはモジュールAを先にアップデートする必要がある、という場合である。この場合、インストールする順番を示す情報が図9のように更新リスト情報に付加される。なお、インストールする順番を示す情報の代わりに、モジュールCに対応する依存モジュールがモジュールBであり、モジュールBに対応する依存モジュールがモジュールAであることを示す依存関係情報を、更新リスト情報に付加しても良い。
モジュール提供サーバ2のモジュールバージョン情報配信部205は、ソフトウェア構成情報を送信したホームネットワークサーバ1に対して、モジュールバージョン管理部204によって作成された更新リスト情報を送信する(ステップS113)。
更新リスト情報を受信すると、ホームネットワークサーバ1のモジュール情報取得部104は、ユーザ通知部102を用いて図10に示すような更新通知ダイアログを操作画面上に表示することにより、バージョンアップされたプログラムが存在することをユーザに通知する(ステップS114)。更新通知ダイアログは、バージョンアップの準備が出来たことを示すメッセージ、「詳細」ボタン401、「キャンセル」ボタン402から構成される。「詳細」ボタン401は、最新モジュールの一覧を表示するためのボタンである。一方、「キャンセル」ボタン402は自動更新処理を終了するためのボタンである。
ユーザによって「詳細」ボタン401が押されたならば、ユーザ通知部102は、更新リスト情報に基づいて、最新プログラムモジュールの一覧を示す図11のようなモジュール選択ダイアログを表示する(ステップS115)。モジュール選択ダイアログは、更新リスト情報に含まれるプログラムモジュール毎にモジュール名およひそのモジュールの説明を表示する。モジュール選択ダイアログには、更新リスト情報で指定される全てのモジュール群(依存モジュールも含む)を表示してもよいが、バージョンアップされた最新のプログラムモジュール群の一覧のみを表示し、依存モジュール群の表示を省略してもよい。さらに、モジュール選択ダイアログは、更新リスト情報に含まれるプログラムモジュール毎にチェックボックスを表示する。対応するチェックボックスがユーザによってチェックされたプログラムモジュールがダウンロード対象として選択される。
モジュール取得部104は、モジュール選択ダイアログ上で選択された各プログラムモジュールおよびその選択された各プログラムモジュールに対応する依存モジュールをダウンロードするためのダウンロードリストを作成する(ステップS116)。このダウンロードリスト作成処理は、図7のフローチャートに示す手順で実行される。モジュール取得部104は、モジュール選択ダイアログ上でプログラムモジュールが選択されると、その選択されたプログラムモジュールのモジュール名をダウンロードリストに追加する(ステップS131,S132)。次いで、モジュール取得部104は、更新リスト情報に含まれる依存関係情報または更新リスト情報に含まれるインストール順を示す情報に基づいて、選択されたプログラムモジュールに対応する依存モジュールが存在するかどうかを判断する(ステップS133)。存在するならば(ステップS133のYES)、モジュール取得部104は、選択されたプログラムモジュールに対応する依存モジュールのモジュール名をダウンロードリストに追加する(ステップS134)。
作成されたダウンロードリストに従い、モジュール取得部104は、プログラムモジュール群をモジュール提供サーバ2からダウンロードする(ステップS117)。このステップS117では、モジュール取得部104は、ダウンロードリストに登録されたプログラムモジュール毎に、その取得要求を個体識別番号と共にモジュール提供サーバ2に送信する。モジュール提供サーバ2のモジュール配信部203は、取得要求で指定されるプログラムモジュールをホームネットワークサーバ1に送信する。モジュール提供サーバ2からホームネットワークサーバ1にプログラムモジュールがダウンロードされると、ホームネットワークサーバ1はダウンロードの完了をモジュール提供サーバ2に通知する。この通知を受け、モジュール提供サーバ2は、個体情報管理部206を用いて、ホームネットワークサーバ1にダウンロードされたプログラムモジュールに対応する個体情報管理データベース302内の更新フラグを失敗にセットする。
このように、ホームネットワークサーバ1は、モジュール提供サーバ2から送信される更新リスト情報を参照してダウンロードすべきプログラムモジュールを決定する。これにより、ユーザによってどのプログラムモジュールが選択された場合でも、その選択されたプログラムモジュールのみならず、その選択されたプログラムモジュールに対応する依存モジュールをもモジュール提供サーバ2から自動的にダウンロードすることが出来る。
プログラムモジュール群がダウンロードされた後、モジュール更新処理部118は、プロセス管理部106を用いて、組み込みソフトウェアに含まれるアプリケーションプログラムの非動作期間を検出する(ステップS118)。そして、モジュール更新処理部118は、検出された非動作期間に、つまりアプリケーションプログラムが実行されていない空き時間に、ダウンロードされたプログラムモジュール群を用いて組み込みソフトウェアを更新する更新処理を実行する(ステップS119,S120)。もしアプリケーションプログラムが現在実行されておらず、且つ一定時間後に開始される予定もないならば、更新処理が即座に開始される。ステップS120における更新処理においては、ダウンロードされたプログラムモジュール群がハードディスクドライブ19にインストールされる。この場合、既にインストールされている旧バージョンのプログラムモジュールが最新バージョンのプログラムモジュールによって更新される。本実施形態では、アプリケーションプログラムの非動作期間に更新処理が実行される。よって、アプリケーションプログラムが異常終了されることなく、アプリケーションプログラムのプログラムモジュールを正常に更新することができる。
更新処理が成功したならば(ステップS121のYES)、モジュール更新処理部118は、更新処理が成功したことをモジュール提供サーバ2に通知する(ステップS122)。このステップS122では、モジュール更新処理部118は、更新処理が成功したプログラムモジュール毎に、そのモジュール名とバージョン番号をモジュール提供サーバ2に通知する。モジュール提供サーバ2は、個体情報管理データベース302内の該当する更新フラグを成功に変更する。一方、更新処理が失敗したならば(ステップS121のNO)、モジュール更新処理部118は、ユーザインタフェース16を通じてエラーメッセージを操作画面上に表示する(ステップS123)。
なお、図5に破線で示されているように、ステップS114〜S116の処理をスキップしてもよい。この場合、モジュール取得部104は、モジュール提供サーバ2から送信される更新リスト情報で指定される全てのプログラムモジュールをダウンロードすべきモジュールとして自動的に選択し、それら全てのプログラムモジュールをモジュール提供サーバ2からダウンロードする(ステップS117)。例えば、自動更新モードとユーザ選択モードとを予め用意しておくことが好ましい。ホームネットワークサーバ1のCPU17は、ユーザによって自動更新モードが予め選択されている時にはステップS114〜S116の処理をスキップし、またユーザによってユーザ選択モードが予め選択されている時にはステップS114〜S116の処理を実行する。
次に、図12を参照して、非動作期間検出処理の例を説明する。
ホームネットワークサーバ1においては、録画予約情報で指定される放送番組データを記録する録画処理を実行する録画用アプリケーションプログラムが予めインストールされている。録画予約情報は、ユーザによって録画予約されたTV放送番組毎に、その録画開始時間、録画終了時間、録画すべきチャネル番号を示す。プロセス管理部106は、録画予約情報に従って、録画用アプリケーションプログラムの起動および終了を制御する。
モジュール更新処理部118は、録画予約情報を取得する(ステップS201)。そして、モジュール更新処理部118は、その録画予約情報に基づいて録画用アプリケーションプログラムが実行されるスケジュールを把握することにより、録画用アプリケーションプログラムの非実行期間、つまり録画処理の空き時間を検出する(ステップS202)。このステップS202では、例えば、全てのプログラムモジュール群のダウンロードが完了した時点から、最も早く訪れる、予め決められた時間長(例えば30分)分の空き時間が検出される。例えば、図12の例では、もしプログラムモジュール群のダウンロードが10:00に完了したならば、13:00から14:00までの空き時間を利用して組み込みソフトウェアの更新処理(インストール)が実行される。
図13には、個体情報管理データベース302の他の例が示されている。
この例においては、個体情報管理データベース302にユーザ名および会員種別の2つの属性が追加されている。会員種別には、例えば、正規会員(有料会員)、および非正規会員(無料会員)等がある。モジュール提供サーバ2のモジュールバージョン管理部204は、正規会員(有料会員)のユーザと非正規会員(無料会員)のユーザとの間で、配信対対象のプログラムモジュールの種類を変更する機能を有する。例えば、正規会員(有料会員)のユーザに対しては、バグ修正等の更新が行われたプログラムモジュール(アップデート・パッケージ)と、機能が追加されたアップグレードされたプログラムモジュール(アップグレード・パッケージ)の双方が配信対象となるが、非正規会員(無料会員)のユーザに対しては、アップデート・パッケージのみが配信対象となり、アップグレード・パッケージの配信は行われない。
この例においては、個体情報管理データベース302にユーザ名および会員種別の2つの属性が追加されている。会員種別には、例えば、正規会員(有料会員)、および非正規会員(無料会員)等がある。モジュール提供サーバ2のモジュールバージョン管理部204は、正規会員(有料会員)のユーザと非正規会員(無料会員)のユーザとの間で、配信対対象のプログラムモジュールの種類を変更する機能を有する。例えば、正規会員(有料会員)のユーザに対しては、バグ修正等の更新が行われたプログラムモジュール(アップデート・パッケージ)と、機能が追加されたアップグレードされたプログラムモジュール(アップグレード・パッケージ)の双方が配信対象となるが、非正規会員(無料会員)のユーザに対しては、アップデート・パッケージのみが配信対象となり、アップグレード・パッケージの配信は行われない。
ホームネットワークサーバ1からソフトウェア構成情報を含む更新リスト情報取得要求を受信すると、モジュール提供サーバ2のモジュールバージョン管理部204は、個体情報管理部206を用いて、更新リスト情報取得要求を送信したホームネットワークサーバ1のユーザが正規会員(有料会員)および非正規会員(無料会員)のいずれであるかを判別する(ステップS301)。このステップS301においては、モジュールバージョン管理部204は、ホームネットワークサーバ1から送信される更新リスト情報取得要求に含まれる個体識別番号を元に、個体情報管理部206に対して、ホームネットワークサーバ1のユーザの会員種別の問い合わせを行う。これにより、モジュールバージョン管理部204は、ホームネットワークサーバ1のユーザが正規会員(有料会員)および非正規会員(無料会員)のいずれであるかを判別することができる。
ホームネットワークサーバ1のユーザが正規会員(有料会員)であるならば、モジュールバージョン管理部204は、モジュール蓄積部202に蓄積されたアップグレードされたプログラムモジュールを含む全てのプログラムモジュール群それぞれのバージョン番号と、ホームネットワークサーバ1から通知されたソフトウェア構成情報で指定される各プログラムモジュールのバージョン番号とに基づいて、更新リスト情報を作成する(ステップS302)。
一方、ホームネットワークサーバ1のユーザが非正規会員(無料会員)であるならば、モジュールバージョン管理部204は、アップグレードされたプログラムモジュールを除くモジュール蓄積部202に蓄積されたプログラムモジュール群それぞれのバージョン番号と、ホームネットワークサーバ1から通知されたソフトウェア構成情報で指定される各プログラムモジュールのバージョン番号とに基づいて、更新リスト情報を作成する(ステップS303)。
以上の処理により、ユーザの会員種別に応じて、配信対象のプログラムモジュールの種類を変更することが可能となる。
なお、有料のプログラムモジュールをモジュール提供サーバ2からホームネットワークサーバ1に配信することも出来る。この場合、図15に示されているように、モジュール提供サーバ2との通信が可能な決済システム10を利用する事が望ましい。配信対象のプログラムモジュールに有料のプログラムモジュールが含まれている場合、ホームネットワークサーバ1は図16に示すようなモジュール購入画面をユーザインタフェース部16を通じて操作画面上に表示する。モジュール購入画面上にユーザによって入力されたクレジットカード番号、有効期限、ユーザの氏名、のような決済情報は、ホームネットワークサーバ1からモジュール提供サーバ2に送信される。モジュール提供サーバ2は、決済処理を実行するために、決済情報を決済システム10に送信する。決済が正常に完了したならば、有料のプログラムモジュールがモジュール提供サーバ2からホームネットワークサーバ1に配信される。
次に、図17のフローチャートを参照して、有料のプログラムモジュールを提供する具体的な処理手順の例について説明する。ここでは、試用期間中は無料で、試用期間経過後に有料となるプログラムモジュール(以下、使用期限付きプログラムモジュールと称する)を提供する場合を想定する。
ホームネットワークサーバ1には、使用期限付きプログラムモジュールがインストールされている。この使用期限付きプログラムモジュールの試用期間が経過した時、ホームネットワークサーバ1のCPU17はその旨を示すメッセージと購入ボタンとをユーザインタフェース部16を通じて操作画面上に表示して、使用期限付きプログラムモジュールの試用期間が過ぎたことをユーザに通知する(ステップS401)。もしユーザによって購入ボタンが押されたならば(ステップS402のYES)、CPU17は図16に示すようなモジュール購入画面をユーザインタフェース部16を通じて操作画面上に表示する(ステップS403)。
モジュール購入画面上に、クレジットカード番号、有効期限、ユーザの氏名のような決済情報がユーザによって入力されると、CPU17は、入力された決済情報をモジュール提供サーバ2に送信する(ステップS404)。モジュール提供サーバ2はホームネットワークサーバ1からの決済情報を決済システム10に送信して、決済処理の実行を決済システム10に依頼する(ステップS405)。決済処理が正常に完了したならば(ステップS406のYES)、モジュール提供サーバ2は、使用期限付きプログラムモジュールを引き続き利用するために必要なIDコードをホームネットワークサーバ1に送信する(ステップS406)。
なお、例えば会員登録時などに、ホームネットワークサーバ1のユーザから入力される決済情報をモジュール提供サーバ2内に予め記憶しておくこともできる。この場合、モジュール購入画面上では決済情報として会員IDとパスワードを入力すればよい。
次に、図18を参照して、複数のモジュール提供サーバを用いてプログラムモジュール群を分散して管理する例について説明する。
新バージョンのプログラムモジュール群はモジュール提供サーバ2a,2b,2cに分散した状態で蓄積されている。モジュール情報提供サーバ30は、全てのプログラムモジュール群の各々についてそれがどのモジュール提供サーバに存在するかを管理している。ホームネットワークサーバ1は、定期的に、個体識別番号と、組込機器ソフトウェアを構成する現在の各プログラムモジュールのバージョン番号を示すバージョン情報とをモジュール情報サーバ30に対して更新リスト情報取得要求として送信し、これにより更新リスト情報をモジュール情報提供サーバ30に要求する。モジュール情報提供サーバ30は、ホームネットワークサーバ1にインストール可能な最新のプログラムモジュールとその最新プログラムモジュールに対応する依存モジュールとを示す更新リスト情報を作成する。この更新リスト情報は、さらに、プログラムモジュール毎にそれが蓄積されているモジュール提供サーバを指定するサーバ情報が含まれている。ホームネットワークサーバ1は、ダウンロード対象のプログラムモジュールに対応するサーバ情報で指定されるモジュール提供サーバから、当該ダウンロード対象のプログラムモジュールをダウンロードする。これにより、モジュール提供サーバ2a,2b,2cに負荷を分散することが出来る。
以上のように、本実施形態によれば、ユーザによって選択されたプログラムモジュールのみならず、その選択されたプログラムモジュールの実行に必要な他のプログラムモジュールを自動的にモジュール提供サーバ2からダウンロードすることができる。また自動更新モードにおいては、ユーザによる選択操作無しで、更新リスト情報で指定される全てのプログラムモジュールをモジュール提供サーバ2から自動的にダウンロードすることができる。
なお、ホームネットワークサーバ1とモジュール提供サーバ2との間の通信をSSL(Secure Socket Layer)などを用いて暗号化してもよい。
また、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
1…ホームネットワークサーバ(電子機器)、2…モジュール提供サーバ、3…インターネット、17…CPU、18…メモリ、102…ユーザ通知部、103…モジュール情報取得部、104…モジュール取得部、105…モジュール更新処理部、106…プロセス管理部、202…モジュール蓄積部、203…モジュール配信部、204…モジュールバージョン管理部、205…モジュールバージョン情報配信部、206…個体情報管理部。
Claims (9)
- ネットワークを介してサーバとの通信を実行可能な電子機器において、
前記電子機器にインストールされた組み込みソフトウェアの現在の構成を示すソフトウェア構成情報を前記サーバに通知し、前記電子機器にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報を前記サーバに要求する手段と、
前記サーバから送信される前記更新リスト情報に基づいて、前記最新プログラムモジュールと前記最新プログラムモジュールの実行に必要な前記他のプログラムモジュールとを含むプログラムモジュール群を前記サーバからダウンロードする手段と、
前記ダウンロードされたプログラムモジュール群を用いて、前記組み込みソフトウェアを更新する更新処理を実行する手段とを具備することを特徴とする電子機器。 - 前記更新リスト情報に基づいて、前記電子機器にインストール可能な最新プログラムモジュールの一覧を表示装置に表示する手段と、
前記最新プログラムモジュールの一覧からダウンロードすべきプログラムモジュールが選択された場合、前記更新リスト情報に基づいて、前記選択されたプログラムモジュールと前記選択されたプログラムモジュールの実行に必要な他のプログラムモジュールとを含むプログラムモジュール群をダウンロード対象のプログラムモジュール群として決定する手段とをさらに具備し、
前記ダウンロードする手段は、前記決定されたダウンロード対象のプログラムモジュール群を前記サーバからダウンロードする手段を含むことを特徴とする請求項1記載の電子機器。 - 前記更新処理を実行する手段は、前記組み込みソフトウェアに含まれるアプリケーションプログラムの非動作期間を検出する手段と、前記検出された非動作期間に前記更新処理を実行する手段とを含むことを特徴とする請求項1記載の電子機器。
- 前記組み込みソフトウェアは、録画予約情報で指定される放送番組データを記録する録画処理を実行するアプリケーションプログラムを含み、
前記更新処理を実行する手段は、
前記録画予約情報に基づいて、前記アプリケーションプログラムの非動作期間を検出する手段と、
前記検出された非動作期間に前記更新処理を実行する手段とを含むことを特徴とする請求項1記載の電子機器。 - ネットワークを介してサーバとの通信を実行可能な電子機器にインストールされた組み込みソフトウェアを更新する組み込みソフトウェア更新方法であって、
前記組み込みソフトウェアの現在の構成を示すソフトウェア構成情報を前記電子機器が前記サーバに通知するステップと、
前記電子機器から通知されたソフトウェア構成情報に基づいて、前記電子機器にインストール可能な最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報を前記サーバが前記電子機器に送信するステップと、
前記サーバから送信される前記更新リスト情報に基づいて、前記最新プログラムモジュールと前記最新プログラムモジュールの実行に必要な前記他のプログラムモジュールとを含むプログラムモジュール群を前記電子機器が前記サーバからダウンロードするステップと、
前記ダウンロードされたプログラムモジュール群を用いて、前記電子機器が前記組み込みソフトウェアを更新する更新処理を実行するステップとを具備することを特徴とする組み込みソフトウェア更新方法。 - 前記更新リスト情報に基づいて、前記電子機器が、前記電子機器にインストール可能な最新プログラムモジュールの一覧を表示装置に表示するステップと、
前記表示された最新プログラムモジュールの一覧からダウンロードすべきプログラムモジュールが前記電子機器のユーザによって選択された場合、前記更新リスト情報に基づいて、前記選択されたプログラムモジュールと前記選択されたプログラムモジュールの実行に必要な他のプログラムモジュールとを含むプログラムモジュール群を前記電子機器がダウンロード対象のプログラムモジュール群として決定するステップとをさらに具備し、
前記ダウンロードするステップは、前記決定されたダウンロード対象のプログラムモジュール群を前記電子機器が前記サーバからダウンロードするステップを含むことを特徴とする請求項5記載の組み込みソフトウェア更新方法。 - 前記更新処理を実行するステップは、前記組み込みソフトウェアに含まれるアプリケーションプログラムの非動作期間を前記電子機器が検出するステップと、前記検出された非動作期間に前記更新処理を前記電子機器が実行するステップとを含むことを特徴とする請求項5記載の組み込みソフトウェア更新方法。
- 前記組み込みソフトウェアは、録画予約情報で指定される放送番組データを記録する録画処理を実行するアプリケーションプログラムを含み、
前記更新処理を実行するステップは、
前記録画予約情報に基づいて、前記アプリケーションプログラムの非動作期間を前記電子機器が検出するステップと、
前記検出された非動作期間に前記電子機器が前記更新処理を実行するステップとを含むことを特徴とする請求項5記載の組み込みソフトウェア更新方法。 - 前記更新リスト情報を前記電子機器に送信するステップは、
前記電子機器のユーザが正規会員であるか否かを前記サーバが判別するステップと、
前記電子機器のユーザが正規会員である場合、前記サーバに蓄積されたアップグレードされたプログラムモジュールを含むプログラムモジュール群それぞれのバージョン番号と、前記電子機器から通知されたソフトウェア構成情報で指定される各プログラムモジュールのバージョン番号とに基づいて、前記サーバが最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報を前記電子機器に送信するステップと、
前記電子機器のユーザが正規会員ではない場合、前記アップグレードされたプログラムモジュールを除く前記サーバに蓄積されたプログラムモジュール群それぞれのバージョン番号と、前記電子機器から通知されたソフトウェア構成情報で指定される各プログラムモジュールのバージョン番号とに基づいて、前記サーバが最新プログラムモジュールと当該最新プログラムモジュールの実行に必要な他のプログラムモジュールとを示す更新リスト情報を前記電子機器に送信するステップとを含むことを特徴とする請求項5記載の組み込みソフトウェア更新方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003371096A JP2005135187A (ja) | 2003-10-30 | 2003-10-30 | 電子機器および組み込みソフトウェア更新方法 |
| US10/952,910 US20050097543A1 (en) | 2003-10-30 | 2004-09-30 | Electronic apparatus and embedded software updating method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003371096A JP2005135187A (ja) | 2003-10-30 | 2003-10-30 | 電子機器および組み込みソフトウェア更新方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2005135187A true JP2005135187A (ja) | 2005-05-26 |
Family
ID=34543930
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003371096A Withdrawn JP2005135187A (ja) | 2003-10-30 | 2003-10-30 | 電子機器および組み込みソフトウェア更新方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US20050097543A1 (ja) |
| JP (1) | JP2005135187A (ja) |
Cited By (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007235190A (ja) * | 2006-02-27 | 2007-09-13 | Kyocera Corp | 携帯型デジタル放送受信端末及びファームウェア更新方法 |
| JP2007268908A (ja) * | 2006-03-31 | 2007-10-18 | Brother Ind Ltd | 周辺装置および周辺装置設定方法 |
| WO2008007456A1 (fr) * | 2006-07-13 | 2008-01-17 | Seiko Epson Corporation | Système de réseau, ordinateur, procédé de mise en œuvre d'applications pour un système de réseau, procédé d'exécution d'applications pour un système de réseau, et programme |
| KR100856657B1 (ko) * | 2007-07-18 | 2008-09-04 | 주식회사 엘지데이콤 | 인터넷 텔레비전의 셋톱박스를 위한 소프트웨어 업그레이드시스템 및 그 방법 |
| KR100914711B1 (ko) | 2007-12-05 | 2009-08-28 | 엘지전자 주식회사 | Iptv 수신기에서 si 데이터 수신 방법 및 그 장치 |
| JP2009536395A (ja) * | 2006-06-19 | 2009-10-08 | サムスン エレクトロニクス カンパニー リミテッド | Otaが可能な端末の情報アップグレードシステム及び方法{informationupgradesystemandmethodforota−capabledevice} |
| JP2010079546A (ja) * | 2008-09-25 | 2010-04-08 | Hitachi Software Eng Co Ltd | プログラム配信更新システム |
| JP2010237840A (ja) * | 2009-03-30 | 2010-10-21 | Ricoh Co Ltd | 画像処理装置、ソフトウェア配信システム、インストール処理方法およびプログラム |
| JP2010250806A (ja) * | 2009-03-23 | 2010-11-04 | Canon Inc | 情報配信装置、情報配信装置の制御方法、及びコンピュータプログラム |
| JP2011053966A (ja) * | 2009-09-02 | 2011-03-17 | Ricoh Co Ltd | 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法 |
| JP2011060232A (ja) * | 2009-09-14 | 2011-03-24 | Ricoh Co Ltd | 管理装置、管理システム、管理方法、及び管理プログラム |
| JP2011138375A (ja) * | 2009-12-28 | 2011-07-14 | Ricoh Co Ltd | 操作抑制システム、画像形成装置、操作抑制情報提供装置、及び操作抑制方法 |
| JP2011199594A (ja) * | 2010-03-19 | 2011-10-06 | Nippon Telegr & Teleph Corp <Ntt> | 端末の初期設定方法および初期設定装置 |
| JP2012014596A (ja) * | 2010-07-02 | 2012-01-19 | Ricoh Co Ltd | ソフトウェア管理装置、情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム |
| US8112775B2 (en) | 2007-12-05 | 2012-02-07 | Lg Electronics Inc. | IPTV receiver and method of providing channel details information |
| US8397256B2 (en) | 2007-12-05 | 2013-03-12 | Lg Electronics Inc. | IPTV receiver and method of providing channel map information |
| US8484689B2 (en) | 2007-12-05 | 2013-07-09 | Lg Electronics Inc. | IPTV receiver and method of discovering an IPTV service |
| JP2013191196A (ja) * | 2012-02-17 | 2013-09-26 | Ricoh Co Ltd | 情報処理装置、機器、情報処理システム、情報処理方法、及び情報処理プログラム |
| US8635641B2 (en) | 2007-12-05 | 2014-01-21 | Lg Electronics Inc. | Method of performing parental control a channel and an IPTV receiver |
| JP2014048688A (ja) * | 2012-08-29 | 2014-03-17 | Buffalo Inc | ネットワーク装置、ネットワーク装置がクライアント装置に対してファイルのダウンロードを案内する案内方法およびネットワークシステム |
| JP2014093059A (ja) * | 2012-11-07 | 2014-05-19 | Ricoh Co Ltd | 情報処理装置 |
| US8813155B2 (en) | 2007-12-05 | 2014-08-19 | Lg Electronics Inc. | Method for receiving service information data and an IPTV receiver |
| US8869219B2 (en) | 2007-12-05 | 2014-10-21 | Lg Electronics Inc. | Method for controlling a channel and an IPTV receiver |
| US8893205B2 (en) | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of providing channel map management information |
| US8893200B2 (en) | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of acquiring a resource for an IPTV service |
Families Citing this family (67)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20040022451A (ko) * | 2001-07-16 | 2004-03-12 | 유킹 렌 | 임베디드 소프트웨어 업데이트 시스템 |
| US20030079216A1 (en) * | 2001-10-18 | 2003-04-24 | International Business Machines Corporation | Apparatus and method of using a hybrid of fixed media data and network-based data to provide software changes |
| WO2005048075A2 (en) * | 2003-11-12 | 2005-05-26 | Yuqing Ren | Embedded software update methods and systems for digital devices |
| US20090037899A1 (en) * | 2004-02-13 | 2009-02-05 | Blue Vector Systems | Radio frequency identification (rfid) network upgrade system and method |
| US8347285B2 (en) * | 2004-12-16 | 2013-01-01 | Intel Corporation | Embedded agent for self-healing software |
| JP5204492B2 (ja) * | 2004-12-23 | 2013-06-05 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ネットワーク番組を再生するためにソフトウェアリソースを構成する方法及び装置 |
| CA2598646A1 (en) * | 2005-02-25 | 2006-08-31 | Mobizoft Ab | A terminal independent addressing system for access to a web page via a public mobile network |
| US9063725B2 (en) | 2005-06-24 | 2015-06-23 | Oracle International Corporation | Portable management |
| US9075596B2 (en) * | 2005-06-24 | 2015-07-07 | Oracle International Corporation | Deployment |
| US9542175B2 (en) * | 2005-06-24 | 2017-01-10 | Oracle International Corporation | Continuous deployment |
| JP4791910B2 (ja) * | 2005-08-26 | 2011-10-12 | 株式会社リコー | 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体 |
| CN1928818A (zh) * | 2005-09-09 | 2007-03-14 | 鸿富锦精密工业(深圳)有限公司 | 网络装置及其软件更新方法 |
| US8245216B2 (en) * | 2005-10-11 | 2012-08-14 | Oracle International Corporation | Patch management system |
| US20070106979A1 (en) * | 2005-10-11 | 2007-05-10 | Bea Systems, Inc. | Patch management system |
| CN1953388A (zh) * | 2005-10-21 | 2007-04-25 | 鸿富锦精密工业(深圳)有限公司 | 网络信息自动采集系统及方法 |
| US20070226731A1 (en) * | 2005-11-16 | 2007-09-27 | Tseitlin Ariel D | Modularity |
| US20070156631A1 (en) * | 2005-12-29 | 2007-07-05 | Sap Ag | Synchronization of transactional applications and analytical applications |
| US7739678B2 (en) * | 2006-02-28 | 2010-06-15 | Sap Ag | Managing updates in an object oriented software system |
| CN101038610B (zh) * | 2006-03-16 | 2013-01-23 | 华为技术有限公司 | 一种具有版权属性对象更新的方法及装置 |
| JP4908026B2 (ja) * | 2006-03-22 | 2012-04-04 | 株式会社東芝 | 情報処理装置 |
| JP4925697B2 (ja) * | 2006-03-23 | 2012-05-09 | ソニー株式会社 | ネットワーク伝送用の映像信号符号化システム及び映像信号符号化方法,信号変換装置 |
| US7451246B2 (en) * | 2006-04-19 | 2008-11-11 | Hewlett-Packard Development Company, L.P. | Indirectly controlling a target device on a network |
| KR20080007889A (ko) * | 2006-07-18 | 2008-01-23 | 삼성전자주식회사 | 방송수신장치 및 방송수신장치의 소프트웨어 갱신방법 |
| CN101132573A (zh) * | 2006-08-23 | 2008-02-27 | 中兴通讯股份有限公司 | 一种终端批量升级的实现方法 |
| US20080148248A1 (en) * | 2006-12-15 | 2008-06-19 | Michael Volkmer | Automatic software maintenance with change requests |
| US8473938B1 (en) | 2007-06-21 | 2013-06-25 | Open Invention Network Llc | Security patch update processor |
| US7857222B2 (en) | 2007-08-16 | 2010-12-28 | Hand Held Products, Inc. | Data collection system having EIR terminal interface node |
| US20090089777A1 (en) * | 2007-09-29 | 2009-04-02 | Bruce Gordon Fuller | Managing software updates in an automation environment |
| US8271623B2 (en) * | 2009-01-15 | 2012-09-18 | Microsoft Corporation | Performing configuration in a multimachine environment |
| JP5274284B2 (ja) * | 2009-01-30 | 2013-08-28 | キヤノン株式会社 | 電子機器、ソフトウェアのアップデート方法、及びコンピュータプログラム |
| JP2010198332A (ja) * | 2009-02-25 | 2010-09-09 | Canon Inc | ファームウェア更新装置、ファームウェア更新システム、ファームウェア更新方法、およびファームウェア更新プログラム |
| US20120079473A1 (en) * | 2009-06-08 | 2012-03-29 | Haruhito Watanabe | Software updating system, displaying unit and software updating method |
| US8296399B2 (en) * | 2009-07-15 | 2012-10-23 | Microsoft Corporation | Connecting galleries to dynamic server-hosted content |
| CN101996083A (zh) * | 2009-08-21 | 2011-03-30 | 中兴通讯股份有限公司 | 一种镜像升级的方法和装置 |
| US9497092B2 (en) | 2009-12-08 | 2016-11-15 | Hand Held Products, Inc. | Remote device management interface |
| WO2011099053A1 (ja) * | 2010-02-10 | 2011-08-18 | 株式会社 日立製作所 | プロダクトライン型開発支援装置 |
| US9009696B2 (en) * | 2010-04-27 | 2015-04-14 | Red Hat, Inc. | Generating encoded identifications of selected subsets of installed software packages on a client machine |
| US20110289474A1 (en) * | 2010-05-21 | 2011-11-24 | Salesforce.Com, Inc. | Managing and viewing dependencies in an agile system |
| US8601462B2 (en) * | 2010-06-17 | 2013-12-03 | International Business Machines Corporation | Modifying a multi-module application |
| US8719847B2 (en) * | 2010-09-27 | 2014-05-06 | Microsoft Corp. | Management and marketplace for distributed home devices |
| JP5790097B2 (ja) * | 2011-04-04 | 2015-10-07 | 沖電気工業株式会社 | 加入者側端末装置及び加入者側端末装置の消費電力制御方法 |
| US8621123B2 (en) | 2011-10-06 | 2013-12-31 | Honeywell International Inc. | Device management using virtual interfaces |
| US8539123B2 (en) | 2011-10-06 | 2013-09-17 | Honeywell International, Inc. | Device management using a dedicated management interface |
| CN102420903A (zh) * | 2011-11-28 | 2012-04-18 | 惠州Tcl移动通信有限公司 | 一种基于手机的软件处理方法及手机 |
| EP2624249B1 (en) | 2012-01-31 | 2017-03-15 | Samsung Electronics Co., Ltd | Display system including a display apparatus and an upgrading apparatus, and control method |
| US9609077B1 (en) * | 2012-05-30 | 2017-03-28 | Crimson Corporation | Forwarding content on a client based on a request |
| RU2495487C1 (ru) | 2012-08-10 | 2013-10-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ для определения доверия при обновлении разрешенного программного обеспечения |
| EP2720146A1 (en) * | 2012-10-11 | 2014-04-16 | Thomson Licensing | Distributed application life-cycle management |
| US9411571B2 (en) * | 2013-02-28 | 2016-08-09 | Adobe Systems Incorporated | Method and apparatus for deploying software as a service |
| US9875149B2 (en) * | 2013-04-29 | 2018-01-23 | Microsoft Technology Licensing, Llc | Preventing sync interruptions |
| US9696983B2 (en) * | 2014-04-25 | 2017-07-04 | Vmware, Inc. | Dynamic updating of operating systems and applications using volume attachment |
| US20160291940A1 (en) * | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
| EP3167598B1 (en) * | 2014-07-07 | 2021-04-14 | Harman Connected Services, Inc. | Remote embedded device update platform apparatuses, methods and systems |
| JP6531372B2 (ja) | 2014-10-30 | 2019-06-19 | 株式会社リコー | 情報処理システム |
| CN105005488A (zh) * | 2015-06-30 | 2015-10-28 | 广州童蒙教育科技有限公司 | 一种学习娱乐方法和装置 |
| US10466977B2 (en) | 2015-10-11 | 2019-11-05 | Renesas Electronics America Inc. | Data driven embedded application building and configuration |
| EP3217281A3 (de) * | 2016-03-10 | 2018-02-14 | Giesecke+Devrient Mobile Security GmbH | Verfahren zur verwaltung der kartensoftware einer smartcard |
| CN106331859B (zh) * | 2016-09-18 | 2020-02-28 | 深圳市九洲电器有限公司 | 一种机顶盒调试方法及系统 |
| US10520210B2 (en) * | 2016-10-31 | 2019-12-31 | Johnson Controls Technology Company | Building automation systems for online, offline, and hybrid licensing of distributed edge devices |
| US10620941B2 (en) * | 2017-04-11 | 2020-04-14 | Dell Products L.P. | Updating and rolling back known good states of information handling systems |
| US10270750B2 (en) | 2017-05-01 | 2019-04-23 | Adobe Inc. | Managing access to software based on a state of an account |
| EP3655850B1 (en) * | 2017-07-21 | 2025-02-12 | Apple Inc. | Multiradio interface for software reconfiguration |
| CN107608689B (zh) * | 2017-08-07 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 客户端上应用程序的更新方法、装置及电子设备 |
| US11550593B2 (en) * | 2019-01-08 | 2023-01-10 | Dell Products L.P. | Information handling system quick boot |
| US11416269B2 (en) * | 2020-11-20 | 2022-08-16 | Motorola Solutions, Inc. | Method, system and computer program product for serving user settings interface components |
| US11709820B2 (en) | 2021-09-03 | 2023-07-25 | Bank Of America Corporation | System for implementing intelligent data analysis |
| US12474912B2 (en) * | 2022-08-12 | 2025-11-18 | Bank Of America Corporation | Systems and methods for identifying and verifying software component storage locations in a network environment |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FI955188L (fi) * | 1995-10-30 | 1997-06-24 | Nokia Telecommunications Oy | Matkaviestimen ohjelmiston ylläpito |
| US5845077A (en) * | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
| JP3669619B2 (ja) * | 1999-09-06 | 2005-07-13 | 富士通株式会社 | 無線端末装置のソフトウェア更新方法及びその装置 |
| US6493871B1 (en) * | 1999-09-16 | 2002-12-10 | Microsoft Corporation | Method and system for downloading updates for software installation |
| US20040117785A1 (en) * | 2002-12-13 | 2004-06-17 | Samsung Electronics Co., Ltd. | Component download manager for a wireless mobile station and method of operation |
-
2003
- 2003-10-30 JP JP2003371096A patent/JP2005135187A/ja not_active Withdrawn
-
2004
- 2004-09-30 US US10/952,910 patent/US20050097543A1/en not_active Abandoned
Cited By (26)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007235190A (ja) * | 2006-02-27 | 2007-09-13 | Kyocera Corp | 携帯型デジタル放送受信端末及びファームウェア更新方法 |
| JP2007268908A (ja) * | 2006-03-31 | 2007-10-18 | Brother Ind Ltd | 周辺装置および周辺装置設定方法 |
| JP2009536395A (ja) * | 2006-06-19 | 2009-10-08 | サムスン エレクトロニクス カンパニー リミテッド | Otaが可能な端末の情報アップグレードシステム及び方法{informationupgradesystemandmethodforota−capabledevice} |
| WO2008007456A1 (fr) * | 2006-07-13 | 2008-01-17 | Seiko Epson Corporation | Système de réseau, ordinateur, procédé de mise en œuvre d'applications pour un système de réseau, procédé d'exécution d'applications pour un système de réseau, et programme |
| KR100856657B1 (ko) * | 2007-07-18 | 2008-09-04 | 주식회사 엘지데이콤 | 인터넷 텔레비전의 셋톱박스를 위한 소프트웨어 업그레이드시스템 및 그 방법 |
| US8893205B2 (en) | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of providing channel map management information |
| US8397256B2 (en) | 2007-12-05 | 2013-03-12 | Lg Electronics Inc. | IPTV receiver and method of providing channel map information |
| KR100914711B1 (ko) | 2007-12-05 | 2009-08-28 | 엘지전자 주식회사 | Iptv 수신기에서 si 데이터 수신 방법 및 그 장치 |
| US8813155B2 (en) | 2007-12-05 | 2014-08-19 | Lg Electronics Inc. | Method for receiving service information data and an IPTV receiver |
| US8484689B2 (en) | 2007-12-05 | 2013-07-09 | Lg Electronics Inc. | IPTV receiver and method of discovering an IPTV service |
| US8112775B2 (en) | 2007-12-05 | 2012-02-07 | Lg Electronics Inc. | IPTV receiver and method of providing channel details information |
| US8893200B2 (en) | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of acquiring a resource for an IPTV service |
| US8635641B2 (en) | 2007-12-05 | 2014-01-21 | Lg Electronics Inc. | Method of performing parental control a channel and an IPTV receiver |
| US8869219B2 (en) | 2007-12-05 | 2014-10-21 | Lg Electronics Inc. | Method for controlling a channel and an IPTV receiver |
| JP2010079546A (ja) * | 2008-09-25 | 2010-04-08 | Hitachi Software Eng Co Ltd | プログラム配信更新システム |
| JP2010250806A (ja) * | 2009-03-23 | 2010-11-04 | Canon Inc | 情報配信装置、情報配信装置の制御方法、及びコンピュータプログラム |
| JP2010237840A (ja) * | 2009-03-30 | 2010-10-21 | Ricoh Co Ltd | 画像処理装置、ソフトウェア配信システム、インストール処理方法およびプログラム |
| JP2011053966A (ja) * | 2009-09-02 | 2011-03-17 | Ricoh Co Ltd | 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法 |
| JP2011060232A (ja) * | 2009-09-14 | 2011-03-24 | Ricoh Co Ltd | 管理装置、管理システム、管理方法、及び管理プログラム |
| US8612739B2 (en) | 2009-12-28 | 2013-12-17 | Ricoh Company, Ltd. | System, apparatus, and method for inhibiting operation that modifies program configuration |
| JP2011138375A (ja) * | 2009-12-28 | 2011-07-14 | Ricoh Co Ltd | 操作抑制システム、画像形成装置、操作抑制情報提供装置、及び操作抑制方法 |
| JP2011199594A (ja) * | 2010-03-19 | 2011-10-06 | Nippon Telegr & Teleph Corp <Ntt> | 端末の初期設定方法および初期設定装置 |
| JP2012014596A (ja) * | 2010-07-02 | 2012-01-19 | Ricoh Co Ltd | ソフトウェア管理装置、情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム |
| JP2013191196A (ja) * | 2012-02-17 | 2013-09-26 | Ricoh Co Ltd | 情報処理装置、機器、情報処理システム、情報処理方法、及び情報処理プログラム |
| JP2014048688A (ja) * | 2012-08-29 | 2014-03-17 | Buffalo Inc | ネットワーク装置、ネットワーク装置がクライアント装置に対してファイルのダウンロードを案内する案内方法およびネットワークシステム |
| JP2014093059A (ja) * | 2012-11-07 | 2014-05-19 | Ricoh Co Ltd | 情報処理装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20050097543A1 (en) | 2005-05-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2005135187A (ja) | 電子機器および組み込みソフトウェア更新方法 | |
| US20060168147A1 (en) | Information processor, file server, accounting control system, accounting control method, and recording medium recording a program therefor | |
| CN102947793B (zh) | 信息处理装置 | |
| US9304827B2 (en) | Systems and methods for providing hierarchy of support services via desktop and centralized service | |
| EP1376930B1 (en) | Systems and methods for application delivery and configuration management of mobile devices | |
| CN100456805C (zh) | 一种基于tftp的iptv机顶盒软件网络升级方法 | |
| CN102077196B (zh) | 用于管理网络下载和配置任务的用户界面 | |
| KR100930853B1 (ko) | 데이터 네트워크에서 멀티미디어 전달 서비스에 가입하는방법 및 장치 | |
| US8079090B2 (en) | License management system, control method thereof, image processing apparatus, and control method thereof | |
| US20110173599A1 (en) | Home network system, gateway device, and firmware update method | |
| WO2004053666A1 (ja) | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム | |
| JP2005530264A (ja) | サーバ側構成管理 | |
| US20170031675A1 (en) | Distribution system, distribution method, and program | |
| US9143487B2 (en) | System and method for massive controlled and secured update of devices firmware | |
| JP2007280392A (ja) | ケーブルシステム中のホスト装置にソフトウェアを配布するためのシステムと方法 | |
| US20060253592A1 (en) | Terminal device, method, and system capable of automatic execution of process in accordance with event | |
| US8370619B2 (en) | Method and apparatus for booting host | |
| KR101651694B1 (ko) | 정보 처리 장치 및 실행 제어 방법 | |
| JP2005528693A (ja) | ターゲット端末におけるソフトウエアアプリケーションの構成 | |
| EP2206338A1 (en) | Method and system for downloading software | |
| JP2005512490A (ja) | 電子装置との間でデータを受信及び転送する充電器システム | |
| EP3748492B1 (en) | Downloading and launching an app on a second device from a first device | |
| CN110045969A (zh) | 应用程序安装方法、服务器、系统、设备及存储介质 | |
| JP7593397B2 (ja) | 情報処理方法、プログラム、及び、情報処理装置 | |
| KR20090041060A (ko) | 자가 복구가 가능한 iptv 시스템 및 이를 이용한 자가복구 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060217 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080609 |
|
| A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20080825 |