(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-31
(54)【発明の名称】機能をアップグレードできる電子機器、電子機器の機能をアップグレードするサーバ、及び電子機器の機能をアップグレードする方法
(51)【国際特許分類】
G06F 8/65 20180101AFI20241024BHJP
【FI】
G06F8/65
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024529350
(86)(22)【出願日】2022-11-16
(85)【翻訳文提出日】2024-05-28
(86)【国際出願番号】 KR2022018127
(87)【国際公開番号】W WO2023090866
(87)【国際公開日】2023-05-25
(31)【優先権主張番号】10-2021-0158669
(32)【優先日】2021-11-17
(33)【優先権主張国・地域又は機関】KR
(81)【指定国・地域】
(71)【出願人】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100109841
【氏名又は名称】堅田 健史
(74)【代理人】
【識別番号】230112025
【氏名又は名称】小林 英了
(72)【発明者】
【氏名】ジ,ベクグン
(72)【発明者】
【氏名】カン,ソンファン
(72)【発明者】
【氏名】パク,ミンキュ
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AB06
5B376CA05
5B376CA06
5B376CA09
5B376CA15
5B376CA19
5B376CA35
5B376CA42
5B376CA43
5B376CA44
5B376CA76
5B376GA11
(57)【要約】
【要約】
本発明は、アップグレードできる電子機器、電子機器をアップグレードするサーバ、及び電子機器をアップグレードする方法を公開する。本発明の一実施形態による電子機器は、プログラムデータを貯蔵する貯蔵部と、管理サーバから前記プログラムデータをアップデートするためファイルを受信して貯蔵し、貯蔵されたファイルに基づいて、前記プログラムデータをアップデートするため更新データを送信する通信部と、前記更新データに応答して、前記プログラムデータをアップデートする制御部と、を含み、前記通信部は、前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記更新データとして送信する。
【特許請求の範囲】
【請求項1】
電子機器であって、
プログラムデータを貯蔵する貯蔵部と、
管理サーバから前記プログラムデータをアップデートする為に、ファイルを受信し貯蔵し、及び、前記貯蔵したファイルに基づいて、前記プログラムデータをアップデートする為の更新データを送信する通信部と、
前記更新データに応答して、前記プログラムデータをアップデートする制御部と、を備えてなり、
前記通信部は、前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記更新データとして送信する、電子機器。
【請求項2】
前記制御部は、
前記プログラムデータを貯蔵する貯蔵部と、
前記貯蔵部の第1領域の第1データを読み取り、前記第1領域のデータのうちの一部を前記デルタデータに修正して第2データを生成し、前記第2データを前記第1領域と相違する第2領域に貯蔵するプロセッシングユニットと、を備える、請求項1に記載の電子機器。
【請求項3】
前記制御部は、
非揮発性メモリを含み、前記プログラムデータを貯蔵する第1貯蔵部と、
揮発性メモリを含む第2貯蔵部と、
前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニットと、を備え、
前記プロセッシングユニットは、
前記第1貯蔵部の第1領域のデータを読み取って、前記第2貯蔵部の第2領域に記録し、前記第2領域のうち一部のデータを前記デルタデータに修正し、前記第2領域のデータを前記第1貯蔵部の前記第1領域と相違する第3領域に記録する、請求項1に記載の電子機器。
【請求項4】
前記第1貯蔵部は、複数個のセクションを備え、
前記プロセッシングユニットは、前記第3領域に記録されたデータを前記複数個のセクションの何れかに記録した後、前記第3領域のデータを削除する、請求項3に記載の電子機器。
【請求項5】
前記制御部は、
非揮発性メモリを備え、前記プログラムデータを貯蔵する第1貯蔵部と、
揮発性メモリを備えた第2貯蔵部と、
前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニットと、を備え、
前記電子機器は、非揮発性メモリを備えた第3貯蔵部、を更に備え、
前記プロセッシングユニットは、
第1貯蔵部に貯蔵された前記プログラムデータを前記第3貯蔵部に記録し、
前記第1貯蔵部の第1領域のうちの一部のデータを前記デルタデータに修正する、請求項1に記載の電子機器。
【請求項6】
前記プロセッシングユニットは、前記プログラムデータのアップデートが完了した後、前記第3貯蔵部のデータを削除する、請求項5に記載の電子機器。
【請求項7】
前記制御部は、
前記プログラムのアップデートが開始した後に受信した命令語の個数を示すカウント値が、ヒストリページに貯蔵されたヒストリ値以下である場合、前記命令語を実行せず、並びに、
前記カウント値が前記ヒストリ値超過である場合、前記命令語を実行する、請求項1に記載の電子機器。
【請求項8】
前記制御部は、前記命令語が非揮発性メモリにデータを記録するか、又は、削除する命令語である場合、前記カウント値を前記ヒストリページに記録する、請求項7に記載の電子機器。
【請求項9】
管理サーバであって、
最新バージョンのプログラムデータと、以前バージョンのプログラムデータとを貯蔵する貯蔵部と;
前記最新バージョンのプログラムデータと、前記以前バージョンのプログラムデータとを比較して、デルタデータを生成する制御部と;
前記デルタデータを電子機器に送信する通信部と;を備えてなり、
前記デルタデータは、前記最新バージョンのプログラムデータのうち、前記以前バージョンのプログラムデータと相違するデータのみを備える、管理サーバ。
【請求項10】
前記制御部は、
前記最新バージョンのプログラムデータのうち、第1セクションのデータと、前記以前バージョンのプログラムデータとを全体比較して、
前記第1セクションのデータに最も類似するデータを検索し、
前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定する、請求項9に記載の管理サーバ。
【請求項11】
前記通信部は、前記デルタデータと、少なくとも1つ以上の命令語と、を備えるファイルを前記電子機器に送信する、請求項9に記載の管理サーバ。
【請求項12】
前記以前バージョンのプログラムデータは、第1バージョンのプログラムデータと、第2バージョンのプログラムデータと、を備え、
前記デルタデータは、第1デルタデータと第2デルタデータとを備え、
前記制御部は、
前記最新バージョンのプログラムデータと、前記第1バージョンのプログラムデータとを比較して、前記第1デルタデータを生成し、
前記最新バージョンのプログラムデータと、前記第2バージョンのプログラムデータとを比較して、前記第2デルタデータを生成する、請求項9に記載の管理サーバ。
【請求項13】
前記通信部は、
前記第1バージョンのプログラムデータを貯蔵する第1電子機器に前記第1デルタデータを送信し、
前記第2バージョンのプログラムデータを貯蔵する第2電子機器に前記第2デルタデータを送信する、請求項12に記載の管理サーバ。
【請求項14】
電子機器をアップグレードする方法であって、
前記電子機器は管理サーバから受信したファイルを貯蔵する通信部と、プログラムデータを貯蔵する制御部と、を備えてなり、
前記通信部が前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記制御部に送信する段階と、
前記制御部が前記プログラムデータのうち一部のデータを前記デルタデータに修正する段階と、を含んでなる、電子機器をアップグレードする方法。
【請求項15】
前記修正する段階は、
前記プログラムデータを貯蔵する非揮発性メモリの第1領域のデータを読み取って、揮発性メモリの第2領域に記録する段階と、
前記第2領域のうち一部のデータを前記デルタデータに修正する段階と、
前記第2領域のデータを前記非揮発性メモリの前記第1領域と相違する第3領域に記録する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
【請求項16】
前記修正する段階は、
前記第3領域のデータを前記非揮発性メモリの複数個のセクションのうち1つに記録する段階と、
前記第3領域のデータを削除する段階と、を更に含む、請求項15に記載の電子機器をアップグレードする方法。
【請求項17】
前記修正する段階は、
第1非揮発性メモリに貯蔵された前記プログラムデータを第2非揮発性メモリに貯蔵する段階と、
前記第1非揮発性メモリの第1領域のデータのうち一部のデータを前記デルタデータに修正する段階と、
前記第2揮発性メモリのデータを削除する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
【請求項18】
前記修正する段階は、
前記命令語が非揮発性メモリにデータを記録するか、又は、削除する命令語である場合、前記プログラムのアップデートが開始した後に受信した命令語の個数を示すカウント値をヒストリページに記録する段階と、
前記カウント値と、前記ヒストリページに記録されたヒストリ値とを比較する段階と、
前記カウント値が前記ヒストリ値以下の場合、前記命令語を実行せず、並びに、前記カウント値が前記ヒストリ値超過の場合、前記命令語を実行する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
【請求項19】
前記管理サーバが、最新バージョンのプログラムデータのうち第1セクションのデータと、以前バージョンのプログラムデータとを全体比較して、前記第1セクションのデータに最も類似するデータを検索する段階と、
前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定する段階と、を更に含む、請求項14に記載の電子機器をアップグレードする方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機能をアップグレードできる電子機器、電子機器の機能をアップグレードするサーバ、及び電子機器の機能をアップグレードする方法に関する。
【背景技術】
【0002】
電子機器は、電子機器の動作を制御する制御部を含む。制御部は、特定のプログラムを実行することによって、使用者が所望の機能を具現するように電子機器を制御する。
【0003】
一般に、電子機器が販売された後は、前記プログラムに対して誤りの修正など、簡単な支援だけ行われている。よって、使用者は、新しい機能を行う電子機器が必要な場合には、新しい電子機器を購買しなければならない。すなわち、使用者が購買した電子機器は、時間が経つほど、残存価値が大きく減少する結果をもたらし、これは、使用者の不満事項となってくる。
【0004】
これによって、前記プログラムを修正することによって、電子機器の機能を改善するか、電子機器の行える機能を追加する方法が研究されており、これについて一部は、実際具現されている。
【0005】
従来の方法によれば、前記プログラムの全体をサーバから電子機器に転送するか、前記プログラムを一定単位に分割した後、分割された単位のうち、変更された部分をサーバから電子機器に転送した後、電子機器におけるアップデートを行っていた。
【0006】
ところが、電子機器が行う機能の数が多くなり、各々の機能の高度化に伴い、プログラムのサイズが大きくなりつつある。よって、従来の方法で電子機器をアップグレードするため転送されるデータの量が大きくなり、結果として、アップグレードにかかる時間も増加するようになる問題点があった。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明の目的は、より便利に電子機器の機能をアップグレードする装置及び方法を提供することである。
【0008】
また、本発明の目的は、電子機器の機能をアップグレードする際にかかる時間を短縮させることができる装置及び方法を提供することである。
【0009】
また、本発明の目的は、電子機器の機能をアップグレードする際に転送されるデータの量を減少させることができる装置及び方法を提供することである。
【0010】
また、本発明の目的は、電子機器の機能をアップグレードするうちに、停電などにより電子機器の動作が停止した場合も、誤りが発生するなどの問題が生じることなく、正常に電子機器の機能をアップグレードする動作を完了させることができる装置及び方法を提供することである。
【0011】
本発明の目的は、以上で言及した目的に限らず、言及していない本発明の他の目的及び長所は、下記の説明によって理解することができ、本発明の実施形態によってより明らかに理解することができる。また、本発明の目的及び長所は、特許請求の範囲に示した手段及びその組み合わせによって実現できることが容易に理解される。
【課題を解決するための手段】
【0012】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の動作を制御するプログラムデータのうち、変更された部分のデータであるデルタデータのみサーバから電子機器に転送することができる。
【0013】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の動作を制御するプログラムデータのうち、変更された部分のデータであるデルタデータのみ電子機器の通信部から電子機器の制御部に転送することができる。
【0014】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の動作を制御するプログラムデータのうち、新しいプログラムデータのセクタ別データに最も類似するデータを既存のプログラムデータから検出した後、検出されたデータとセクタ別データとを比較して、デルタデータを生成することができる。
【0015】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の第1貯蔵部に貯蔵されたプログラムデータのうち、デルタデータに対応するデータを含む第1領域のデータを読み取り、読み取ったデータのうちデルタデータに対応するデータをデルタデータに置換することができる。ここで、第1貯蔵部は、非揮発性メモリであってもよい。
【0016】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の第1貯蔵部の第1領域に貯蔵されたデータを読み取り、読み取ったデータのうち一部をデルタデータに置換した後、第1貯蔵部の第2領域に貯蔵することができる。
【0017】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の制御部で行われる命令語及びデルタデータをサーバから電子機器の通信部に送信することができる。
【0018】
本発明の一実施形態による電子機器、サーバ及び方法は、電子機器の制御部で行った命令の数に対応するヒストリを電子機器の貯蔵部に貯蔵することができる。このとき、前記ヒストリは、前記命令のうち、貯蔵部の一定領域のデータを削除する命令が行われた際に貯蔵することができる。
【0019】
本発明の一実施形態による電子機器は、プログラムデータを貯蔵する貯蔵部と、管理サーバから前記プログラムデータをアップデートするためファイルを受信して貯蔵し、貯蔵されたファイルに基づいて、前記プログラムデータをアップデートするため更新データを送信する通信部と、前記更新データに応答して、前記プログラムデータをアップデートする制御部と、を含み、前記通信部は、前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記更新データとして送信する。
【0020】
本発明の一実施形態による電子機器の前記制御部は、前記プログラムデータを貯蔵する貯蔵部と、前記貯蔵部の第1領域の第1データを読み取り、前記第1領域のデータのうち一部を前記デルタデータに修正して第2データを生成し、前記第2データを前記第1領域と相違する第2領域に貯蔵するプロセッシングユニットと、を含んでいてもよい。
【0021】
本発明の一実施形態による電子機器の前記制御部は、非揮発性メモリを含み、前記プログラムデータを貯蔵する第1貯蔵部と、揮発性メモリを含む第2貯蔵部と、前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニットと、を含み、前記プロセッシングユニットは、前記第1貯蔵部の第1領域のデータを読み取って、前記第2貯蔵部の第2領域に記録し、前記第2領域のうち一部のデータを前記デルタデータに修正し、前記第2領域のデータを前記第1貯蔵部の前記第1領域と相違する第3領域に記録することができる。
【0022】
本発明の一実施形態による電子機器の前記第1貯蔵部は、複数個のセクションを含み、前記プロセッシングユニットは、前記第3領域に記録されたデータを前記複数個のセクションの何れかに記録した後、前記第3領域のデータを削除することができる。
【0023】
本発明の一実施形態による電子機器の前記制御部は、非揮発性メモリを含み、前記プログラムデータを貯蔵する第1貯蔵部と、揮発性メモリを含む第2貯蔵部と、前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニット、とを含み、前記電子機器は、非揮発性メモリを含む第3貯蔵部を更に含み、前記プロセッシングユニットは、第1貯蔵部に貯蔵された前記プログラムデータを前記第3貯蔵部に記録し、前記第1貯蔵部の第1領域のうち一部のデータを前記デルタデータに修正することができる。
【0024】
本発明の一実施形態による電子機器の前記プロセッシングユニットは、前記プログラムデータのアップデートが完了した後、前記第3貯蔵部のデータを削除することができる。
【0025】
本発明の一実施形態による電子機器の前記制御部は、前記プログラムのアップデートが開始した後に、受信した命令語の個数を示すカウント(count:カウンタ)値と、ヒストリページに貯蔵されたヒストリ値より小さいか同様であれば、前記命令語を行わないで、前記カウント値が前記ヒストリ値より大きいと、前記命令語を行うことができる。
【0026】
本発明の一実施形態による電子機器の前記制御部は、前記命令語が非揮発性メモリにデータを記録するか削除する命令語である場合、前記カウント値を前記ヒストリページに記録することができる。
【0027】
本発明の一実施形態による管理サーバは、最新バージョンのプログラムデータと、以前バージョンのプログラムデータとを貯蔵する貯蔵部と、前記最新バージョンのプログラムデータと、前記以前バージョンのプログラムデータとを比較して、デルタデータを生成する制御部と、前記デルタデータを電子機器に送信する通信部と、を含み、前記デルタデータは、前記最新バージョンのプログラムデータのうち、前記以前バージョンのプログラムデータと相違するデータのみ含む。
【0028】
本発明の一実施形態による管理サーバの前記制御部は、前記最新バージョンのプログラムデータのうち第1セクションのデータと、前記以前バージョンのプログラムデータとを全体比較して、前記第1セクションのデータに最も類似するデータを検索し、前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定することができる。
【0029】
本発明の一実施形態による管理サーバの前記通信部は、前記デルタデータと、少なくとも1つ以上の命令語と、を含むファイルを前記電子機器に送信することができる。
【0030】
本発明の一実施形態による管理サーバの前記以前バージョンのプログラムデータは、第1バージョンのプログラムデータと第2バージョンのプログラムデータとを含み、前記デルタデータは、第1デルタデータと第2デルタデータとを含み、前記制御部は、前記最新バージョンのプログラムデータと、前記第1バージョンのプログラムデータとを比較して、前記第1デルタデータを生成し、前記最新バージョンのプログラムデータと、前記第2バージョンのプログラムデータとを比較して、前記第2デルタデータを生成することができる。
【0031】
本発明の一実施形態による管理サーバの前記通信部は、前記第1バージョンのプログラムデータを貯蔵する第1電子機器に前記第1デルタデータを送信し、前記第2バージョンのプログラムデータを貯蔵する第2電子機器に前記第2デルタデータを送信することができる。
【0032】
本発明の一実施形態による方法は、管理サーバから受信したファイルを貯蔵する通信部と、プログラムデータを貯蔵する制御部と、を含む電子機器をアップグレードする方法において、前記通信部が、前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記制御部に送信する段階と、前記制御部が、前記プログラムデータのうち一部のデータを前記デルタデータに修正する段階と、を含む。
【0033】
本発明の一実施形態による方法の上記修正する段階は、前記プログラムデータを貯蔵する非揮発性メモリの第1領域のデータを読み取って、揮発性メモリの第2領域に記録する段階と、前記第2領域のうち一部のデータを前記デルタデータに修正する段階と、前記第2領域のデータを前記非揮発性メモリの前記第1領域と相違する第3領域に記録する段階と、を含んでいてもよい。
【0034】
本発明の一実施形態による方法の上記修正する段階は、前記第3領域のデータを前記非揮発性メモリの複数個のセクションのうち1つに記録する段階と、前記第3領域のデータを削除する段階と、を更に含んでいてもよい。
【0035】
本発明の一実施形態による方法の上記修正する段階は、第1非揮発性メモリに貯蔵された前記プログラムデータを第2非揮発性メモリに貯蔵する段階と、前記第1非揮発性メモリの第1領域のデータのうち一部のデータを前記デルタデータに修正する段階と、前記第2揮発性メモリのデータを削除する段階と、を含んでいてもよい。
【0036】
本発明の一実施形態による方法の上記修正する段階は、前記命令語が非揮発性メモリにデータを記録するか削除する命令語である場合、前記プログラムのアップデートが開始した後に、受信した命令語の個数を示すカウント値をヒストリページに記録する段階と、前記カウント値と前記ヒストリページに記録されたヒストリ値とを比較する段階と、前記カウント値とヒストリページに貯蔵されたヒストリ値より小さいか同様であれば、前記命令語を行わないで、前記カウント値が前記ヒストロ値より大きいと、前記命令語を行う段階と、を含んでいてもよい。
【0037】
本発明の一実施形態による方法は、前記管理サーバが、前記最新バージョンのプログラムデータのうち第1セクションのデータと、前記以前バージョンのプログラムデータとを全体比較して、前記第1セクションのデータに最も類似するデータを検索する段階と、前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定する段階と、を更に含んでいてもよい。
【発明の効果】
【0038】
本発明の一実施形態による電子機器、サーバ及び方法によれば、電子機器の機能をより便利にアップグレードすることができる。
【0039】
また、本発明の一実施形態による電子機器、サーバ及び方法によれば、電子機器の機能をアップグレードする際にかかる時間を短縮させることができる。
【0040】
また、本発明の一実施形態による電子機器、サーバ及び方法によれば、電子機器の機能をアップグレードする際に転送されるデータの量を減少させることができる。
【0041】
また、本発明の一実施形態による電子機器、サーバ及び方法によれば、電子機器の機能をアップグレードするうちに、停電などにより電子機器の動作が停止した場合にも、誤りが発生するなどの問題が生じることなく、正常に電子機器の機能のアップグレード動作を完了させることができる。
【0042】
上述した効果並びに本発明の具体的な効果は、以下の発明を実施するための形態を説明すると共に記述する。
【図面の簡単な説明】
【0043】
【
図1】本発明の一実施形態による電子機器をアップグレードするシステムの構成を概略的に示した図である。
【
図2】本発明の一実施形態による家電機器をアップグレードするシステムの構成を概略的に示した図であって、
図1の使用者機器をより具体的に示した図である。
【
図3】本発明の一実施形態による家電機器をアップグレードする管理サーバの構成を概略的に示したブロック図である。
【
図4】本発明の一実施形態によるアップグレードできる家電機器の構成を概略的に示したブロック図である。
【
図5】本発明の一実施形態による家電機器をアップグレードする方法の全体的な動作を説明するための図である。
【
図6】本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【
図7】本発明の一実施形態による家電機器をアップグレードする方法において、デルタデータを生成して転送する過程を説明するための図である。
【
図8】本発明の一実施形態による家電機器をアップグレードする方法において、既存のプログラムデータと新しいプログラムデータの一例を概略的に示した図である。
【
図9】本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【
図10】本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【
図11】本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【発明を実施するための形態】
【0044】
前述した目的、特徴及び長所は、添付の図面を参照して詳細に後述され、これによって、本発明の属する技術分野における通常の知識を有する者は、本発明の技術的思想を容易に実施することができる。本発明を説明するにあたって、本発明に係る公知の技術に関する具体的な説明が本発明の要旨を曖昧にすると判断される場合には、詳細な説明を省略する。以下では、添付の図面を参照して、本発明による好ましい実施形態を詳説することとする。図面における同じ参照符号は、同一又は類似の構成要素を示すために使われる。
【0045】
たとえ第1、第2などは、様々な構成要素を述べるために使われるものの、これら構成要素は、これらの用語によって制限されないことは勿論である。これらの用語は、単に一構成要素を他構成要素と区別するために使うものであって、特に逆の記載がない限り、第1構成要素は、第2構成要素であってもよいことは勿論である。
【0046】
以下では、ある構成要素が他構成要素に「連結」、「結合」又は「接続」されると記載されている場合、上記構成要素は、互いに直接に連結されるか又は接続されてもよいものの、各構成要素の間に他構成要素が「介在」するか、各構成要素が他構成要素を介して「連結」、「結合」又は「接続」されてもよいものであると理解しなければならない。
【0047】
全明細書において特に逆の記載がない限り、各構成要素は、単数であってもよく、複数であってもよい。
【0048】
本明細書で使われる単数の表現は、文脈上、明らかに他に意味しない限り、複数の表現を含む。本願における「構成される」又は「含む」(備える;構成する;構築する;設定する;包接する;包含する;含有する)などの用語は、明細書上に記載の様々な構成要素、又は様々な段階を必ずしも何れも含むものであると解釈されてはならず、そのうち一部の構成要素又は一部の段階は、含まれていなくてもよく、又はさらなる構成要素又は段階を含んでいてもよいと解釈しなければならない。
【0049】
全明細書において、「A及び/又はB」とするとき、これは特に逆の記載がない限り、A、B又はA及びBを意味し、「C~D」とするとき、これは特に逆の記載がない限り、C以上かつD以下であることを意味する。
【0050】
以下では、本発明の幾つかの実施形態によるアップグレードできる家電機器、家電機器をアップグレードするサーバ、及び家電機器をアップグレードする方法を説明することとする。
【0051】
図1は、本発明の一実施形態による家電機器をアップグレードするシステムの構成を概略的に示した図であって、本発明の一実施形態によるシステムは、管理サーバ100と、複数個の使用者機器210,220,230,240と、を含んでいてもよい。
【0052】
管理サーバ100は、アップグレードする電子機器に関する情報と、使用者の各々が保有している電子機器に関する情報と、を貯蔵することができる。
【0053】
アップグレードする電子機器に関する情報は、電子機器の識別情報、電子機器のバージョン別プログラムデータ、及び以前バージョンの各々のプログラムデータと最新バージョンのプログラムデータとの比較結果から導出されたデルタデータのうち、少なくとも1つ以上を含んでいてもよい。
【0054】
使用者の各々が保有している電子機器に関する情報は、使用者の識別情報と、使用者の識別情報と連携した電子機器の識別情報と、を含んでいてもよい。
【0055】
管理サーバ100は、使用者機器210,220,230,240の各々のプログラムデータをアップデートするために、前記デルタデータを含むファイルを送信することができる。このとき、管理サーバ100が送信するファイルには、使用者機器210,220,230,240の各々で行われるべき命令語セットも含まれていてもよい。
【0056】
複数個の使用者機器210,220,230,240の各々は、少なくとも1つ以上の電子機器を含んでいてもよい。ここで、電子機器は、空気調和機、空気清浄機、冷蔵庫、洗濯機、衣類管理機及び浄水器など、様々な形態の家電機器、スマートフォンなどのモバイル機器、及び自動車などに含まれる様々な形態の電子装置(例えば、自律走行のために備えられる装置又は車両の運行を制御するための装置など)など、様々な形態の装置を含んでいてもよい。
【0057】
また、複数個の使用者機器210,220,230,240の各々は、少なくとも1つ以上の使用者端末を含んでいてもよい。少なくとも1つ以上の電子機器の各々は、管理サーバ100から受信したファイル(すなわち、デルタデータ及び/又は命令語セットを含むファイル)に応答して、プログラムデータをアップデートすることができる。
【0058】
以下、アップグレードする電子機器の一例として、家電機器をアップグレードする場合を例に挙げて説明する。しかしながら、本発明の範囲は、これに限定されない。
【0059】
図2は、本発明の一実施形態による家電機器をアップグレードするシステムの構成を概略的に示した図であって、
図1の使用者機器をより具体的に示した図である。本発明の一実施形態によるシステムは、管理サーバ100、アクセスポイント300、複数個の家電機器410,420,430,440,500,600、及び使用者端末700を含んでいてもよい。すなわち、
図1の複数個の使用者機器210,220,230,240の各々は、アクセスポイント300、複数個の家電機器410,420,430,440,500,600、及び使用者端末700のうち、少なくとも1つ以上を含んでいてもよい。
【0060】
管理サーバ100の機能は、
図1で説明したのと同様であってもよい。
【0061】
アクセスポイント300は、管理サーバ100と家電機器410,420,500,600を中継する働きをすることができる。アクセスポイント300は、Wi-Fiルータであってもよい。
【0062】
複数個の家電機器410,420,430,440,500,600の各々は、当該プログラムの実行に従って固有の機能を行うことができる。
【0063】
家電機器410,420,430,440は、所定の機能のために連結された家電機器であってもよい。例えば、第1-1家電機器410、第1-2家電機器420、第1-3家電機器430は、空気調和機の室内機であり、第1-4家電機器440は、空気調和機の室外機であってもよい。また、第1-1家電機器410及び第1-2家電機器420は、通信モジュール(例えば、Wi-Fiモジュール)を含んでいてもよい。よって、第1-1家電機器410、第1-2家電機器420、第1-3家電機器430の各々は、当該プログラムの実行に従って室内空気の温度、湿度及び微小粒子状物質の濃度のうち、少なくとも1つ以上を調節することができる。
【0064】
第2家電機器500及び第3家電機器600の各々は、独立して動作する家電機器であってもよい。例えば、第2家電機器500及び第3家電機器600の各々は、洗濯機、空気清浄機、衣類管理機及び冷蔵庫など、様々な家電機器のうち1つであってもよい。第2家電機器500及び第3家電機器600の各々は、通信モジュール(例えば、Wi-Fiモジュール)を含んでいてもよい。
【0065】
使用者端末700は、複数個の家電機器410,420,430,440,500,600を所有した使用者のモバイル端末であってもよい。
【0066】
実施形態によっては、アクセスポイント300を除くことができる。この場合、家電機器410,420,500,600の各々がインターネット網などを介して管理サーバ100に接続することができる。
【0067】
図3は、本発明の一実施形態による家電機器をアップグレードする管理サーバの構成を概略的に示したブロック図であって、管理サーバ100は、制御部110と、通信部120と、貯蔵部130と、を含んでいてもよい。
【0068】
制御部110は、貯蔵部130に貯蔵されたデータに基づいて家電機器別にデルタデータを生成し、通信部120を介して家電機器(
図2の410、420、500、600)にデルタデータを送信することができる。制御部110は、デルタデータを送信するとき、家電機器(
図2の410、420、500、600)の制御部によって行われる命令語セットも併せて送信することができる。
【0069】
制御部110は、少なくとも1つのプロセッシングユニット及び/又はメモリを含んでいてもよい。ここで、プロセッシングユニットは、例えば、中央処理装置(CPU)、グラフィックス処理処置(GPU)、マイクロプロセッサ、注文型半導体(Application Specific Integrated Circuit,ASIC)、Field Programmable Gate Arrays(FPGA)などを含んでいてもよく、複数のコアを有していてもよい。メモリは、揮発性メモリ(例えば、RAMなど)、非揮発性メモリ(例えば、ROM、フラッシュメモリなど)、又はこれらの組み合わせであってもよい。
【0070】
通信部120は、制御部110の制御に従って、信号を外部に送信することができる。また、通信部120は、外部から信号を受信し、受信された信号を制御部110に出力することができる。通信部120は、有線及び/又は無線で信号を送受信することができる。通信部120は、モデム、ネットワークインターフェースカード(NIC)、統合ネットワークインターフェース、無線周波数送信機/受信機、赤外線ポート、USB接続、又は他のコンピュータ装置との通信のため他のインターフェースを含んでいてもよい。
【0071】
貯蔵部130は、制御部110の制御に従って、通信部120を介して受信したデータ及び/又は貯蔵部130は、制御部110に従って、加工されたデータを貯蔵することができる。例えば、貯蔵部130は、使用者の識別情報、使用者の識別情報と連携した家電機器の識別情報、家電機器のバージョン別プログラムデータ、及び以前バージョンの各々のプログラムデータと最新バージョンのプログラムデータとの比較結果から導出されたデルタデータのうち、少なくとも1つ以上を貯蔵することができる。
【0072】
図4は、本発明の一実施形態によるアップグレードできる家電機器の構成を概略的に示したブロック図であって、本発明の一実施形態による家電機器は、通信部810と、制御部820と、第3貯蔵部830と、を含んでいてもよい。通信部810は、貯蔵部811及び送受信部812を含んでいてもよく、制御部820は、プロセッシングユニット821と、第1貯蔵部822と、第2貯蔵部823と、を含んでいてもよい。
図2の家電機器410,420,500,600の各々は、
図4に示した構成を含んでいてもよい。また、実施形態によっては、本発明の一実施形態による家電機器は、第1貯蔵部822、第2貯蔵部823、及び第3貯蔵部830のうち一部を備えていなくてもよい。
【0073】
通信部810は、管理サーバ(
図1又は
図2の100)からデータを受信し、受信したデータを制御部820に送信することができる。管理サーバ(
図1又は
図2の100)から受信したデータは、上述したデルタデータと、制御部820で行われる命令と、を含んでいてもよい。通信部810は、無線周波数送信機/受信機、赤外線ポート、USB接続、又は他のインターフェースを含んでいてもよい。例えば、通信部160は、Wi-Fi又はブルーツースなどの通信標準に従って信号を送受信する近距離通信モジュールを含んでいてもよい。
【0074】
貯蔵部811は、管理サーバ(
図1又は
図2の100)から受信したデータを貯蔵することができる。貯蔵部811は、非揮発性メモリであってもよい。例えば、貯蔵部811は、フラッシュメモリであってもよい。
【0075】
送受信部812は、貯蔵部811に貯蔵されたデータを制御部820に送信することができる。
【0076】
制御部820は、家電機器の機能を具現するためのプログラムを貯蔵し、貯蔵されたプログラムを実行して、家電機器が特定の機能を行うようにすることができる。また、制御部820は、通信部810から受信されたデータに応答して、貯蔵されたプログラムをアップデートすることができる。
【0077】
プロセッシングユニット821は、中央処理装置(CPU)、グラフィックス処理処置(GPU)、マイクロプロセッサ、注文型半導体(Application Specific Integrated Circuit,ASIC)、Field Programmable Gate Arrays(FPGA)などを含んでいてもよく、複数のコアを有していてもよい。
【0078】
第1貯蔵部822は、非揮発性メモリであってもよい。例えば、第1貯蔵部822は、フラッシュメモリであってもよい。第1貯蔵部822は、前記プログラムを貯蔵することができる。
【0079】
第2貯蔵部823は、揮発性メモリであってもよい。例えば、第2貯蔵部823は、ラム(RAM)であってもよい。第2貯蔵部823は、第1貯蔵部822に貯蔵されたプログラムデータのうち一部がローディングされて、第2貯蔵部823に貯蔵されたプログラムデータが第1貯蔵部822の特定の領域に書き込まれていてもよい。
【0080】
第3貯蔵部830は、非揮発性メモリであってもよい。第3貯蔵部は、フラッシュメモリ、磁気ストレージ、光学ストレージの1つであってもよい。家電機器の機能を行うためのプログラムは、第3貯蔵部830に貯蔵されていてもよい。
【0081】
図5は、本発明の一実施形態による家電機器をアップグレードする方法の全体的な動作を説明するための図である。
【0082】
先ず、通信部810は、制御部820に家電機器の識別情報を要請することができる(S101段階)。家電機器の識別情報は、家電機器の一連番号及びモデル名の何れか以上を含んでいてもよい。
【0083】
次に、制御部820は、製品情報要請に応答して、家電機器の識別情報を通信部810に返信することができる(S102段階)。
【0084】
次に、通信部810は、管理サーバ100に家電機器がアップグレードする内訳があるかに関する情報を要請することができる(S103段階)。このとき、通信部810は、家電機器の識別情報を管理サーバ100に送信することができる。また、通信部810は、使用者情報を更に管理サーバ100に送信することもできる。
【0085】
次に、管理サーバ100は、アップグレードする内訳があるか否かに関するアップグレード情報を通信部810に返信することができる(S104段階)。
【0086】
また、管理サーバ100は、使用者端末700にも前記アップグレード情報を提供することができる(S105段階)。管理サーバ100は、貯蔵部(
図3の130)に貯蔵された情報を用いて家電機器の使用者に関する情報を検索することもでき、通信部810から使用者情報を受信することもできる。
【0087】
次に、使用者が使用者端末700を用いてアップグレードを承諾すると、アップグレードの承諾に関する情報が使用者端末700から管理サーバ100に送信されていてもよい(S106段階)。
【0088】
使用者は、使用者端末700を用いてアップグレードを承諾する代わりに、家電機器の入出力装置を用いてアップグレードを承諾することもできる。
【0089】
使用者のアップグレードの承諾に応答して、管理サーバ100は、通信部810にアップグレードの開始を要請することができる(S107段階)。
【0090】
通信部810は、管理サーバ100のアップグレードの開始要請に応答して、ファイルの転送を要請することができる(S108段階)。
【0091】
管理サーバ100は、通信部810のファイルの転送要請に応答して、デルタデータ及び/又は命令語セットを含むファイルを通信部810に送信することができる(S109段階)。
【0092】
通信部810及び制御部820は、管理サーバ100から受信したファイルを用いて家電機器のプログラムをアップデートすることができる(S110段階)。
【0093】
アップグレードが完了すると、通信部810は、管理サーバ100にアップグレードの完了を返信することができる(S111段階)。
【0094】
管理サーバ100は、通信部810から受信したアップグレードの完了返信に応答して、使用者端末にアップグレードの完了に関する情報を提供することができる(S112段階)。
【0095】
図6は、本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
図6において、840は、家電機器の非揮発性メモリを、850は、家電機器の揮発性メモリをそれぞれ示す。例えば、
図6の840は、
図4の第1貯蔵部822と同一のものであってもよく、
図6の850は、
図4の第2貯蔵部823と同一のものであってもよい。デルタデータは、管理サーバ100から転送されたデータであって、プログラムデータのうち、変更された部分のデータを示す。
【0096】
本発明の一実施形態によれば、管理サーバ100は、プログラムデータのうち、変更された部分のデータであるデルタデータ、デルタデータが書き込まれる位置、及びデルタデータを定めた位置に書き込むための命令語などを家電機器に送信する。
【0097】
また、本発明の一実施形態によれば、家電機器の機能を具現するためのプログラムは、複数個のセクションに分割して貯蔵されていてもよい。ここで、セクションは、貯蔵部の一領域を意味するものであってもよい。
【0098】
図6に示したように、プログラムは、3個のセクションに分割して貯蔵されており、新しいプログラムファイルは、セクション2とセクション3の各々の一部分が変更されたものであると仮定する。
【0099】
以下、各動作は、家電機器の制御部(
図4の820(より具体的には、家電機器のプロセッシングユニット821)によって行うことができる。
【0100】
先ず、非揮発性メモリ840のうち、セクション2に貯蔵されたデータが読み取られ、読み取られたデータは、揮発性メモリ850に書き込まれていてもよい。次に、揮発性メモリ850に書き込まれたプログラムデータのうち一部が、管理サーバ100から受信されたデルタデータに置換されていてもよい。次に、非揮発性メモリ840のセクション2に対する削除作業が行われ、修正されたプログラムデータ841が非揮発性メモリ840のセクション2に書き込まれていてもよい。
【0101】
同様、非揮発性メモリ840のうち、セクション3に貯蔵されたデータが読み取られ、読み取られたデータは、揮発性メモリ850に書き込まれていてもよい。次に、揮発性メモリ850に書き込まれたプログラムデータのうち一部が、管理サーバ100から受信されたデルタデータに置換されていてもよい。その後、非揮発性メモリ840のセクション3に対する削除作業が行われ、修正されたプログラムデータ842が非揮発性メモリ840のセクション3に書き込まれていてもよい。
【0102】
図7は、本発明の一実施形態による家電機器をアップグレードする方法において、デルタデータを生成して転送する過程を説明するための図である。
図7における識別番号900は、プログラム開発者の端末を示す。また、
図7において、PGM#1は、バージョン1のプログラムを、PGM#2は、バージョン2のプログラムを、PGM#3は、バージョン3のプログラムをそれぞれ示し、バージョン3のプログラムが最も最新バージョンのプログラムであると仮定する。
【0103】
プログラム開発者が新しいプログラムを開発すると、開発されたプログラムは、管理サーバ100に転送される。このとき、当該プログラムが実行される家電機器の識別情報も併せて管理サーバ100に転送されていてもよい。転送されたプログラムは、管理サーバ100の貯蔵部(
図3の130)に貯蔵されていてもよい。
【0104】
管理サーバ100(より具体的には、管理サーバの制御部(
図3の110))は、貯蔵されたプログラムに基づいてデルタデータを生成することができる。すなわち、管理サーバ100は、バージョン3のプログラム(PGM#3)と、バージョン1のプログラム(PGM#1)とを比較して、第1デルタデータ(Delta#1)を生成し、バージョン3のプログラム(PGM#3)と、バージョン2のプログラム(PGM#2)とを比較して、第2デルタデータ(Delta#2)を生成することができる。
【0105】
その後、管理サーバ100は、現在バージョン1のプログラム(PGM#1)が貯蔵された家電機器801をアップグレードするために、第1デルタデータ(Delta#1)を家電機器801に転送することができ、現在バージョン2のプログラム(PGM#2)が貯蔵された家電機器802をアップグレードするために、第2デルタデータ(Delta#2)を家電機器802に転送することができる。
【0106】
図8は、本発明の一実施形態による家電機器をアップグレードする方法において、既存のプログラムデータ(a)と新しいプログラムデータ(b)の一例を概略的に示した図である。
図8における斜線でハッチングした部分が変更された部分を示す。
【0107】
図8(a)に示したように、既存のプログラムデータは、セクション841に貯蔵されたAブロック、セクション842に貯蔵されたBブロック、セクション844に貯蔵されたCブロック、及びセクション845に貯蔵されたDブロックを含んでいてもよい。
図8(b)に示したように、新しいプログラムデータは、セクション841に貯蔵されたA’ブロック、セクション842に貯蔵されたBブロック、及びセクション844に貯蔵されたD’ブロックを含んでいてもよい。
【0108】
管理サーバ100(より具体的には、管理サーバ100の制御部(
図4の110))は、既存のプログラムデータ(
図8(a))と、新しいプログラムデータ(
図8(b))とを比較して、デルタデータを生成することができる。
【0109】
具体的に、管理サーバ100は、新しいプログラムデータ(
図8(b))の第一セクション841のデータ(A’ブロック)に最も類似するデータを既存のプログラムデータ(
図8(a))から検索する。検索の際、管理サーバ100は、既存のプログラムデータが貯蔵された貯蔵部の領域を順次スキャンすることができる。このとき、セクション別にスキャンせず、アドレスを順次増加させながらスキャンすることができる。管理サーバ100は、第一セクション(
図8(a)の841)のデータ(Aブロック)が最も類似するデータであることを把握した後、相違する部分のデータ(
図8(b)の841における斜線部分のデータ)をデルタデータの第1構成と決定することができる。
【0110】
次に、管理サーバ100は、新しいプログラムデータ(
図8(b))の第二セクション842のデータ(Bブロック)に最も類似するデータを既存のプログラムデータ(
図8(a))から検索する。管理サーバ100は、第二セクション(
図8(a)の842)のデータ(Bブロック)が同じデータであることを把握することができる。
【0111】
次に、管理サーバ100は、新しいプログラムデータ(
図8(b))の第四セクション844のデータ(D’ブロック)に最も類似するデータを既存のプログラムデータ(
図8(a))から検索する。管理サーバ100は、第五セクション(
図8(a)の845)のデータ(Dブロック)に最も類似するデータであることを把握した後、相違する部分のデータ(
図8(b)の844における斜線部分のデータ)をデルタデータの第2構成と決定することができる。
【0112】
斯かる過程によって、管理サーバ100は、既存のプログラムデータ(
図8(a))において、第一セクション841のデータのうち一部をデルタデータの第1構成に置換し、第五セクション845のデータのうち一部をデルタデータの第2構成に置換した後、第五セクション845のデータを第四セクションに移すと、新しいプログラムデータ(
図8(b))と同一になることを把握することができる。
【0113】
図8では、新しいプログラムデータの1つのセクションのデータに類似するデータが、既存のプログラムデータの1つのセクションに貯蔵された場合を例に挙げて説明したが、新しいプログラムデータの1つのセクションのデータに類似するデータが、既存のプログラムデータの2個のセクションに分割して貯蔵される場合も発生し得る。この場合も、上述と同様の方式でデルタデータを生成することができる。
【0114】
図9は、本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【0115】
図9に示した方法は、家電機器の制御部820(より具体的には、プロセッシングユニット821)によって行うことができ、制御部820がこのような動作を行わせる命令語セット及びデルタデータは、管理サーバ100から家電機器に送信することができる。
【0116】
先ず、
図9(a)は、プログラムデータのアップデート前を示したものである。
【0117】
次に、
図9(b)を参照すると、セクション841のデータ(A)がデータ(A’)に変更されて、セクション843に書き込まれていてもよい。具体的な過程は、
図8で説明したとおりである。すなわち、セクション841のデータ(A)を読み取って、揮発性メモリ(例えば、RAM)の特定の領域に記録し、揮発性メモリの特定の領域のうち、一部の領域のデータを管理サーバ100から受信したデルタデータに修正してデータ(A’)に変更し、揮発性メモリの特定の領域に記録されたデータ(A’)を非揮発性メモリ(例えば、フラッシュメモリ)のセクション843に記録することができる。
【0118】
次に、
図9(c)を参照すると、セクション845のデータ(D)がデータ(D’)に変更されて、セクション846に書き込まれていてもよい。具体的な過程は、
図8で説明したとおりである。
【0119】
次に、
図9(d)を参照すると、セクション843のデータ(A’)がセクション841に書き込まれていてもよい。具体的な過程を説明すると、セクション841のデータを削除し、セクション843のデータ(A’)を読み取って、揮発性メモリの特定の領域に記録し、揮発性メモリの特定の領域に記録されたデータ(A’)をセクション841に記録することができる。
【0120】
次に、
図9(e)を参照すると、セクション846のデータ(D’)がセクション844に書き込まれていてもよい。具体的な過程は、
図9(d)で説明したとおりである。
【0121】
次に、
図9(f)を参照すると、不要なセクションを削除することができる。すなわち、セクション843,845,846のデータを削除することができる。
【0122】
斯かる過程を経ることで、プログラムデータをアップデートするうちに、停電などによりアップデート過程が中断しても、家電機器が自ら復旧可能になり得る。
【0123】
図10は、本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
【0124】
図10に示した方法は、家電機器の制御部820(より具体的には、プロセッシングユニット821)によって行うことができ、制御部820がこのような動作を行わせる命令語セット及びデルタデータは、管理サーバ100から家電機器に送信することができる。
【0125】
図10に示した実施形態は、非揮発性メモリ(例えば、フラッシュメモリ)の容量が十分大きい場合である。例えば、
図5に示した第1貯蔵部822の容量が従来の2倍に設計されるか、家電機器が第3貯蔵部(
図5の830)を含む場合である。すなわち、
図10の850は、
図5に示した第1貯蔵部822であってもよく、
図10の860は、
図5に示した第3貯蔵部830であってもよい。
【0126】
先ず、
図10(a)は、プログラムデータのアップデート前を示したものである。
【0127】
次に、
図10(b)を参照すると、貯蔵部850のデータ(A、B、C、D)が貯蔵部860に複写されていてもよい。具体的に、貯蔵部850の各セクション851,852,853,854のデータを順次に読み取って、揮発性メモリの特定の領域に記録した後、揮発性メモリの特定の領域のデータを貯蔵部860の各セクション861,862,863,864に記録することができる。
【0128】
次に、
図10(c)を参照すると、貯蔵部(セクション851)のデータ(A)がデータ(A’)に変更されていてもよい。具体的な過程は、
図8で説明したとおりである。すなわち、セクション851のデータ(A)を読み取って、揮発性メモリ(例えば、RAM)の特定の領域に記録し、揮発性メモリの特定の領域のうち、一部の領域のデータを管理サーバ100から受信したデルタデータに修正してデータ(A’)に変更し、揮発性メモリの特定の領域に記録されたデータ(A’)を非揮発性メモリ(例えば、フラッシュメモリ)のセクション851に記録することができる。
【0129】
次に、
図10(d)を参照すると、セクション854のデータ(D)がデータ(D’)に変更されていてもよい。具体的な過程は、
図10(c)で説明したとおりである。
【0130】
次に、
図10(e)を参照すると、貯蔵部860に記録されたデータを削除することができる。
【0131】
図10に示した実施形態によれば、プログラムをアップデートする前に、以前プログラムをバックアップすることができる。よって、プログラムのアップデートの過程中、停電などを理由にアップデートが中断しても、誤りなくこれを復旧することができる。
【0132】
図11は、本発明の一実施形態による家電機器をアップグレードする方法において、プログラムデータをアップデートする過程を説明するための図である。
図11に示した段階は、
図5のS110段階で行うことができる。
【0133】
先ず、通信部810は、プログラムデータをアップデートする過程の開始を制御部820に通知することができる(S201段階)。
【0134】
次に、通信部810は、制御部820にヒストリページに関する情報を送信することができる(S202段階)。ヒストリページに関する情報は、家電機器に含まれた非揮発性メモリの特定のアドレスであってもよい。前記特定のアドレスには、制御部820がプログラムデータをアップデートする過程で行った命令語の個数に関する情報が記録されてていてもよい。
【0135】
次に、制御部820は、ヒストリページを読み取ることができる(S203段階)。上述したように、ヒストリページには、以前に行った命令語の個数に関する情報が記録されていてもよい。
【0136】
次に、制御部820は、確認信号(ack)を通信部810に送信することができる(S204段階)。
【0137】
通信部810は、確認信号(ack)に応答して、命令及び/又はデルタデータを制御部820に送信することができる(S205段階)。S205段階において、通信部810は、前記確認信号(ack)に応答して、貯蔵部811に貯蔵されている命令語及び/又はデルタデータを順次送信することができる。通信部810で送信する命令語には、一連番号が含まれていてもよい。
【0138】
制御部820は、プログラムのアップデートが開始した後に、受信した命令語の個数を示すカウント値が、ヒストリページに貯蔵された値より大きいか否かを判断することができる(S206段階)。受信した命令語の個数は、通信部810で送信する命令語に含まれた一連番号であってもよい。通信部810で送信する命令語に一連番号が含まれていない場合、制御部820は、プログラムのアップデートが開始した後から、命令語が受信される度にこれをカウントすることができる。
【0139】
S206段階で判断した結果、カウント値がヒストリページに貯蔵された値より大きくなければ、制御部820は、当該命令語を行わないで、確認信号(ack)を通信部810に送信することができる(S207段階)。
【0140】
S206段階で判断した結果、カウント値がヒストリページに貯蔵された値より大きいと、制御部820は、当該命令語を行うことができる(S208段階)。このとき、制御部820は、ヒストリページにカウント値を貯蔵することもできる(S208段階)。ヒストリページにカウント値を貯蔵する動作は、行った命令語の種類に応じて行うことができる。例えば、非揮発性メモリ(例えば、フラッシュメモリ)のデータを変更する動作を行った場合にのみ、ヒストリページにカウント値を貯蔵することができる。実施形態によって、非揮発性メモリ(例えば、フラッシュメモリ)のデータを削除する動作を行った場合にのみ、ヒストリページにカウント値を貯蔵することができる。
【0141】
次に、制御部820は、通信部810に確認信号(ack)を送信することができる(S209段階)。
【0142】
上述した過程を行うことによって、プログラムデータをアップデートするうちに、停電やその他誤りなどによってアップデートの動作が停止した場合も、アップデートを正常に完了することができる。すなわち、アップデートの動作が停止する前まで行った命令を記録した後、アップデートの動作が再び開始したとき、アップデートの動作が停止する前まで行った動作は、行わないで、その動作に次いでに、アップデートの動作を行うことができる。このとき、非揮発性メモリのデータを変更する命令語を行う場合にのみ、ヒストリページにカウント値を記録することで、揮発性メモリに対する作業は、改めて行うことができる。但し、非揮発性メモリにデータを記録する作業の場合、動作中に停止すると、データが正常に記録されないことがある。よって、非揮発性メモリのデータを削除する場合にのみ、ヒストリページにカウント値を記録することで、作業の信頼性をより向上させることができる。
【0143】
次に、通信部810は、プログラムデータのアップデートが完了したかを判断することができる(S210段階)。通信部810は、貯蔵部811に貯蔵された命令語セットが何れも制御部820に送信された場合、プログラムデータのアップデートが完了したと判断することができる。
【0144】
次に、通信部810は、検査合計(checksum)を制御部820に送信し(S211段階)、制御部820は、確認後、誤りがなければ、確認信号(ack)を通信部810に返信することができる(S212段階)。すなわち、データの転送などに誤りがあったか否かを確認することができる。図示とは異なり、検査合計のほか、他の方式でデータの転送に誤りがあったか否かを確認することもできる。
【0145】
次に、通信部810は、連結の解除を制御部820に通知することができる(S213段階)。
【0146】
制御部820は、確認信号(ack)を通信部810に返信することができ(S214段階)、通信部810は、最終的に制御部820との連結を解除することができる。
【0147】
以上のように、本発明について例示の図面を参照して説明したが、本発明は、本明細書で開示の実施形態と図面によって限定されるものではなく、本発明の技術思想の範囲内における通常の技術者にとって様々な変形を行えることは自明である。さらに、本発明の実施形態を前述しながら、本発明の構成による作用効果を明示的に記載して説明しなかったとしても、当該構成によって予測可能な効果も認めるべきであることは当然である。
【0148】
〔特許請求の範囲(国際出願時)〕
〔請求項1〕
電子機器であって、
プログラムデータを貯蔵する貯蔵部と、
管理サーバから前記プログラムデータをアップデートする為に、ファイルを受信し貯蔵し、及び、前記貯蔵したファイルに基づいて、前記プログラムデータをアップデートする為の更新データを送信する通信部と、
前記更新データに応答して、前記プログラムデータをアップデートする制御部と、を備えてなり、
前記通信部は、前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記更新データとして送信する、電子機器。
〔請求項2〕
前記制御部は、
前記プログラムデータを貯蔵する貯蔵部と、
前記貯蔵部の第1領域の第1データを読み取り、前記第1領域のデータのうちの一部を前記デルタデータに修正して第2データを生成し、前記第2データを前記第1領域と相違する第2領域に貯蔵するプロセッシングユニットと、を備える、請求項1に記載の電子機器。
〔請求項3〕
前記制御部は、
非揮発性メモリを含み、前記プログラムデータを貯蔵する第1貯蔵部と、
揮発性メモリを含む第2貯蔵部と、
前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニットと、を備え、
前記プロセッシングユニットは、
前記第1貯蔵部の第1領域のデータを読み取って、前記第2貯蔵部の第2領域に記録し、前記第2領域のうち一部のデータを前記デルタデータに修正し、前記第2領域のデータを前記第1貯蔵部の前記第1領域と相違する第3領域に記録する、請求項1に記載の電子機器。
〔請求項4〕
前記第1貯蔵部は、複数個のセクションを備え、
前記プロセッシングユニットは、前記第3領域に記録されたデータを前記複数個のセクションの何れかに記録した後、前記第3領域のデータを削除する、請求項3に記載の電子機器。
〔請求項5〕
前記制御部は、
非揮発性メモリを備え、前記プログラムデータを貯蔵する第1貯蔵部と、
揮発性メモリを備えた第2貯蔵部と、
前記更新データに応答して、前記プログラムデータをアップデートするプロセッシングユニットと、を備え、
前記電子機器は、非揮発性メモリを備えた第3貯蔵部、を更に備え、
前記プロセッシングユニットは、
第1貯蔵部に貯蔵された前記プログラムデータを前記第3貯蔵部に記録し、
前記第1貯蔵部の第1領域のうちの一部のデータを前記デルタデータに修正する、請求項1に記載の電子機器。
〔請求項6〕
前記プロセッシングユニットは、前記プログラムデータのアップデートが完了した後、前記第3貯蔵部のデータを削除する、請求項5に記載の電子機器。
〔請求項7〕
前記制御部は、
前記プログラムのアップデートが開始した後に受信した命令語の個数を示すカウント値が、ヒストリページに貯蔵されたヒストリ値以下である場合、前記命令語を実行せず、並びに、
前記カウント値が前記ヒストリ値超過である場合、前記命令語を実行する、請求項1に記載の電子機器。
〔請求項8〕
前記制御部は、前記命令語が非揮発性メモリにデータを記録するか、又は、削除する命令語である場合、前記カウント値を前記ヒストリページに記録する、請求項7に記載の電子機器。
〔請求項9〕
管理サーバであって、
最新バージョンのプログラムデータと、以前バージョンのプログラムデータとを貯蔵する貯蔵部と;
前記最新バージョンのプログラムデータと、前記以前バージョンのプログラムデータとを比較して、デルタデータを生成する制御部と;
前記デルタデータを電子機器に送信する通信部と;を備えてなり、
前記デルタデータは、前記最新バージョンのプログラムデータのうち、前記以前バージョンのプログラムデータと相違するデータのみを備える、管理サーバ。
〔請求項10〕
前記制御部は、
前記最新バージョンのプログラムデータのうち、第1セクションのデータと、前記以前バージョンのプログラムデータとを全体比較して、
前記第1セクションのデータに最も類似するデータを検索し、
前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定する、請求項9に記載の管理サーバ。
〔請求項11〕
前記通信部は、前記デルタデータと、少なくとも1つ以上の命令語と、を備えるファイルを前記電子機器に送信する、請求項9に記載の管理サーバ。
〔請求項12〕
前記以前バージョンのプログラムデータは、第1バージョンのプログラムデータと、第2バージョンのプログラムデータと、を備え、
前記デルタデータは、第1デルタデータと第2デルタデータとを備え、
前記制御部は、
前記最新バージョンのプログラムデータと、前記第1バージョンのプログラムデータとを比較して、前記第1デルタデータを生成し、
前記最新バージョンのプログラムデータと、前記第2バージョンのプログラムデータとを比較して、前記第2デルタデータを生成する、請求項9に記載の管理サーバ。
〔請求項13〕
前記通信部は、
前記第1バージョンのプログラムデータを貯蔵する第1電子機器に前記第1デルタデータを送信し、
前記第2バージョンのプログラムデータを貯蔵する第2電子機器に前記第2デルタデータを送信する、請求項12に記載の管理サーバ。
〔請求項14〕
電子機器をアップグレードする方法であって、
前記電子機器は管理サーバから受信したファイルを貯蔵する通信部と、プログラムデータを貯蔵する制御部と、を備えてなり、
前記通信部が前記プログラムデータのうち、変更される部分のみからなるデルタデータと命令語を前記制御部に送信する段階と、
前記制御部が前記プログラムデータのうち一部のデータを前記デルタデータに修正する段階と、を含んでなる、電子機器をアップグレードする方法。
〔請求項15〕
前記修正する段階は、
前記プログラムデータを貯蔵する非揮発性メモリの第1領域のデータを読み取って、揮発性メモリの第2領域に記録する段階と、
前記第2領域のうち一部のデータを前記デルタデータに修正する段階と、
前記第2領域のデータを前記非揮発性メモリの前記第1領域と相違する第3領域に記録する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
〔請求項16〕
前記修正する段階は、
前記第3領域のデータを前記非揮発性メモリの複数個のセクションのうち1つに記録する段階と、
前記第3領域のデータを削除する段階と、を更に含む、請求項15に記載の電子機器をアップグレードする方法。
〔請求項17〕
前記修正する段階は、
第1非揮発性メモリに貯蔵された前記プログラムデータを第2非揮発性メモリに貯蔵する段階と、
前記第1非揮発性メモリの第1領域のデータのうち一部のデータを前記デルタデータに修正する段階と、
前記第2揮発性メモリのデータを削除する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
〔請求項18〕
前記修正する段階は、
前記命令語が非揮発性メモリにデータを記録するか、又は、削除する命令語である場合、前記プログラムのアップデートが開始した後に受信した命令語の個数を示すカウント値をヒストリページに記録する段階と、
前記カウント値と、前記ヒストリページに記録されたヒストリ値とを比較する段階と、
前記カウント値が前記ヒストリ値以下の場合、前記命令語を実行せず、並びに、前記カウント値が前記ヒストリ値超過の場合、前記命令語を実行する段階と、を含む、請求項14に記載の電子機器をアップグレードする方法。
〔請求項19〕
前記管理サーバが、最新バージョンのプログラムデータのうち第1セクションのデータと、以前バージョンのプログラムデータとを全体比較して、前記第1セクションのデータに最も類似するデータを検索する段階と、
前記第1セクションのデータのうち、前記最も類似するデータと相違するデータを前記デルタデータと決定する段階と、を更に含む、請求項14に記載の電子機器をアップグレードする方法。
【国際調査報告】