JP2014238838A - ファームウェアを更新するための方法、装置、および通信デバイス - Google Patents

ファームウェアを更新するための方法、装置、および通信デバイス Download PDF

Info

Publication number
JP2014238838A
JP2014238838A JP2014115531A JP2014115531A JP2014238838A JP 2014238838 A JP2014238838 A JP 2014238838A JP 2014115531 A JP2014115531 A JP 2014115531A JP 2014115531 A JP2014115531 A JP 2014115531A JP 2014238838 A JP2014238838 A JP 2014238838A
Authority
JP
Japan
Prior art keywords
update
file
firmware
secure data
interface
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.)
Granted
Application number
JP2014115531A
Other languages
English (en)
Other versions
JP5838527B2 (ja
Inventor
ジンジン・ユ
Jingjing Yu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Device Co Ltd
Original Assignee
Huawei Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Device Co Ltd filed Critical Huawei Device Co Ltd
Publication of JP2014238838A publication Critical patent/JP2014238838A/ja
Application granted granted Critical
Publication of JP5838527B2 publication Critical patent/JP5838527B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Abstract

【課題】ファームウェアを更新するための方法、装置、および通信デバイスを提供する。【解決手段】ファームウェアを更新する方法は、更新開始コマンドを得る段階と、更新開始コマンドが得られた後でファームウェア更新ファイルをセキュアデータメモリから読み取る段階と、ファームウェア更新ファイルをフラッシュメモリに書き込む段階とを含む。SDインタフェースがSDIO機能をサポートしないとき、モバイル端末、およびSDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファイルに記憶されたデータが更新開始コマンドであるか更新データであるかを知る。通信デバイスは、更新開始コマンドをコマンドスワップファイルから得て、ファームウェア更新プロセスにおいてファームウェア更新ファイルを得て更新を実施する。【選択図】図16

Description

本出願は、デバイス更新技術の分野に関し、より詳細には、ファームウェアを更新するための方法、装置、および通信デバイスに関する。
今日、多くのモバイル端末がSD(Secure Digital:セキュアディジタル)インタフェースを有し、それにより、モバイル端末はSDカードをサポートすることができる。SDカードは、小型、大容量、およびプラグアンドプレイの特徴を有するので、SDカードは、データ記憶用にモバイル端末の外部記憶デバイスとして一般に使用される。さらに、モバイル端末は、SDカードを使用してファームウェアを更新することができる。
モバイル端末によってSDカードを使用してファームウェアを更新するプロセスは、次のとおりとすることができる。ファームウェア更新ファイルがSDカードにコピーされた後、SDカードはSDインタフェースに挿入され、それによりSDカードはモバイル端末に接続される。モバイル端末は、SDカード中のファームウェア更新ファイルを読み取って、モバイル端末のソフトウェアを更新する。
SDインタフェースを有する通信デバイスを、モバイル端末のSDインタフェースに挿入することができる。SDインタフェースを有する通信デバイスは、2G(第2世代)、3G(第3世代)、またはワイヤレスネットワークへのアクセスをサポートすることができる。したがって、モバイル端末は、SDインタフェースを有する通信デバイスを介して、ワイヤレスインターネットアクセスを実施することができる。
SDインタフェースがSDIO(Secure Digital Input and Output)機能をサポートするとき、SDインタフェースを有する通信デバイスは、モバイル端末中のファームウェア更新ファイルを、SDインタフェースを有する通信デバイスのSDメモリに書き込むことができる。SDインタフェースを有する通信デバイスは、モバイル端末中の更新開始コマンドを読み取った後、SDメモリ中のファームウェア更新ファイルを実行して、ファームウェア更新を完了する。
しかし、SDインタフェースの中には、SDIO機能をサポートしないものもある。このようなSDインタフェースを有する通信デバイスは、通信デバイスによってモバイル端末から読み取られたデータが更新開始コマンドであるかどうかを、SDインタフェースを介して知ることができず、さらに、SDインタフェースを有する通信デバイスは、ファームウェア更新を開始することができない。
SDインタフェースがSDIO機能をサポートしないときに、SDインタフェースを有する通信デバイスがSDインタフェースに挿入された後でファームウェア更新を開始することができないという、従来技術における問題を解決するために、本発明は、ファームウェアを更新する方法を提供する。
本出願はさらに、この方法を実際に実施および適用できることを確実にするために、ファームウェアを更新するための装置、および通信デバイスも提供する。
第1の態様によれば、本出願は、セキュアデータインタフェースを有する通信デバイスに適用される、ファームウェアを更新する方法を提供し、セキュアデータインタフェースを有する通信デバイスは、セキュアデータインタフェースを介してモバイル端末とデータ通信を実施する。セキュアデータインタフェースを有する通信デバイスは、セキュアデータメモリおよびフラッシュメモリを備え、セキュアデータメモリはコマンドスワップファイルを記憶する。セキュアデータメモリは、モバイル端末によってセキュアデータインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、セキュアデータインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。この方法は、
更新開始コマンドをコマンドスワップファイルから得る段階であって、更新開始コマンドがモバイル端末によってコマンドスワップファイルに書き込まれるものである段階と、
更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取る段階であって、ファームウェア更新ファイルがモバイル端末によってダウンロードされモバイル端末によってセキュアデータメモリに書き込まれるものであり、更新データが、セキュアデータインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む段階と、
ファームウェア更新ファイルをフラッシュメモリに書き込む段階とを含む。
第1の態様の第1の可能な実施方式では、セキュアデータメモリはさらに結果スワップファイルを記憶し、方法はさらに、ファームウェア更新ファイルをフラッシュメモリに書き込む過程で更新進捗状況を結果スワップファイルに書き込む段階と、
ファームウェア更新ファイルがフラッシュメモリに書き込まれた後で更新結果を結果スワップファイルに書き込む段階とを含む。
第1の態様の第1の可能な実施方式に関して、第1の態様の第2の可能な実施方式では、更新進捗状況および更新結果は、スモール・コンピュータ・システム・インタフェース・コマンドを使用して結果スワップファイルに書き込まれる。
第1の態様の第1の可能な実施方式に関して、第1の態様の第3の可能な実施方式では、方法はさらに、
更新ステータス照会コマンドをコマンドスワップファイルから得る段階と、
更新ステータス照会コマンドが得られた後で結果スワップファイルをモバイル端末に送る段階であって、更新進捗状況および更新結果が結果スワップファイルに書き込まれている段階とを含む。
第1の態様の第4の可能な実施方式では、方法はさらに、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で更新開始コマンドをコマンド更新ファイルから削除する段階を含む。
第1の態様の第1の可能な実施方式から第4の可能な実施方式までのいずれかの可能な実施方式に関して、第1の態様の第5の可能な実施方式では、方法はさらに、更新開始コマンドが得られた後で、セキュアデータインタフェースを有する通信デバイスを再起動し、セキュアデータインタフェースを有する通信デバイスの更新モードに入り、更新モードで、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取る段階と、
ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、セキュアデータインタフェースを有する通信デバイスを再起動し、セキュアデータインタフェースを有する通信デバイスの一般稼働モードに入る段階とを含む。
第1の態様の第1の可能な実施方式から第4の可能な実施方式までのいずれかの可能な実施方式に関して、第1の態様の第6の可能な実施方式では、更新データを記憶したファームウェア更新ファイルがセキュアデータメモリから読み取られる前に、方法はさらに、ファームウェア更新ファイルをチェックする段階と、
ファームウェア更新ファイルが有効なファイルであることがチェックされた後で、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取る段階とを含む。
第2の態様によれば、本出願は、セキュアデータインタフェースを有する通信デバイスとセキュアディジタルインタフェースを介してデータ通信を実施するモバイル端末に適用される、ファームウェアを更新する方法を提供する。セキュアデータインタフェースを有する通信デバイスは、セキュアデータメモリおよびフラッシュメモリを備え、セキュアデータメモリはコマンドスワップファイルを記憶する。セキュアデータメモリは、モバイル端末によってセキュアデータインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、セキュアデータインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。この方法は、
更新データを記憶したファームウェア更新ファイルをダウンロードする段階と、
ファームウェア更新ファイルをセキュアデータメモリに書き込む段階と、
ファームウェア更新ファイルがセキュアデータメモリに完全に書き込まれた後で、モバイル端末中の更新開始コマンドをコマンドスワップファイルに書き込み、それにより、セキュアデータインタフェースを有する通信デバイスが更新開始コマンドを得てファームウェア更新を実施する段階とを含む。
第2の態様の第1の可能な実施方式では、方法はさらに、モバイル端末中の更新ステータス照会コマンドをコマンドスワップファイルに書き込む段階を含む。
第2の態様の第1の可能な実施方式に関して、第2の態様の第2の可能な実施方式では、セキュアデータメモリはさらに結果スワップファイルを記憶し、方法はさらに、セキュアデータインタフェースを有する通信デバイスによって送られた結果スワップファイルを受け取る段階であって、結果スワップファイルが、セキュアデータインタフェースを有する通信デバイスが更新ステータス照会コマンドを得た後で送られ、更新進捗状況および更新結果が結果スワップファイルに書き込まれている段階と、
更新進捗状況および更新結果をモバイル端末上で表示する段階とを含む。
第2の態様の第1の可能な実施方式に関して、第2の態様の第3の可能な実施方式では、更新開始コマンドおよび更新ステータス照会コマンドは、スモール・コンピュータ・システム・インタフェース・コマンドを使用してコマンドスワップファイルに書き込まれる。
第3の態様によれば、本出願はさらに、セキュアデータインタフェースを有する通信デバイスに適用される、ファームウェアを更新するための装置を提供し、セキュアデータインタフェースを有する通信デバイスは、セキュアデータインタフェースを介してモバイル端末とデータ通信を実施する。セキュアデータインタフェースを有する通信デバイスは、セキュアデータメモリおよびフラッシュメモリを備え、セキュアデータメモリはコマンドスワップファイルを記憶する。セキュアデータメモリは、モバイル端末によってセキュアデータインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、セキュアデータインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。この装置は、
更新開始コマンドをコマンドスワップファイルから得るように構成された第1の取得ユニットであって、更新開始コマンドがモバイル端末によってコマンドスワップファイルに書き込まれる第1の取得ユニットと、
更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取るように構成された読取ユニットであって、ファームウェア更新ファイルがモバイル端末によってダウンロードされモバイル端末によってセキュアデータメモリに書き込まれ、更新データが、セキュアデータインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む読取ユニットと、
ファームウェア更新ファイルをフラッシュメモリに書き込むように構成された第1の書込ユニットとを備える。
第3の態様の第1の可能な実施方式では、セキュアデータメモリはさらに結果スワップファイルを記憶し、装置はさらに、ファームウェア更新ファイルをフラッシュメモリに書き込む過程で更新進捗状況を結果スワップファイルに書き込むように構成された第2の書込ユニットと、
ファームウェア更新ファイルがフラッシュメモリに書き込まれた後で更新結果を結果スワップファイルに書き込むように構成された第3の書込ユニットとを備える。
第3の態様の第1の可能な実施方式に関して、第3の態様の第2の可能な実施方式では、第2の書込ユニットは、スモール・コンピュータ・システム・インタフェース・コマンドを使用して更新進捗状況を結果スワップファイルに書き込み、
第3の書込ユニットは、スモール・コンピュータ・システム・インタフェース・コマンドを使用して更新結果を結果スワップファイルに書き込む。
第3の態様の第1の可能な実施方式に関して、第3の態様の第3の可能な実施方式では、装置はさらに、
更新ステータス照会コマンドをコマンドスワップファイルから得るように構成された第2の取得ユニットと、
更新ステータス照会コマンドが得られた後で結果スワップファイルをモバイル端末に送るように構成された送信ユニットであって、更新進捗状況および更新結果が結果スワップファイルに書き込まれている送信ユニットとを備える。
第3の態様の第4の可能な実施方式では、装置はさらに、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で更新開始コマンドをコマンド更新ファイルから削除するように構成された削除ユニットを備える。
第3の態様の第1の可能な実施方式から第4の可能な実施方式までのいずれかの可能な実施方式に関して、第3の態様の第5の可能な実施方式では、装置はさらに、更新開始コマンドが得られた後で、セキュアデータインタフェースを有する通信デバイスを再起動して、セキュアデータインタフェースを有する通信デバイスの更新モードに入り、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、セキュアデータインタフェースを有する通信デバイスを再起動して、セキュアデータインタフェースを有する通信デバイスの一般稼働モードに入るように構成された起動ユニットを備え、
読取ユニットは特に、更新モードで、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取るように構成される。
第3の態様の第1の可能な実施方式から第4の可能な実施方式までのいずれかの可能な実施方式に関して、第3の態様の第6の可能な実施方式では、装置はさらに、ファームウェア更新ファイルをチェックするように構成されたチェックユニットを備え、
読取ユニットは特に、ファームウェア更新ファイルが有効なファイルであることがチェックされた後で、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取るように構成される。
第4の態様によれば、本出願はさらに、セキュアデータインタフェースを有する通信デバイスを提供する。セキュアデータインタフェースを有する通信デバイスは、セキュアデータメモリと、フラッシュメモリと、本出願の第3の態様によるファームウェアを更新するための装置とを備える。ファームウェアを更新するための装置は、セキュアデータメモリおよびフラッシュメモリとそれぞれデータ通信を実施し、セキュアデータメモリはコマンドスワップファイルを記憶する。セキュアデータメモリは、モバイル端末によってセキュアデータインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、セキュアデータインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
第5の態様によれば、本出願は、セキュアデータインタフェースを有する通信デバイスとセキュアディジタルインタフェースを介してデータ通信を実施するモバイル端末に適用される、ファームウェアを更新するための装置を提供する。セキュアデータインタフェースを有する通信デバイスは、セキュアデータメモリおよびフラッシュメモリを備え、セキュアデータメモリはコマンドスワップファイルを記憶する。セキュアデータメモリは、モバイル端末によってセキュアデータインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、セキュアデータインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。この装置は、
更新データを記憶したファームウェア更新ファイルをダウンロードするように構成されたダウンロードユニットと、
ファームウェア更新ファイルをセキュアデータメモリに書き込むように構成された第4の書込ユニットと、
ファームウェア更新ファイルがセキュアデータメモリに完全に書き込まれた後でモバイル端末中の更新開始コマンドをコマンドスワップファイルに書き込むように構成された第5の書込ユニットであって、それにより、セキュアデータインタフェースを有する通信デバイスが更新開始コマンドを得てファームウェア更新を実施する第5の書込ユニットとを備える。
第5の態様の第1の可能な実施方式では、装置はさらに、モバイル端末中の更新ステータス照会コマンドをコマンドスワップファイルに書き込むように構成された第6の書込ユニットを備える。
第5の態様の第1の可能な実施方式に関して、第5の態様の第2の可能な実施方式では、セキュアデータメモリはさらに結果スワップファイルを記憶し、装置はさらに、セキュアデータインタフェースを有する通信デバイスによって送られた結果スワップファイルを受け取るように構成された受信ユニットであって、結果スワップファイルが、セキュアデータインタフェースを有する通信デバイスが更新ステータス照会コマンドを得た後で送られ、更新進捗状況および更新結果が結果スワップファイルに書き込まれている受信ユニットと、
更新進捗状況および更新結果をモバイル端末上で表示するように構成された表示ユニットとを備える。
第5の態様の第1の可能な実施方式に関して、第5の態様の第3の可能な実施方式では、第5の書込ユニットは、スモール・コンピュータ・システム・インタフェース・コマンドを使用して更新開始コマンドをコマンドスワップファイルに書き込み、
第6の書込ユニットは、スモール・コンピュータ・システム・インタフェース・コマンドを使用して更新ステータス照会コマンドをコマンドスワップファイルに書き込む。
従来技術と比較して、本出願は、以下の利点を有する。
SDインタフェースがSDIO機能をサポートしないとき、モバイル端末、およびSDインタフェースを有する通信デバイスは、セキュアデータメモリ中のデータをファイル単位でしか読み書きすることができない。本出願では、セキュアデータメモリ中で特別なファイルを定義して、更新開始コマンドと更新データとを異なるファイル中で記憶および更新することができ、それにより、モバイル端末、およびSDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファイルに記憶されたデータが更新開始コマンドであるか更新データであるかを知ることができる。
本出願では、セキュアデータメモリは、2つの特別なファイル、すなわちコマンドスワップファイルおよびファームウェア更新ファイルを記憶する。2つの特別なファイルのうち、コマンドスワップファイルは、モバイル端末によって書き込まれた更新開始コマンドを記憶し、ファームウェア更新ファイルは、更新データを記憶する。SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファームウェア更新プロセスにおいて必要とされるデータを対応するファイルから得ることができる。
SDインタフェースを有する通信デバイスが更新開始コマンドをコマンドスワップファイルから得たとき、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスはさらに、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取り、次いで、ファームウェア更新ファイルをフラッシュメモリに書き込んで、ファームウェア更新を完了する。
本出願の実施形態における技術的解決法についてより明確に述べるために、実施形態の記述に必要とされる添付図面を以下に簡単に紹介する。明らかに、以下の記述における添付図面は、本出願のいくつかの実施形態を示すに過ぎず、当業者なら、これらの添付図面から創意工夫なしに他の図面を導出することもできる。
本出願によるファームウェア更新方法のフローチャートである。 本出願によるファームウェア更新方法の別のフローチャートである。 本出願によるファームウェア更新方法のさらに別のフローチャートである。 本出願によるファームウェア更新方法のさらに別のフローチャートである。 本出願による、ファームウェアを更新するための装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、ファームウェアを更新するための別の装置の概略構造図である。 本出願による、SDインタフェースを有する通信デバイスの概略構造図である。 本出願による、SDインタフェースを有する通信デバイスとモバイル端末との間の接続の概略図である。 本出願による、SDインタフェースを有する通信デバイスに統合されるソフトウェアの概略図である。 本出願による、SDインタフェースを有する通信デバイスと、モバイル端末中の統合されたソフトウェアとの間の情報対話の概略図である。
本出願は、多くの汎用または専用コンピューティング装置(例えばパーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはポータブルデバイス、フラットパネルデバイス、マルチプロセッサ装置、および、これらの装置またはデバイスのいずれか1つを含む分散コンピューティングデバイス)の環境または構成に適用することができる。
以下、本出願の実施形態における添付図面を参照しながら、本出願の実施形態における技術的解決法について明確かつ完全に述べる。明らかに、述べる実施形態は、本出願の実施形態の全部ではなく一部に過ぎない。本出願の実施形態に基づいて創意工夫なしに当業者によって得られる他の全ての実施形態も、本出願の保護範囲に入るものとする。
実施形態1
本出願の実施形態1によるファームウェア更新方法は、SDインタフェースを有する通信デバイスに適用され、SDインタフェースを有する通信デバイスは、SDインタフェースを介してモバイル端末とデータ通信を実施する。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリはコマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。ファームウェアとは、EPROM(消去可能かつプログラム可能な読取専用メモリ)またはEROM(消去可能な読取専用メモリ)に書き込まれたプログラムコードを指す。より単純には、ファームウェアは、BIOS(Basic Input Output System、基本入出力システム)のソフトウェアであり、集積回路中で固定されたプログラムコードであり、集積回路の機能を制御および調整することを担う。
本出願の実施形態では、モバイル端末は、フラッシュメモリに直接アクセスすることはできず、したがって、モバイル端末は、フラッシュメモリ中のデータを直接変更することはできない。SDメモリとフラッシュメモリとは、物理ハードウェア上の2つの異なるチップであってよく、または1つのチップを共有してもよい。
本出願の実施形態におけるSDインタフェースはSDIO機能をサポートしないことに留意されたい。SDインタフェースがSDIO機能をサポートしないとき、モバイル端末は、SDメモリ中のデータをファイル単位でしか読み書きすることができない。したがって、特別なファイルをSDメモリ中で定義して、更新開始コマンドと更新データとを異なるファイルに記憶することができ、それにより、SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファイル中のデータが更新開始コマンドであるか更新データであるかを知ることができる。SDメモリ中の特別なファイルは、それぞれ2つの特別なファイル、すなわちコマンドスワップファイルおよびファームウェア更新ファイルである。2つの特別なファイルのうち、コマンドスワップファイルは、モバイル端末によって書き込まれた更新開始コマンドを記憶し、ファームウェア更新ファイルは、更新データを記憶する。SDインタフェースを有する通信デバイスは、ファームウェア更新プロセスにおいて必要とされるデータを、対応するファイルから得る。
図1は、本出願の実施形態1によるファームウェア更新方法のフローチャートであり、この方法は次のステップを含んでよい。
ステップ101:更新開始コマンドをコマンドスワップファイルから得る。
本実施形態では、SDインタフェースを有する通信デバイスとのデータ通信を実施するモバイル端末は、SDインタフェースを有する通信デバイス中のファームウェアのバージョン番号が、サーバに記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致するかどうかを検出し、バージョン番号が一致しないことを検出したときは、SDインタフェースを有する通信デバイスのファームウェアプログラムを更新する必要があると決定する。したがって、モバイル端末は、更新開始コマンドをコマンドスワップファイルに書き込む。
コマンドスワップファイルのフォーマットは、任意の方式でカスタマイズすることができる。例えば、コマンドスワップファイルは、バイナリファイルとして定義される。コマンドスワップファイル中の更新開始コマンドは、モバイル端末によって、SCSI(スモールコンピュータシステムインタフェース)コマンドを使用してコマンドスワップファイルに書き込むことができる。
更新開始コマンドをコマンドスワップファイルに書き込むのに使用されるSCSIコマンドは、REQ 1 uとすることができる。REQは、このコマンドが更新開始コマンドであることを示し、1は、コマンドシーケンス番号を示し、uは、更新コマンドの開始を示す。
複数の更新開始コマンドがコマンドスワップファイルに書き込まれる場合があることに留意されたい。異なる更新開始コマンド間を区別するために、異なるコマンドシーケンス番号を使用して更新開始コマンドが識別される。例えば、REQ 1 uは、第1の更新開始コマンドを示し、REQ 2 uは、第2の更新開始コマンドを示す。本実施形態では、更新開始コマンドを書き込む方式と、更新開始コマンドのフォーマットとを列挙するに過ぎない。他の書込方式およびコマンドフォーマットも本実施形態の保護範囲内にあり、本実施形態ではこれ以上1つずつ列挙しない。
ステップ102:更新開始コマンドが得られた後、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取る。
ファームウェア更新ファイルは、モバイル端末によってサーバからダウンロードされ、モバイル端末によってSDメモリに書き込まれる。更新データは、SDインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む。
ファームウェア更新ファイルは、バイナリファイルであり、ファイル情報ヘッダ、ファームウェアデータ、およびチェック情報を含んでよい。本実施形態では、ファームウェア更新ファイルのフォーマットは、既存のバイナリファイルのフォーマットと同じであり、本実施形態ではこれ以上述べない。
SDインタフェースを有する通信デバイスが更新開始コマンドを得た後、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスは、ファームウェア更新ファイルをSDメモリから得る。
SDインタフェースを有する通信デバイス中のファームウェアプログラムのバージョン番号が、サーバ上に記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致しないことを、モバイル端末が検出した場合、モバイル端末は、まずファームウェア更新ファイルをダウンロードし、次いでこれをSDメモリに書き込むことに留意されたい。ファームウェア更新ファイルを完全に書き込んだ後、モバイル端末は、更新開始コマンドをSDメモリ中のコマンドスワップファイルに書き込んで、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始したときにファームウェア更新ファイルがSDメモリに完全に書き込まれていることを確実にする。これにより、ファイル中の不完全な更新データによって引き起こされる更新失敗が回避される。
ステップ103:ファームウェア更新ファイルをフラッシュメモリに書き込む。
本実施形態では、ファームウェア更新原理は、新しいファームウェア更新ファイル中のプログラムコードをフラッシュメモリに書き込んで、フラッシュメモリに記憶されておりSDインタフェースを有する通信デバイスの起動時に読み取られるプログラムコードを置き換えることである。したがって、ファームウェア更新ファイルを得た後、SDインタフェースを有する通信デバイスはさらに、ファームウェア更新ファイルをフラッシュメモリに書き込んで、前にフラッシュメモリに記憶されていたプログラムコードを、フラッシュメモリ中のファームウェア更新ファイルに現在書き込まれたプログラムコードに変更し、SDインタフェースを有する通信デバイスのファームウェア更新を完了する。
SDインタフェースを有する通信デバイスと、モバイル端末とがデータ通信を実施するとき、異なるファイルが異なるデータを有する。したがって、モバイル端末は、ファイル名を識別することによって、異なるデータを対応するファイルに書き込むことができ、SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、モバイル端末によって書き込まれたデータが更新開始コマンドであるか更新データであるかを知ることができる。SDインタフェースを有する通信デバイスが更新開始コマンドをコマンドスワップファイルから得たとき、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスはさらに、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取り、次いでファームウェア更新ファイルをフラッシュメモリに書き込んで、ファームウェア更新を完了する。
SDインタフェースの中には、SDIO機能をサポートできるものもあることに留意されたい。モバイル端末と、SDインタフェースを有する通信デバイスとの間のデータ通信に使用されるSDインタフェースが、SDIO機能をサポートする場合、SDインタフェースを有する通信デバイスは、本実施形態によるファームウェア更新方法を使用することができ、または、SDIO機能に基づく既存のファームウェア更新方法を使用することもできる。
実施形態2
実施形態1で述べたファームウェア更新方法は、SDインタフェースがSDIO機能をサポートしないときの、SDインタフェースを有する通信デバイスのファームウェア更新問題を解決する。しかし、SDインタフェースを有する通信デバイスは、マンマシン対話に使用できるインタフェースを有さないので、SDインタフェースを有する通信デバイス中でファームウェア更新の進捗状況およびステータスを表示することができない。本出願の実施形態2によるファームウェア更新方法では、モバイル端末が、ファームウェア更新の進捗状況およびステータスを表示することができる。
本出願の実施形態2によるファームウェア更新方法は、SDインタフェースを有する通信デバイスに適用され、SDインタフェースを有する通信デバイスは、SDインタフェースを介してモバイル端末とデータ通信を実施する。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリは、コマンドスワップファイルおよび結果スワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
図2は、本出願の実施形態2によるファームウェア更新方法の別のフローチャートであり、この方法は次のステップを含んでよい。
ステップ201:更新開始コマンドをコマンドスワップファイルから得る。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
ステップ202:更新開始コマンドが得られた後、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取る。ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってセキュアデータメモリに書き込まれる。
ステップ203:ファームウェア更新ファイルをフラッシュメモリに書き込む。
本実施形態では、ステップ201〜ステップ203の具体的な実施プロセスは、ステップ101〜ステップ103の具体的な実施プロセスと同じであり、本実施形態ではこれ以上述べない。
ステップ204:ファームウェア更新ファイルをフラッシュメモリに書き込む過程で、更新進捗状況を結果スワップファイルに書き込む。
ステップ205:ファームウェア更新ファイルがフラッシュメモリに書き込まれた後、更新結果を結果スワップファイルに書き込む。
更新進捗状況は、フラッシュメモリへのファームウェア更新ファイル書込みの、現在の進捗状況を示す。例えば、ファームウェア更新ファイルの総サイズに対する、フラッシュメモリに書き込まれたファイルのサイズのパーセンテージを使用して、更新進捗状況が示される。更新結果は、更新の最終結果、例えば更新成功または更新失敗を示す。本実施形態では、SDインタフェースを有する通信デバイスは、異なる識別子を使用して更新成功または更新失敗を示すことができる。
本実施形態では、SCSIコマンドを使用して、更新進捗状況および更新結果を結果スワップファイルに書き込むことができる。更新進捗状況を結果スワップファイルに書き込むのに使用されるSCSIコマンドは、RSQ 1 m%とすることができる。1は、コマンドシーケンス番号を示し、更新開始コマンドのコマンドシーケンス番号に対応する。m%は、進捗状況を示す。SDインタフェースを有する通信デバイスは、ファームウェア更新が実施されるたびに、更新進捗状況を定期的に変更することができる。
更新結果を結果スワップファイルに書き込むのに使用されるSCSIコマンドは、RSP 1 sとすることができる。1は、コマンドシーケンス番号を示し、更新開始コマンドのコマンドシーケンス番号に対応する。sは、更新が成功したことを示す。更新が失敗した場合は、fが返されて更新失敗が示される。
モバイル端末がファームウェア更新ステータスを照会するとき、結果スワップファイルをSDメモリから得ることができる。モバイル端末が結果スワップファイルを得た後、モバイル端末はさらに、更新進捗状況および更新結果を結果スワップファイルから得て、それにより、ファームウェア更新進捗状況およびステータスをモバイル端末上で表示する。したがって、SDインタフェースを有する通信デバイスが表示装置を備えていないのでファームウェア更新の進捗状況およびステータスを表示できないという問題が解決される。上記からわかるように、本出願の実施形態2によるファームウェア更新方法はさらに、ファームウェア更新を実施しながら、ファームウェア更新の進捗状況およびステータスをモバイル端末上で表示することができる。
モバイル端末によって結果スワップファイルをSDメモリから得る具体的なプロセスは、次のとおりとすることができる。すなわち、SDインタフェースを有する通信デバイスは、コマンドスワップファイルから更新ステータス照会コマンドを得た後、結果スワップファイルをモバイル端末に送る。更新ステータス照会コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれるものであり、モバイル端末がファームウェア更新ステータスを照会する必要があることを示す。この場合、SDインタフェースを有する通信デバイスは、結果スワップファイルをモバイル端末に送る必要がある。
本実施形態では、更新ステータス照会コマンドもまた、SCSIコマンド、例えばREP 1 qを使用してコマンドスワップファイルに書き込むことができる。REPは、このコマンドが更新ステータス照会コマンドであることを示し、1は、コマンドシーケンス番号を示し、uは、ステータス照会の開始を示す。
結果スワップファイルのフォーマットは、任意の方式でカスタマイズできることに留意されたい。例えば、結果スワップファイルは、既存のバイナリファイルのフォーマットを使用することができる。複数の更新結果が結果スワップファイルに書き込まれる場合がある。異なる更新結果間を区別するために、異なるコマンドシーケンス番号を使用して更新結果が識別され、さらに、同じコマンドシーケンス番号を使用して、更新開始コマンドとそれに対応する更新結果とが識別される。例えば、REQ 1 uは第1の更新開始コマンドを示し、対応する更新結果はRSP 1 sとすることができる。REQ 2 uは第2の更新開始コマンドを示し、対応する更新結果はRSP 2 sとすることができる。本実施形態では、更新ステータス照会コマンドを書き込む方式と、更新ステータス照会コマンドのフォーマットとを列挙するに過ぎない。他の書込方式およびコマンドフォーマットも本実施形態の保護範囲内にあり、本実施形態ではこれ以上1つずつ列挙しない。
実施形態3
図3は、本出願の実施形態3によるファームウェア更新方法の別のフローチャートである。この方法は、SDインタフェースを有する通信デバイスに適用され、SDインタフェースを有する通信デバイスは、SDインタフェースを介してモバイル端末とデータ通信を実施する。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリは、コマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
図3に示すファームウェア更新方法は、次のステップを含んでよい。
ステップ301:更新開始コマンドをコマンドスワップファイルから得る。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
ステップ302:更新開始コマンドが得られた後、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取る。ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってセキュアデータメモリに書き込まれる。
ステップ303:ファームウェア更新ファイルをフラッシュメモリに書き込む。
本実施形態では、ステップ301〜ステップ303の具体的な実施プロセスは、ステップ101〜ステップ103の具体的な実施プロセスと同じであり、本実施形態ではこれ以上述べない。
ステップ304:ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後、更新開始コマンドをコマンド更新ファイルから削除する。
複数の更新開始コマンドがコマンド更新ファイルに書き込まれる場合があるので、前の更新後にコマンドスワップファイル中に残っている更新開始コマンドの干渉を回避するために、次の更新中に、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、コマンド更新ファイルに書き込まれた更新開始コマンドが削除される。
当然、図3に示すファームウェア更新方法が適用される、SDインタフェースを有する通信デバイス中では、SDメモリはさらに結果スワップファイルも記憶する。結果スワップファイルは、更新進捗状況および更新結果を記憶することができ、結果スワップファイルはさらにモバイル端末に送られてよい。更新進捗状況および更新結果は、モバイル端末上で表示される。詳細については、図2に示したファームウェア更新方法における結果スワップファイルに関する記述を参照することができ、これについては本実施形態ではこれ以上述べない。
上記の全ての方法実施形態によるファームウェア更新方法は、SDインタフェースを有する通信デバイスの更新モードで実施される必要があるが、SDインタフェースを有する通信デバイスは、電源投入後は一般稼働モードで稼働する。したがって、SDインタフェースを有する通信デバイスが更新開始コマンドを得た後、セキュアデータインタフェースを有する通信デバイスを再起動し、セキュアデータインタフェースを有する通信デバイスの更新モードに入り、次いで、更新モードで、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取る必要がある。ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後、セキュアデータインタフェースを有する通信デバイスは再起動されて、セキュアデータインタフェースを有する通信デバイスの一般稼働モードに入る。
一般稼働モードは、SDインタフェースを有する通信デバイスの実行するオペレーティングシステムが様々なサービス機能をユーザに提供できる稼働モードであり、更新モードは、SDインタフェースを有する通信デバイスの実行するオペレーティングシステムが更新サービス機能のみをユーザに提供できる稼働モードである。
以上の全ての方法実施形態では、SDインタフェースを有する通信デバイスによってファームウェア更新ファイルをフラッシュメモリに書き込むことは、ファームウェア更新ファイルのミラーリングデータをフラッシュメモリに書き込むこと、すなわち、ファームウェア更新ファイル中の新しいプログラムコードを使用して、フラッシュメモリに元々記憶されていたプログラムコードを置き換えることを含んでよい。新しいプログラムコードがフラッシュメモリに完全に書き込まれたとき、SDインタフェースを有する通信デバイスのファームウェア更新は完了する。SDインタフェースを有する通信デバイスが再び実行されたとき、フラッシュメモリ中の新しいプログラムコードが直接実行されてよい。
当然、以上の全ての実施形態では、ファームウェア更新ファイルがSDメモリに完全に書き込まれた後、SDインタフェースを有する通信デバイスはさらに、ファームウェア更新ファイルをチェックして、ファームウェア更新ファイルが有効なファイルかどうか判定する必要がある。これにより、無効なファイルをフラッシュメモリに書き込むことによって引き起こされる、SDインタフェースを有する通信デバイスの稼働エラーが回避される。有効なファイルとは、ファームウェア更新ファイルが、使用できるファイルであってオペレータ以外のユーザによって変更されていないファイルであることを示す。本実施形態では、ファームウェア更新ファイルをチェックするとき、SDインタフェースを有する通信デバイスは、チェックのために既存のチェック方法を使用することができ、これについては本実施形態ではこれ以上述べない。
以上の全ての方法実施形態は、SDインタフェースを有する通信デバイスの観点から述べている。以下では、モバイル端末の観点から、本出願の一実施形態によるファームウェア更新方法を紹介する。
実施形態4
本出願の実施形態4によるファームウェア更新方法は、モバイル端末に適用され、モバイル端末は、SDインタフェースを介して、SDインタフェースを有する通信デバイスとデータ通信を実施する。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリは、コマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
ファームウェアは、EPROMまたはEROMに書き込まれたプログラムである。本出願の実施形態では、モバイル端末は、フラッシュメモリに直接アクセスすることはできず、したがって、モバイル端末は、フラッシュメモリ中のデータを直接変更することはできない。SDメモリとフラッシュメモリとは、物理ハードウェア上の2つの異なるチップであってよく、または1つのチップを共有してもよい。
本出願の実施形態におけるSDインタフェースはSDIO機能をサポートしないことに留意されたい。SDインタフェースがSDIO機能をサポートしないとき、モバイル端末は、SDメモリ中のデータをファイル単位でしか読み書きすることができない。したがって、特別なファイルをSDメモリ中で定義して、更新開始コマンドと更新データとを異なるファイルに記憶することができ、それにより、SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファイルに記憶されたデータが更新開始コマンドであるか更新データであるかを知ることができる。SDメモリ中の特別なファイルは、それぞれ2つの特別なファイル、すなわちコマンドスワップファイルおよびファームウェア更新ファイルである。モバイル端末は、更新開始コマンドおよび更新データを2つの特別なファイルにそれぞれ書き込むことができ、SDインタフェースを有する通信デバイスは、ファームウェア更新プロセスにおいて必要とされるデータを、対応するファイルから得る。
図4は、本出願の実施形態4によるファームウェア更新方法のフローチャートであり、この方法は次のステップを含んでよい。
ステップ401:更新データを記憶したファームウェア更新ファイルをダウンロードする。
本実施形態では、モバイル端末は、SDインタフェースを有する通信デバイス中のファームウェアプログラムのバージョン番号が、サーバに記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致するかどうかを検出し、バージョン番号が一致しないことを検出したときは、SDインタフェースを有する通信デバイスのファームウェアプログラムを更新する必要があると決定する。したがって、モバイル端末は、更新データを記憶したファームウェア更新ファイルをサーバからダウンロードする。
ファームウェア更新ファイルは、バイナリファイルであり、ファイル情報ヘッダ、ファームウェアデータ、およびチェック情報を含んでよい。本実施形態では、ファームウェア更新ファイルのフォーマットは、既存のバイナリファイルのフォーマットと同じであり、本実施形態ではこれ以上述べない。
ステップ402:ファームウェア更新ファイルをSDメモリに書き込む。
ステップ403:ファームウェア更新ファイルがSDメモリに完全に書き込まれた後、モバイル端末中の更新開始コマンドをコマンドスワップファイルに書き込み、それにより、SDインタフェースを有する通信デバイスは、更新開始コマンドを得てファームウェア更新を実施する。
ファームウェア更新ファイルがSDメモリに完全に書き込まれた後、モバイル端末はさらに、更新開始コマンドをコマンドスワップファイルに書き込む。SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、コマンドスワップファイルが更新開始コマンドを記憶すると知ることができる。したがって、SDインタフェースを有する通信デバイスは、コマンド更新ファイルをポーリングして、更新開始コマンドが完全に書き込まれた後で更新開始コマンドを得る。コマンド更新ファイルをポーリングするとは、完全な更新開始コマンドがコマンド更新ファイルに書き込まれているかどうか定期的に照会することを意味する。
SDインタフェースを有する通信デバイスが更新開始コマンドを得た後、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスはさらに、ファームウェア更新ファイルを得て、ファームウェア更新ファイルをフラッシュメモリに書き込んでファームウェア更新を完了する。
SDメモリに書き込まれたファームウェア更新ファイルの保全性を保証し、それにより、更新開始コマンドの実行時にSDメモリ中の不完全なファームウェア更新ファイルによって引き起こされる更新失敗を回避するためには、ファームウェア更新ファイルの書込みのほうが、更新開始コマンドの書込みよりも勝ることに留意されたい。
加えて、SDインタフェースを有する通信デバイスによってファームウェア更新プロセスを実施する過程で、モバイル端末はさらに、更新ステータス照会コマンドをコマンドスワップファイルに書き込む。SDインタフェースを有する通信デバイスは、更新ステータス照会コマンドを得ると、結果スワップファイルをモバイル端末に送る。結果スワップファイルには、更新進捗状況および更新結果が書き込まれている。したがって、モバイル端末は、結果スワップファイルを受け取ると、更新進捗状況および更新結果をモバイル端末上で表示することができる。
モバイル端末は、ファームウェア更新プロセスごとに、更新ステータス照会コマンドをコマンドスワップファイルに定期的に書き込むことができる。SDインタフェースを有する通信デバイスは、更新ステータス照会コマンドを得るたびに、更新進捗状況が書き込まれた結果スワップファイルをモバイル端末に送り、それによりモバイル端末は、更新進捗状況をリアルタイムで監視することができる。SDインタフェースを有する通信デバイスが、ファームウェア更新プロセスにおける最後の更新ステータス照会コマンドを得ると、SDインタフェースを有する通信デバイスは最終的な更新進捗状況および更新結果が書き込まれた結果スワップファイルをモバイル端末に送ることができ、それにより最終的な更新結果をモバイル端末上で表示することができる。
本実施形態における更新開始コマンドおよび更新ステータス照会コマンドは、SCSIコマンドを使用して書き込むことができることに留意されたい。SCSIコマンドのフォーマットについては、SDインタフェースを有する通信デバイスの観点から述べるファームウェア更新方法を参照することができ、本実施形態ではこれ以上紹介しない。コマンドスワップファイルおよび結果スワップファイルのフォーマットは、任意の方式でカスタマイズすることができ、例えば、コマンドスワップファイルおよび結果スワップファイルは、既存のバイナリファイルのフォーマットを使用することができる。
実施形態5
実施形態1に示した方法実施形態に対応して、本実施形態は、ファームウェアを更新するための装置を提供する。ファームウェアを更新するための装置は、SDインタフェースを有する通信デバイスに適用され、SDインタフェースを有する通信デバイスは、SDインタフェースを介してモバイル端末とデータ通信を実施する。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリはコマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。ファームウェアは、EPROMまたはEROMに書き込まれたプログラムコードである。
SDインタフェースを有する通信デバイスとデータ通信を実施するモバイル端末は、フラッシュメモリに直接アクセスすることはできず、したがって、モバイル端末は、フラッシュメモリ中のデータを直接変更することはできないことに留意されたい。SDメモリとフラッシュメモリとは、物理ハードウェア上の2つの異なるチップであってよく、または1つのチップを共有してもよい。
本実施形態では、SDインタフェースはSDIO機能をサポートしない。SDインタフェースがSDIO機能をサポートしないとき、モバイル端末は、SDメモリ中のデータをファイル単位でしか読み書きすることができない。したがって、特別なファイルをSDメモリ中で定義して、更新開始コマンドと更新データとを異なるファイルに記憶することができ、それにより、SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、ファイル中のデータが更新開始コマンドであるか更新データであるかを知ることができる。SDメモリ中の特別なファイルは、それぞれ2つの特別なファイル、すなわちコマンドスワップファイルおよびファームウェア更新ファイルである。2つの特別なファイルのうち、コマンドスワップファイルは、モバイル端末によって書き込まれた更新開始コマンドを記憶し、ファームウェア更新ファイルは、更新データを記憶する。SDインタフェースを有する通信デバイスは、ファームウェア更新プロセスにおいて必要とされるデータを、対応するファイルから得る。
図5は、本出願の一実施形態による、ファームウェアを更新するための装置の概略構造図である。この装置は、第1の取得ユニット11、読取ユニット12、および第1の書込ユニット13を備えてよい。
第1の取得ユニット11は、更新開始コマンドをコマンドスワップファイルから得るように構成される。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
SDインタフェースを有する通信デバイス中のファームウェアプログラムのバージョン番号が、サーバ上に記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致しないことを、モバイル端末が検出した場合、モバイル端末は、SDインタフェースを有する通信デバイスのファームウェアプログラムを更新する必要があると決定し、更新開始コマンドをコマンドスワップファイルに書き込む。更新開始コマンドは、SDインタフェースを有する通信デバイス中のファームウェアを更新する必要があることを示す。第1の取得ユニット11が更新開始コマンドを得ると、ファームウェア更新が開始する。
コマンドスワップファイルのフォーマットは、任意の方式でカスタマイズすることができる。例えば、コマンドスワップファイルは、バイナリファイルとして定義される。コマンドスワップファイル中の更新開始コマンドは、モバイル端末によって、SCSI(Small Computer System Interface、スモールコンピュータシステムインタフェース)コマンドを使用してコマンドスワップファイルに書き込むことができる。具体的なフォーマットについては、実施形態1で列挙したコマンドフォーマットを参照することができる。
読取ユニット12は、更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取るように構成される。
ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってSDメモリに書き込まれる。更新データは、SDインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む。ファームウェア更新ファイルは、バイナリファイルであり、ファイル情報ヘッダ、ファームウェアデータ、およびチェック情報を含んでよい。本実施形態では、ファームウェア更新ファイルのフォーマットは、既存のバイナリファイルのフォーマットと同じであり、本実施形態ではこれ以上述べない。
第1の取得ユニット11が更新開始コマンドを得た後、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスは、ファームウェア更新ファイルをSDメモリから得る。
SDインタフェースを有する通信デバイス中のファームウェアプログラムのバージョン番号が、サーバ上に記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致しないことを、モバイル端末が検出した場合、モバイル端末は、まずファームウェア更新ファイルをダウンロードし、次いでこれをSDメモリに書き込むことに留意されたい。ファームウェア更新ファイルを完全に書き込んだ後、モバイル端末は、更新開始コマンドをSDメモリ中のコマンドスワップファイルに書き込んで、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始したときにファームウェア更新ファイルがSDメモリに完全に書き込まれていることを確実にする。これにより、ファイル中の不完全な更新データによって引き起こされる更新失敗が回避される。
第1の書込ユニット13は、ファームウェア更新ファイルをフラッシュメモリに書き込むように構成される。
本実施形態では、ファームウェア更新原理は、新しいファームウェア更新ファイル中のプログラムコードをフラッシュメモリに書き込んで、フラッシュメモリに記憶されておりSDインタフェースを有する通信デバイスの起動時に読み取られるプログラムコードを置き換えることである。したがって、読取ユニット12がファームウェア更新ファイルを得た後、第1の書込ユニットがさらに、ファームウェア更新ファイルをフラッシュメモリに書き込んで、前にフラッシュメモリに記憶されていたプログラムコードを、フラッシュメモリ中のファームウェア更新ファイルに現在書き込まれたプログラムコードに変更し、SDインタフェースを有する通信デバイスのファームウェア更新を完了する。
SDインタフェースを有する通信デバイスと、モバイル端末とがデータ通信を実施するとき、異なるファイルが異なるデータを有する。したがって、モバイル端末は、ファイル名を識別することによって、異なるデータを対応するファイルに書き込むことができ、SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、モバイル端末によって書き込まれたデータが更新開始コマンドであるか更新データであるかを知ることができる。SDインタフェースを有する通信デバイスが更新開始コマンドをコマンドスワップファイルから得たとき、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスはさらに、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取り、次いでファームウェア更新ファイルをフラッシュメモリに書き込んで、ファームウェア更新を完了する。
実施形態6
実施形態2に示した方法実施形態に対応して、本出願の実施形態は、ファームウェアを更新するための別の装置を提供する。この装置の概略構造図を図6に示す。この装置は、第1の取得ユニット11、読取ユニット12、第1の書込ユニット13、第2の書込ユニット14、および第3の書込ユニット15を含んでよい。
第1の取得ユニット11は、更新開始コマンドをコマンドスワップファイルから得るように構成される。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
読取ユニット12は、更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取るように構成される。ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってSDメモリに書き込まれる。更新データは、SDインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む。
第1の書込ユニット13は、ファームウェア更新ファイルをフラッシュメモリに書き込むように構成される。
本実施形態における第1の取得ユニット11、読取ユニット12、および第1の書込ユニット13の具体的な機能および実装形態に関する詳細については、実施形態5に示したファームウェアを更新するための装置の記述を参照することができ、これについては本実施形態ではこれ以上述べない。
第2の書込ユニット14は、ファームウェア更新ファイルをフラッシュメモリに書き込む過程で更新進捗状況を結果スワップファイルに書き込むように構成される。
第3の書込ユニット15は、ファームウェア更新ファイルがフラッシュメモリに書き込まれた後で、更新結果を結果スワップファイルに書き込むように構成される。
更新進捗状況は、フラッシュメモリへのファームウェア更新ファイル書込みの、現在の進捗状況を示す。例えば、ファームウェア更新ファイルの総サイズに対する、フラッシュメモリに書き込まれたファイルのサイズのパーセンテージを使用して、更新進捗状況が示される。更新結果は、更新の最終結果、例えば更新成功または更新失敗を示す。本実施形態では、SDインタフェースを有する通信デバイスは、異なる識別子を使用して更新成功または更新失敗を示すことができる。
本実施形態では、第2の書込ユニット14は、SCSIコマンドを使用して、更新進捗状況を結果スワップファイルに書き込む。第3の書込ユニット15は、SCSIコマンドを使用して、更新結果を結果スワップファイルに書き込む。第2の書込ユニット14および第3の書込ユニット15の具体的な実行プロセスに関する詳細については、実施形態2に示したファームウェア更新方法の記述を参照することができ、これについては本実施形態ではこれ以上紹介しない。
本実施形態では、第2の書込ユニット14は、更新進捗状況を結果スワップファイルに書き込むことができる。第3の書込ユニット15は、更新結果を結果スワップファイルに書き込むことができる。したがって、モバイル端末はさらに、ファイル名を識別することによって結果スワップファイルを得て、更新進捗状況および更新結果を結果スワップファイルから読み取り、更新の進捗状況およびステータスをモバイル端末上で表示することができる。これにより、SDインタフェースを有する通信デバイスがファームウェア更新の進捗状況およびステータスを表示できないという問題が解決される。
モバイル端末によって結果スワップファイルをSDメモリから得る具体的なプロセスは、次のとおりとすることができる。すなわち、SDインタフェースを有する通信デバイスは、コマンドスワップファイルから更新ステータス照会コマンドを得た後、結果スワップファイルをモバイル端末に送る。更新ステータス照会コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれるものであり、モバイル端末がファームウェア更新ステータスを照会する必要があることを示す。この場合、SDインタフェースを有する通信デバイスは、結果スワップファイルをモバイル端末に送る必要がある。
図7は、図6に基づく実施形態6によるファームウェアを更新するための装置の別の概略構造図である。この装置はさらに、第2の取得ユニット16および送信ユニット17を備えてよい。
第2の取得ユニット16は、更新ステータス照会コマンドをコマンドスワップファイルから得るように構成される。
送信ユニット17は、更新ステータス照会コマンドが得られた後で、結果スワップファイルをモバイル端末に送るように構成される。結果スワップファイルには、更新進捗状況および更新結果が書き込まれている。
更新ステータス照会コマンドは、SDインタフェースを有する通信デバイスのファームウェア更新プロセスをユーザが照会するのに使用されるコマンドである。更新ステータス照会コマンドが得られたとき、これは、モバイル端末がファームウェア更新プロセスを照会する必要があることを示す。したがって、第2の取得ユニット16は、結果スワップファイルをモバイル端末に送るよう送信ユニット17をトリガする。本実施形態における更新ステータス照会コマンドのフォーマットに関する詳細については、実施形態2に示したファームウェア更新方法の紹介を参照することができ、これについては本明細書ではこれ以上述べない。
実施形態7
実施形態3に示した方法実施形態に対応して、本出願の実施形態は、ファームウェアを更新するための別の装置を提供する。この装置の概略構造図を図8に示す。この装置は、第1の取得ユニット11、読取ユニット12、第1の書込ユニット13、および削除ユニット18を備えてよい。
第1の取得ユニット11は、更新開始コマンドをコマンドスワップファイルから得るように構成される。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
読取ユニット12は、更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取るように構成される。ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってSDメモリに書き込まれる。更新データは、SDインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む。
第1の書込ユニット13は、ファームウェア更新ファイルをフラッシュメモリに書き込むように構成される。
本実施形態における第1の取得ユニット11、読取ユニット12、および第1の書込ユニット13の具体的な機能および実装形態に関する詳細については、実施形態5に示したファームウェアを更新するための装置の詳細な記述を参照することができ、これについては本実施形態ではこれ以上述べない。
削除ユニット18は、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、更新開始コマンドをコマンド更新ファイルから削除するように構成される。
複数の更新開始コマンドがコマンド更新ファイルに書き込まれる場合があるので、前の更新後にコマンドスワップファイル中に残っている更新開始コマンドの干渉を回避するために、次の更新中に、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、コマンド更新ファイルに書き込まれた更新開始コマンドが削除される。
当然、本実施形態による、ファームウェアを更新するための装置はさらに、図6の第2の書込ユニット14および第3の書込ユニット15、ならびに図7の第2の取得ユニット16および送信ユニット17も備えてよい。したがって、ファームウェアを更新するための装置は、結果スワップファイルをモバイル端末に送ることができる。モバイル端末はさらに、更新進捗状況および更新結果を結果スワップファイルから読み取り、ファームウェア更新の進捗状況およびステータスをモバイル端末上で表示する。これにより、SDインタフェースを有する通信デバイスがファームウェア更新の進捗状況およびステータスを表示できないという問題が解決される。
実施形態8
図9は、本出願の一実施形態による、ファームウェアを更新するための別の装置の概略構造図である。この装置は、第1の取得ユニット11、読取ユニット12、第1の書込ユニット13、および起動ユニット19を備えてよい。
第1の取得ユニット11は、更新開始コマンドをコマンドスワップファイルから得るように構成される。更新開始コマンドは、モバイル端末によってコマンドスワップファイルに書き込まれる。
起動ユニット19は、更新開始コマンドが得られた後で、セキュアデータインタフェースを有する通信デバイスを再起動して、セキュアデータインタフェースを有する通信デバイスの更新モードに入り、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、セキュアデータインタフェースを有する通信デバイスを再起動して、セキュアデータインタフェースを有する通信デバイスの一般稼働モードに入るように構成される。
本実施形態では、一般稼働モードは、SDインタフェースを有する通信デバイスの実行するオペレーティングシステムが様々なサービス機能をユーザに提供できる稼働モードであり、更新モードは、SDインタフェースを有する通信デバイスの実行するオペレーティングシステムが更新サービス機能のみをユーザに提供できる稼働モードである。
当然、起動ユニット19は、SDインタフェースを有する通信デバイスの動作モードを制御するために、図5〜図8に示したファームウェアを更新するための装置にも適用されてよい。これについては、本実施形態ではこれ以上、概略図を参照しながら1つずつ述べることはしない。
読取ユニット12は特に、更新モードで、更新データを記憶したファームウェア更新ファイルをセキュアデータメモリから読み取るように構成される。ファームウェア更新ファイルは、モバイル端末によってダウンロードされ、モバイル端末によってSDメモリに書き込まれる。更新データは、SDインタフェースを有する通信デバイスのファームウェアを更新するためのプログラムコードを含む。
第1の書込ユニット13は、ファームウェア更新ファイルをフラッシュメモリに書き込むように構成される。
本実施形態における第1の取得ユニット11、読取ユニット12、および第1の書込ユニット13の具体的な機能および実装形態に関する詳細については、実施形態5に示したファームウェアを更新するための装置の記述を参照することができ、これについては本実施形態ではこれ以上述べない。
以上の全ての装置実施形態で、第1の書込ユニット13は特に、ファームウェア更新ファイルのミラーリングデータをフラッシュメモリに書き込むように構成される。すなわち、ファームウェア更新ファイル中の新しいプログラムコードを使用して、フラッシュメモリに元々記憶されていたプログラムコードを置き換えるように構成される。新しいプログラムコードがフラッシュメモリに完全に書き込まれたとき、SDインタフェースを有する通信デバイスのファームウェア更新は完了する。SDインタフェースを有する通信デバイスが再び実行されたとき、フラッシュメモリ中の新しいプログラムコードが直接実行されてよい。
当然、以上の全ての装置実施形態で、ファームウェアを更新するための装置はさらに、ファームウェア更新ファイルをチェックするように構成されたチェックユニットを備えてよい。読取ユニット12は特に、ファームウェア更新ファイルが有効なファイルであることがチェックされた後で、更新データを記憶したファームウェア更新ファイルをSDメモリから読み取るように構成される。
チェックユニットは、ファームウェア更新ファイルをチェックして、ファームウェア更新ファイルが有効なファイルかどうか判定する。これにより、無効なファイルをフラッシュメモリに書き込むことによって引き起こされる、SDインタフェースを有する通信デバイスの稼働エラーが回避される。有効なファイルとは、ファームウェア更新ファイルが、使用できるファイルであってオペレータ以外のユーザによって変更されていないファイルであることを示す。本実施形態では、ファームウェア更新ファイルをチェックするとき、チェックユニットは、チェックのために既存のチェック方法を使用することができ、これについては本実施形態ではこれ以上述べない。
図5〜図9の概略構造図のいずれか1つに示した、ファームウェアを更新するための装置は、SDインタフェースを有する通信デバイスに備わってよい。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備える。ファームウェアを更新するための装置は、SDメモリおよびフラッシュメモリとそれぞれデータ通信を実施し、SDメモリはコマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
実施形態9
図10は、本出願の一実施形態による、ファームウェアを更新するための別の装置の概略構造図である。ファームウェアを更新するための装置は、SDインタフェースを有する通信デバイスとSDインタフェースを介してデータ通信を実施するモバイル端末に適用される。SDインタフェースを有する通信デバイスは、SDメモリおよびフラッシュメモリを備え、SDメモリはコマンドスワップファイルを記憶する。SDメモリは、モバイル端末によってSDインタフェースを介してアクセスされるメモリであり、フラッシュメモリは、SDインタフェースを有する通信デバイス中のファームウェアを記憶するメモリである。
本実施形態では、ファームウェアを更新するための装置は、ダウンロードユニット21、第4の書込ユニット22、および第5の書込ユニット23を備えてよい。
ダウンロードユニット21は、更新データを記憶したファームウェア更新ファイルをダウンロードするように構成される。
本実施形態では、モバイル端末は、SDインタフェースを有する通信デバイス中のファームウェアプログラムのバージョン番号が、サーバに記憶された、SDインタフェースを有する通信デバイスのファームウェアプログラムのバージョン番号と一致するかどうかを検出し、バージョン番号が一致しないことを検出したときは、SDインタフェースを有する通信デバイスのファームウェアプログラムを更新する必要があると決定する。したがって、ダウンロードユニット21は、更新データを記憶したファームウェア更新ファイルをサーバからダウンロードする。
ファームウェア更新ファイルは、バイナリファイルであり、ファイル情報ヘッダ、ファームウェアデータ、およびチェック情報を含んでよい。本実施形態では、ファームウェア更新ファイルのフォーマットは、既存のバイナリファイルのフォーマットと同じであり、本実施形態ではこれ以上述べない。
第4の書込ユニット22は、ファームウェア更新ファイルをSDメモリに書き込むように構成される。
第5の書込ユニット23は、ファームウェア更新ファイルがSDメモリに完全に書き込まれた後で、モバイル端末中の更新開始コマンドをコマンドスワップファイルに書き込むように構成され、それにより、SDインタフェースを有する通信デバイスは、更新開始コマンドを得てファームウェア更新を実施する。
第4の書込ユニット22がファームウェア更新ファイルをSDメモリに完全に書き込んだ後、第5の書込ユニット23がさらに、更新開始コマンドをコマンドスワップファイルに書き込む。SDインタフェースを有する通信デバイスは、ファイル名を識別することによって、コマンドスワップファイルが更新開始コマンドを記憶すると知ることができる。したがって、SDインタフェースを有する通信デバイスは、コマンド更新ファイルをポーリングして、更新開始コマンドが完全に書き込まれた後で更新開始コマンドを得る。コマンド更新ファイルをポーリングするとは、完全な更新開始コマンドがコマンド更新ファイルに書き込まれているかどうか定期的に照会することを意味する。
SDインタフェースを有する通信デバイスが更新開始コマンドを得た後、これは、SDインタフェースを有する通信デバイスがファームウェア更新の実施を開始することを示す。したがって、SDインタフェースを有する通信デバイスはさらに、ファームウェア更新ファイルを得て、ファームウェア更新ファイルをフラッシュメモリに書き込んでファームウェア更新を完了する。SDインタフェースを有する通信デバイスがどのようにファームウェア更新を実施するかに関する詳細については、SDインタフェースを有する通信デバイスに適用されるファームウェア更新方法を参照することができ、本実施形態ではこれ以上述べない。
実施形態10
図11は、本出願の一実施形態による、ファームウェアを更新するための別の装置の概略構造図である。図10に基づき、この装置はさらに、モバイル端末中の更新ステータス照会コマンドをコマンドスワップファイルに書き込むように構成された第6の書込ユニット24を備えてよい。
更新ステータス照会コマンドは、SDインタフェースを有する通信デバイスのファームウェア更新プロセスを照会するためのコマンドである。SDインタフェースを有する通信デバイスは、更新ステータス照会コマンドを得た後、更新進捗状況と更新結果とが書き込まれた結果スワップファイルをモバイル端末に送り、したがって、更新進捗状況および更新結果がモバイル端末上で表示される。これにより、SDインタフェースを有する通信デバイスが表示装置を備えていないのでファームウェア更新の進捗状況およびステータスを表示できないという問題が解決される。詳細については、図12に示す、ファームウェアを更新するための装置を参照することができる。
図12に示す、ファームウェアを更新するための装置は、図11に基づき、受信ユニット25および表示ユニット26をさらに備えてよい。
受信ユニット25は、SDインタフェースを有する通信デバイスによって送られた結果スワップファイルを受け取るように構成される。結果スワップファイルは、SDインタフェースを有する通信デバイスが更新ステータス照会コマンドを得た後で送られ、結果スワップファイルには、更新進捗状況および更新結果が書き込まれている。
表示ユニット26は、更新進捗状況および更新結果をモバイル端末上で表示するように構成される。
本実施形態では、第5の書込ユニット23は、SCSIコマンドを使用して更新開始コマンドをコマンドスワップファイルに書き込む。第6の書込ユニット24は、SCSIコマンドを使用して更新ステータス照会コマンドをコマンドスワップファイルに書き込む。詳細については、対応する方法実施形態を参照することができる。
本出願の実施形態はさらに、モバイル端末も提供する。モバイル端末は、ファームウェアを更新するための装置を備える。ファームウェアを更新するための装置の概略構造図については、図10〜図12の概略構造図のいずれか1つを参照することができる。したがって、本実施形態では、ファームウェアを更新するための装置についてこれ以上詳細に述べない。
加えて、本出願の実施形態はさらに、SDインタフェースを有する通信デバイスも提供する。SDインタフェースを有する通信デバイスは、SDインタフェース21のみで構成され、SDメモリ22、フラッシュメモリ23、プロセッサ24、およびSDインタフェースコントローラ25を備える。この通信デバイスの概略構造図については、図13を参照することができる。
SDインタフェース21は、SDバスを介して、SDインタフェースを有する通信デバイスとモバイル端末とを接続し、SDインタフェースを有する通信デバイスとモバイル端末との間のデータ通信は、SDインタフェースコントローラ25の制御下で、SDバス上で送信される。本実施形態では、SDバスは、SDインタフェースを有する通信デバイスとモバイル端末との間の、SDインタフェース標準に準拠したハードウェアバスである。
プロセッサ24は、SDメモリ22中のコマンドスワップファイルから更新開始コマンドを得て、更新開始コマンドを得た後でファームウェア更新ファイルをSDメモリ22から読み取り、ファームウェア更新ファイルをフラッシュメモリ23に書き込んで、SDインタフェースを有する通信デバイス中のファームウェアを更新するように構成される。
本実施形態では、SDインタフェースを有する通信デバイスに接続されるモバイル端末もまた、SDインタフェースで構成される。SDインタフェースは、SDバスを介して、SDインタフェースを有する通信デバイス上のSDインタフェースに接続され、モバイル端末中のSDインタフェースコントローラの制御下でデータ通信を実施する。SDインタフェースを有する通信デバイスとモバイル端末との間の接続の概略図については、図14を参照することができる。図14には、モバイル端末の構造の一部と、SDインタフェースを有する通信デバイスの構造とを示す。
SDインタフェースを有する通信デバイスが更新プロセスを実施するとき、モバイル端末と、SDインタフェースを有する通信デバイスとの間でSDインタフェースを接続するSDバスは、モバイル端末と、SDインタフェースを有する通信デバイスとの中のSDインタフェースコントローラの制御下で、接続を確立する。更新が開始すると、モバイル端末は、SDインタフェースを接続するSDバスを介して、ファームウェア更新ファイルをSDメモリ22に書き込む。ファームウェア更新ファイルがSDメモリに完全に書き込まれた後、モバイル端末は、更新開始コマンドをSDメモリ22中のコマンドスワップファイルに書き込む。プロセッサ24は、ファイル名を識別することによって、コマンドスワップファイルが更新開始コマンドを記憶すると知ることができる。したがって、プロセッサ24は、コマンドスワップファイルをポーリングして、更新開始コマンドが完全に書き込まれた後で更新開始コマンドを得る。
更新開始コマンドを得た後、プロセッサ24は、ファームウェア更新ファイルをSDメモリ22から読み取り、ファームウェア更新ファイルをフラッシュメモリ23に書き込んで、SDインタフェースを有する通信デバイス中のファームウェアを更新する。
ファームウェア更新ファイルをフラッシュメモリ23に書き込む過程で、プロセッサ24はさらに、更新進捗状況および更新結果をSDメモリ22中の結果スワップファイルに書き込むことができる。加えて、プロセッサ24が、コマンドスワップファイル中の更新ステータス照会コマンドを読み取った後、プロセッサ24は、更新進捗状況および更新結果を結果スワップファイルから読み取り、更新進捗状況および更新結果をモバイル端末に送る。それにより、モバイル端末は、更新進捗状況および更新結果を表示して、マンマシン対話を実現することができる。更新ステータス照会コマンドは、モバイル端末によって、SDメモリ22中のコマンドスワップファイルに書き込まれる。
本実施形態では、更新開始コマンド、更新ステータス照会コマンド、更新進捗状況、および更新結果は、種々のSCSIコマンドを使用して書き込むことができる。詳細については、方法実施形態における関連の記述を参照することができ、これについては本実施形態ではこれ以上述べない。
加えて、前の更新後にコマンドスワップファイル中に残っている更新開始コマンドの干渉を回避するために、次の更新中に、プロセッサ24はさらに、ファームウェア更新ファイルがフラッシュメモリに完全に書き込まれた後で、コマンド更新ファイルに書き込まれた更新開始コマンドを削除するように構成される。
SDインタフェースを有する通信デバイスは、実際の更新プロセスを更新モードで実施する必要があるが、SDインタフェースを有する通信デバイスは、電源投入後は一般稼働モードで稼働する。したがって、プロセッサ24はさらに、更新開始コマンドを得た後で、SDインタフェースを有する通信デバイスを再起動するように構成される。したがって、SDインタフェースを有する通信デバイスは、一般稼働モードから更新モードに切り替わり、更新モードでファームウェア更新ファイルをSDメモリ22から得て、ファームウェア更新ファイルをフラッシュメモリ23に書き込む。ファームウェア更新ファイルがフラッシュメモリ23に完全に書き込まれた後、プロセッサ24はさらに、SDインタフェースを有する通信デバイスを再起動するように構成され、したがって、SDインタフェースを有する通信デバイスは、更新モードから一般稼働モードに切り替わる。これにより、SDインタフェースを有する通信デバイスをモバイル端末が通常どおり使用できることが保証される。
本実施形態では、プロセッサ24は特に、ファームウェア更新ファイルのミラーリングデータをフラッシュメモリに書き込むように構成される。すなわち、ファームウェア更新ファイル中の新しいファームウェアプログラムを使用して、フラッシュメモリに元々記憶されていたファームウェアプログラムを置き換えるように構成される。新しいファームウェアプログラムがフラッシュメモリに完全に書き込まれたとき、SDインタフェースを有する通信デバイスのファームウェア更新は完了する。SDインタフェースを有する通信デバイスが再び実行されたとき、フラッシュメモリ中の新しいファームウェアプログラムが直接実行されてよい。
ファームウェア更新ファイルがSDメモリ22に完全に書き込まれた後、プロセッサ24はさらに、更新開始コマンドを得る前にファームウェア更新ファイルをチェックし、ファームウェア更新ファイルが有効なファイルであることをチェックした後で更新開始コマンドを得る。これにより、無効なファイルをフラッシュメモリに書き込むことによって引き起こされる、SDインタフェースを有する通信デバイスの稼働エラーが回避される。有効なファイルとは、ファームウェア更新ファイルが、使用できるファイルであってオペレータ以外のユーザによって変更されていないファイルであることを示す。
モバイル端末は、ファームウェア更新ファイルがSDメモリに完全に書き込まれた後で、更新開始コマンドをコマンドスワップファイルに書き込むことに留意されたい。すなわち、ファームウェア更新ファイルをSDメモリ22に完全に書き込めることを保証し、SDメモリに書き込まれたファームウェア更新ファイルの保全性を保証し、更新開始コマンドの実行時にSDメモリ中の不完全なファームウェア更新ファイルによって引き起こされる更新失敗を回避するためには、ファームウェア更新ファイルの書込みのほうが、更新開始コマンドの書込みよりも勝る。
図13に示したSDインタフェースを有する通信デバイスに統合されるソフトウェアの概略図については、図15を参照することができる。SDインタフェースを有する通信デバイスに統合されるソフトウェアは、更新サービスプログラム、ファイルシステム、SDインタフェースドライバ、およびフラッシュドライバを含む。SDインタフェースドライバは、SDインタフェースコントローラ25に統合され、更新サービスプログラム、ファイルシステム、およびフラッシュドライバは、プロセッサ24に統合される。
更新サービスプログラムは、ファイルシステムを介して、ファームウェア更新ファイルを読み取り、コマンドスワップファイルおよび結果スワップファイルにアクセスしてこれらを更新する。ファイルシステムは、SDインタフェースドライバを介してファイル情報をSDメモリ22から取得し、SDインタフェースドライバを介してSDメモリ22中のデータにアクセスする。更新サービスプログラムは、フラッシュドライバを介してファームウェア更新ファイルをフラッシュメモリ23に書き込み、ファームウェア更新を完了する。
SDインタフェースを有する通信デバイス中のソフトウェアと、モバイル端末中のソフトウェアとの間の情報対話のプロセスについては、図16を参照することができる。モバイル端末中のソフトウェアは、ファームウェア更新プログラムおよびSDインタフェースドライバを含み、ファームウェア更新プログラムはファームウェア更新ファイルを含む。ファームウェア更新ファイルは、SDインタフェースドライバを介して、SDインタフェースを有する通信デバイス中のSDメモリ22に書き込まれる。SDインタフェースドライバは、モバイル端末中のオペレーティングシステムによってサポートされる。
SDインタフェースを有する通信デバイスの更新プロセスにおける、SDインタフェースを有する通信デバイス中のソフトウェアとモバイル端末中のソフトウェアとの間の情報対話の具体的なプロセスは、次のとおりである。
モバイル端末中のファームウェア更新プログラムは、SCSIコマンドを使用してコマンドスワップファイルおよび結果スワップファイルをSDメモリ22中に作成し、ファームウェア更新ファイルをダウンロードし、モバイル端末中のSDインタフェースドライバと、SDインタフェースを有する通信デバイス中のSDインタフェースドライバとを介して、SDインタフェースを有する通信デバイス中のSDメモリ22にファームウェア更新ファイルを書き込む。
ファームウェア更新ファイルがSDメモリ22に完全に書き込まれた後、ファームウェア更新プロセスが開始する。ファームウェア更新プログラムは、SCSIコマンドを使用して、更新開始コマンドをコマンドスワップファイルに書き込む。SDインタフェースを有する通信デバイス中の更新サービスプログラムがコマンドスワップファイル中の更新開始コマンドを見つけた後、SDインタフェースを有する通信デバイスは、再起動され、更新モードに入る。
更新モードで、更新サービスプログラムは、SDメモリ22に記憶されたファームウェア更新ファイルの有効性をチェックし、ファームウェア更新ファイルが有効であることを検出した後、ファイルシステムおよびSDインタフェースドライバを介してファームウェア更新ファイルの読取りを開始し、フラッシュドライバを介してファームウェア更新ファイルをフラッシュメモリ23に書き込む。
ファームウェア更新の開始後、モバイル端末中のファームウェア更新プログラムは、SCSIコマンドを使用して、更新ステータス照会コマンドをコマンドスワップファイルに定期的に書き込む。SDインタフェースを有する通信デバイス中の更新サービスプログラムは、SCSIコマンドを使用して、更新進捗状況および更新結果を結果スワップファイルに書き込む。この場合、モバイル端末中のファームウェア更新プログラムは、更新進捗状況および更新結果を得ることができ、ファームウェア更新プログラムは、UI(ユーザインタフェース)表示を実施する。
本明細書中の実施形態は全て、漸進的な方式で記述してあり、各実施形態は他の実施形態との違いを焦点とし、実施形態の同一部分または類似部分に対しては相互参照を行うことができることに留意されたい。装置実施形態は方法実施形態と基本的に同様なので、装置実施形態については簡単に述べている。関連する部分については、方法実施形態の記述のその部分を参照すればよい。
最後に、本文書では、第1や第2などの関係語は、あるエンティティまたは動作を別のエンティティまたは動作と区別するためにのみ使用され、そのようなエンティティまたは動作間における何らかの実際の関係または順序を必ずしも必要としたり含意したりするものではないことにも留意されたい。さらに、用語「含む、備える(comprising、including)」またはそのいずれか他の変形は、非排他的な包含をカバーするものとし、したがって、要素のリストを含むプロセス、方法、物品、またはデバイスは、それらの要素のみを含むのではなく、明示的にリストされていない他の要素、または、プロセス、方法、物品、もしくはデバイスに付きものである他の要素も含む。「〜を含む」に先行する要素は、それ以上の制約なしに、その要素を含むプロセス、方法、物品、またはデバイス中に追加の要素が存在することを排除しない。
説明しやすくするために、前述の装置について述べるとき、装置を種々のユニットに機能的に分割して、これらのユニットについてそれぞれ述べている。当然、各ユニットの機能は、本出願が実施されるときには、同じまたは複数のソフトウェアおよび/またはハードウェアにおいて実施されてよい。
前述の実施形態に関する記述に基づき、当業者なら、ソフトウェアおよび必要な汎用ハードウェアプラットフォームによって本出願を実施できることを理解するであろう。このような理解に基づき、本出願の技術的解決法、または従来技術に対する貢献は、ソフトウェア製品の形で具体化することができる。ソフトウェア製品は、ROM/RAM、磁気ディスク、または光ディスクなどの記憶媒体に記憶されてよく、本出願の全ての実施形態における方法または実施形態のいくつかの部分における方法を実施するようコンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイスなどとすることができる)に命令するためのいくつかの命令を含む。
以上、本出願による、ファームウェアを更新するための方法、装置、および通信デバイスについて詳述している。本明細書では、本出願の原理および実施方式について、具体的な実施形態に関して述べている。実施形態に関する前述の記述は、本出願の方法および核となる概念をよりよく理解するために使用されるものに過ぎない。当業者なら、本出願の概念に従って、具体的な実施方式および適用範囲に対して変形および修正を加えることができる。したがって、本明細書の内容は、本出願に対する限定と解釈すべきではない。
11 第1の取得ユニット
12 読取ユニット
13 第1の書込ユニット
14 第2の書込ユニット
15 第3の書込ユニット
16 第2の取得ユニット
17 送信ユニット
18 削除ユニット
19 起動ユニット
21 ダウンロードユニット
22 第4の書込ユニット
23 第5の書込ユニット
24 第6の書込ユニット
25 受信ユニット
26 表示ユニット
21 SDインタフェース
22 SDメモリ
23 フラッシュメモリ
24 プロセッサ
25 SDインタフェースコントローラ

Claims (23)

  1. セキュアデータインタフェースを有する通信デバイスに適用される、ファームウェアを更新する方法であって、前記セキュアデータインタフェースを有する前記通信デバイスが前記セキュアデータインタフェースを介してモバイル端末とデータ通信を実施し、前記セキュアデータインタフェースを有する前記通信デバイスがセキュアデータメモリおよびフラッシュメモリを備え、前記セキュアデータメモリがコマンドスワップファイルを記憶し、前記セキュアデータメモリが、前記モバイル端末によって前記セキュアデータインタフェースを介してアクセスされるメモリであり、前記フラッシュメモリが、前記セキュアデータインタフェースを有する前記通信デバイス中の前記ファームウェアを記憶するメモリであり、前記方法が、
    更新開始コマンドを前記コマンドスワップファイルから得る段階であって、前記更新開始コマンドが前記モバイル端末によって前記コマンドスワップファイルに書き込まれるものである段階と、
    前記更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルを前記セキュアデータメモリから読み取る段階であって、前記ファームウェア更新ファイルが前記モバイル端末によってダウンロードされ前記モバイル端末によって前記セキュアデータメモリに書き込まれるものであり、前記更新データが、前記セキュアデータインタフェースを有する前記通信デバイスの前記ファームウェアを更新するためのプログラムコードを含む段階と、
    前記ファームウェア更新ファイルを前記フラッシュメモリに書き込む段階とを含む、ファームウェアを更新する方法。
  2. 前記セキュアデータメモリがさらに結果スワップファイルを記憶し、前記方法がさらに、前記ファームウェア更新ファイルを前記フラッシュメモリに書き込む過程で更新進捗状況を前記結果スワップファイルに書き込む段階と、
    前記ファームウェア更新ファイルが前記フラッシュメモリに書き込まれた後で更新結果を前記結果スワップファイルに書き込む段階とを含む、請求項1に記載のファームウェアを更新する方法。
  3. 前記更新進捗状況および更新結果が、スモール・コンピュータ・システム・インタフェース・コマンドを使用して前記結果スワップファイルに書き込まれる、請求項2に記載のファームウェアを更新する方法。
  4. 更新ステータス照会コマンドを前記コマンドスワップファイルから得る段階と、
    前記更新ステータス照会コマンドが得られた後で前記結果スワップファイルを前記モバイル端末に送る段階であって、前記更新進捗状況および更新結果が前記結果スワップファイルに書き込まれている段階とをさらに含む、請求項2に記載のファームウェアを更新する方法。
  5. 前記ファームウェア更新ファイルが前記フラッシュメモリに完全に書き込まれた後で前記更新開始コマンドを前記コマンドスワップファイルから削除する段階をさらに含む、請求項1に記載のファームウェアを更新する方法。
  6. 前記更新開始コマンドが得られた後で、前記セキュアデータインタフェースを有する前記通信デバイスを再起動し、前記セキュアデータインタフェースを有する前記通信デバイスの更新モードに入り、前記更新モードで、前記更新データを記憶した前記ファームウェア更新ファイルを前記セキュアデータメモリから読み取る段階と、
    前記ファームウェア更新ファイルが前記フラッシュメモリに完全に書き込まれた後で、前記セキュアデータインタフェースを有する前記通信デバイスを再起動し、前記セキュアデータインタフェースを有する前記通信デバイスの一般稼働モードに入る段階とをさらに含む、請求項1から5のいずれか一項に記載のファームウェアを更新する方法。
  7. 前記更新データを記憶した前記ファームウェア更新ファイルを前記セキュアデータメモリから読み取る前記段階の前に、前記方法がさらに、前記ファームウェア更新ファイルをチェックする段階と、
    前記ファームウェア更新ファイルが有効なファイルであることがチェックされた後で、前記更新データを記憶した前記ファームウェア更新ファイルを前記セキュアデータメモリから読み取る段階とをさらに含む、請求項1から5のいずれか一項に記載のファームウェアを更新する方法。
  8. SDインタフェースを有する通信デバイスとSDインタフェースを介してデータ通信を実施するモバイル端末に適用される、ファームウェアを更新する方法であって、前記SDインタフェースを有する前記通信デバイスがセキュアデータメモリおよびフラッシュメモリを備え、前記セキュアデータメモリがコマンドスワップファイルを記憶し、前記セキュアデータメモリが、前記モバイル端末によって前記SDインタフェースを介してアクセスされるメモリであり、前記フラッシュメモリが、前記SDインタフェースを有する前記通信デバイス中の前記ファームウェアを記憶するメモリであり、前記方法が、
    更新データを記憶したファームウェア更新ファイルをダウンロードする段階と、
    前記ファームウェア更新ファイルを前記セキュアデータメモリに書き込む段階と、
    前記ファームウェア更新ファイルが前記セキュアデータメモリに完全に書き込まれた後で、前記モバイル端末中の更新開始コマンドを前記コマンドスワップファイルに書き込み、それにより、前記SDインタフェースを有する前記通信デバイスが前記更新開始コマンドを得てファームウェア更新を実施する段階とを含む、ファームウェアを更新する方法。
  9. 前記モバイル端末中の更新ステータス照会コマンドを前記コマンドスワップファイルに書き込む段階をさらに含む、請求項8に記載のファームウェアを更新する方法。
  10. 前記セキュアデータメモリがさらに結果スワップファイルを記憶し、前記方法がさらに、前記セキュアデータインタフェースを有する前記通信デバイスによって送られた前記結果スワップファイルを受け取る段階であって、前記結果スワップファイルが、前記セキュアデータインタフェースを有する前記通信デバイスが前記更新ステータス照会コマンドを得た後で送られ、更新進捗状況および更新結果が前記結果スワップファイルに書き込まれている段階と、
    前記更新進捗状況および更新結果を前記モバイル端末上で表示する段階とを含む、請求項9に記載のファームウェアを更新する方法。
  11. 前記更新開始コマンドおよび更新ステータス照会コマンドが、スモール・コンピュータ・システム・インタフェース・コマンドを使用して前記コマンドスワップファイルに書き込まれる、請求項9に記載のファームウェアを更新する方法。
  12. セキュアデータインタフェースを有する通信デバイスに適用される、ファームウェアを更新するための装置であって、前記セキュアデータインタフェースを有する前記通信デバイスが前記セキュアデータインタフェースを介してモバイル端末とデータ通信を実施し、前記セキュアデータインタフェースを有する前記通信デバイスがセキュアデータメモリおよびフラッシュメモリを備え、前記セキュアデータメモリがコマンドスワップファイルを記憶し、前記セキュアデータメモリが、前記モバイル端末によって前記セキュアデータインタフェースを介してアクセスされるメモリであり、前記フラッシュメモリが、前記セキュアデータインタフェースを有する前記通信デバイス中の前記ファームウェアを記憶するメモリであり、前記装置が、
    更新開始コマンドを前記コマンドスワップファイルから得るように構成された第1の取得ユニットであって、前記更新開始コマンドが前記モバイル端末によって前記コマンドスワップファイルに書き込まれる第1の取得ユニットと、
    前記更新開始コマンドが得られた後で、更新データを記憶したファームウェア更新ファイルを前記セキュアデータメモリから読み取るように構成された読取ユニットであって、前記ファームウェア更新ファイルが前記モバイル端末によってダウンロードされ前記モバイル端末によって前記セキュアデータメモリに書き込まれ、前記更新データが、前記セキュアデータインタフェースを有する前記通信デバイスの前記ファームウェアを更新するためのプログラムコードを含む読取ユニットと、
    前記ファームウェア更新ファイルを前記フラッシュメモリに書き込むように構成された第1の書込ユニットとを備える、ファームウェアを更新するための装置。
  13. 前記セキュアデータメモリがさらに結果スワップファイルを記憶し、前記装置がさらに、前記ファームウェア更新ファイルを前記フラッシュメモリに書き込む過程で更新進捗状況を前記結果スワップファイルに書き込むように構成された第2の書込ユニットと、
    前記ファームウェア更新ファイルが前記フラッシュメモリに書き込まれた後で更新結果を前記結果スワップファイルに書き込むように構成された第3の書込ユニットとを備える、請求項12に記載のファームウェアを更新するための装置。
  14. 前記第2の書込ユニットがスモール・コンピュータ・システム・インタフェース・コマンドを使用して前記更新進捗状況を前記結果スワップファイルに書き込み、
    前記第3の書込ユニットがスモール・コンピュータ・システム・インタフェース・コマンドを使用して前記更新結果を前記結果スワップファイルに書き込む、請求項13に記載のファームウェアを更新するための装置。
  15. 更新ステータス照会コマンドを前記コマンドスワップファイルから得るように構成された第2の取得ユニットと、
    前記更新ステータス照会コマンドが得られた後で前記結果スワップファイルを前記モバイル端末に送るように構成された送信ユニットであって、前記更新進捗状況および更新結果が前記結果スワップファイルに書き込まれている送信ユニットとをさらに備える、請求項13に記載のファームウェアを更新するための装置。
  16. 前記ファームウェア更新ファイルが前記フラッシュメモリに完全に書き込まれた後で前記更新開始コマンドを前記コマンド更新ファイルから削除するように構成された削除ユニットをさらに備える、請求項12に記載のファームウェアを更新するための装置。
  17. 前記更新開始コマンドが得られた後で、前記セキュアデータインタフェースを有する前記通信デバイスを再起動して、前記セキュアデータインタフェースを有する前記通信デバイスの更新モードに入り、前記ファームウェア更新ファイルが前記フラッシュメモリに完全に書き込まれた後で、前記セキュアデータインタフェースを有する前記通信デバイスを再起動して、前記セキュアデータインタフェースを有する前記通信デバイスの一般稼働モードに入るように構成された起動ユニットをさらに備え、
    前記読取ユニットが特に、前記更新モードで、前記更新データを記憶した前記ファームウェア更新ファイルを前記セキュアデータメモリから読み取るように構成された、請求項12から16のいずれか一項に記載のファームウェアを更新するための装置。
  18. 前記ファームウェア更新ファイルをチェックするように構成されたチェックユニットをさらに備え、
    前記読取ユニットが特に、前記ファームウェア更新ファイルが有効なファイルであることがチェックされた後で、前記更新データを記憶した前記ファームウェア更新ファイルを前記セキュアデータメモリから読み取るように構成された、請求項12から16のいずれか一項に記載のファームウェアを更新するための装置。
  19. セキュアデータインタフェースを有する通信デバイスであって、セキュアデータメモリと、フラッシュメモリと、請求項12から18のいずれか一項に記載のファームウェアを更新するための前記装置とを備え、ファームウェアを更新するための前記装置が、前記セキュアデータメモリおよび前記フラッシュメモリとそれぞれデータ通信を実施し、前記セキュアデータメモリがコマンドスワップファイルを記憶し、前記セキュアデータメモリが、モバイル端末によって前記セキュアデータインタフェースを介してアクセスされるメモリであり、前記フラッシュメモリが、前記セキュアデータインタフェースを有する前記通信デバイス中の前記ファームウェアを記憶するメモリである、セキュアデータインタフェースを有する通信デバイス。
  20. セキュアデータインタフェースを有する通信デバイスとセキュアディジタルインタフェースを介してデータ通信を実施するモバイル端末に適用される、ファームウェアを更新するための装置であって、前記セキュアデータインタフェースを有する前記通信デバイスがセキュアデータメモリおよびフラッシュメモリを備え、前記セキュアデータメモリがコマンドスワップファイルを記憶し、前記セキュアデータメモリが、前記モバイル端末によって前記セキュアデータインタフェースを介してアクセスされるメモリであり、前記フラッシュメモリが、前記セキュアデータインタフェースを有する前記通信デバイス中の前記ファームウェアを記憶するメモリであり、前記装置が、
    更新データを記憶したファームウェア更新ファイルをダウンロードするように構成されたダウンロードユニットと、
    前記ファームウェア更新ファイルを前記セキュアデータメモリに書き込むように構成された第4の書込ユニットと、
    前記ファームウェア更新ファイルが前記セキュアデータメモリに完全に書き込まれた後で前記モバイル端末中の更新開始コマンドを前記コマンドスワップファイルに書き込むように構成された第5の書込ユニットであって、それにより、前記セキュアデータインタフェースを有する前記通信デバイスが前記更新開始コマンドを得てファームウェア更新を実施する第5の書込ユニットとを備える、ファームウェアを更新するための装置。
  21. 前記モバイル端末中の更新ステータス照会コマンドを前記コマンドスワップファイルに書き込むように構成された第6の書込ユニットをさらに備える、請求項20に記載のファームウェアを更新するための装置。
  22. 前記セキュアデータメモリがさらに結果スワップファイルを記憶し、前記装置がさらに、前記セキュアデータインタフェースを有する前記通信デバイスによって送られた前記結果スワップファイルを受け取るように構成された受信ユニットであって、前記結果スワップファイルが、前記セキュアデータインタフェースを有する前記通信デバイスが前記更新ステータス照会コマンドを得た後で送られ、更新進捗状況および更新結果が前記結果スワップファイルに書き込まれている受信ユニットと、
    前記更新進捗状況および更新結果を前記モバイル端末上で表示するように構成された表示ユニットとを備える、請求項21に記載のファームウェアを更新するための装置。
  23. 前記第5の書込ユニットがスモール・コンピュータ・システム・インタフェース・コマンドを使用して前記更新開始コマンドを前記コマンドスワップファイルに書き込み、
    前記第6の書込ユニットがスモール・コンピュータ・システム・インタフェース・コマンドを使用して前記更新ステータス照会コマンドを前記コマンドスワップファイルに書き込む、請求項21に記載のファームウェアを更新するための装置。
JP2014115531A 2013-06-08 2014-06-04 ファームウェアを更新するための方法、装置、および通信デバイス Expired - Fee Related JP5838527B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310228240.2A CN103309709B (zh) 2013-06-08 2013-06-08 一种固件升级方法、装置及通信设备
CN201310228240.2 2013-06-08

Publications (2)

Publication Number Publication Date
JP2014238838A true JP2014238838A (ja) 2014-12-18
JP5838527B2 JP5838527B2 (ja) 2016-01-06

Family

ID=49134969

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014115531A Expired - Fee Related JP5838527B2 (ja) 2013-06-08 2014-06-04 ファームウェアを更新するための方法、装置、および通信デバイス

Country Status (5)

Country Link
US (1) US9804832B2 (ja)
EP (1) EP3007062A4 (ja)
JP (1) JP5838527B2 (ja)
CN (1) CN103309709B (ja)
WO (1) WO2014194865A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988828A (zh) * 2015-01-30 2016-10-05 深圳市硅格半导体有限公司 固件更新系统及方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103309709B (zh) 2013-06-08 2018-10-09 华为终端有限公司 一种固件升级方法、装置及通信设备
JP6305069B2 (ja) * 2014-01-10 2018-04-04 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム
CN105700903A (zh) * 2014-11-28 2016-06-22 中兴通讯股份有限公司 一种用户终端的升级方法和用户终端
CN105446772B (zh) * 2015-11-16 2019-01-04 青岛海信移动通信技术股份有限公司 一种系统升级的方法和装置
CN105488153A (zh) * 2015-11-27 2016-04-13 北京北信源软件股份有限公司 基于二进制流追加镜像的方法和装置
US20170286090A1 (en) * 2016-03-31 2017-10-05 Microsoft Technology Licensing, Llc High performance mobile device flashing
CN106130751B (zh) * 2016-05-27 2019-05-17 努比亚技术有限公司 一种升级状态数据管理装置、系统和方法
CN106168906A (zh) * 2016-06-23 2016-11-30 广州信位通讯科技有限公司 一种网络摄像机的固件升级方法
CN107783769A (zh) * 2016-08-24 2018-03-09 青岛歌尔声学科技有限公司 一种通过usb升级电子设备的方法、装置及电子设备
CN106647517A (zh) * 2016-12-29 2017-05-10 金卡高科技股份有限公司 一种物联网计量仪表远程固件升级方法及计量仪表系统
CN107861746B (zh) * 2017-12-06 2020-11-27 北京经纬恒润科技有限公司 一种车辆电子控制单元的刷新方法及系统
KR20190074857A (ko) * 2017-12-20 2019-06-28 삼성전자주식회사 펌웨어를 업데이트하는 인터페이스 장치, 모바일 장치 및 펌웨어 업데이트 방법
CN111309353B (zh) * 2020-01-20 2023-05-23 超越科技股份有限公司 一种基于服务器控制板更新运算板fpga固件的方法及设备
US11409681B2 (en) * 2020-09-04 2022-08-09 Paypal, Inc. Computer system communication via sideband processor
CN115729601A (zh) * 2022-11-25 2023-03-03 中机试验装备股份有限公司 一种固件更新方法、装置、设备及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040199911A1 (en) * 2003-04-04 2004-10-07 Incomm Technologies Co., Ltd. Apparatus and method for upgrading execution code of the portable memory device
JP2005508547A (ja) * 2001-11-06 2005-03-31 サンディスク コーポレイション メモリカード上のファームウェアを更新するインシステムプログラムのインプリメンテーション

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299463B2 (en) * 2001-09-28 2007-11-20 Intel Corporation Method for atomically updating a plurality of files
TWI221255B (en) * 2003-05-09 2004-09-21 Via Tech Inc Device information management system of application device and method thereof
TWI345175B (en) * 2005-06-08 2011-07-11 Winbond Electronics Corp Method for updating firmware of memory card
JP2007047993A (ja) * 2005-08-09 2007-02-22 Rohm Co Ltd 制御回路、それを用いた電子機器およびファームウェアの更新方法
CN100424644C (zh) * 2005-12-30 2008-10-08 北京华旗资讯数码科技有限公司 一种固件程序在线升级的方法及硬件设备
US8707290B2 (en) * 2006-02-22 2014-04-22 Dell Products L.P. Firmware update in an information handling system employing redundant management modules
EP2156348B1 (en) * 2007-05-30 2018-08-01 Ascensia Diabetes Care Holdings AG System and method for managing health data
US8539471B2 (en) * 2007-12-13 2013-09-17 Telefonaktiebolaget L M Ericsson (Publ) Updating firmware of an electronic device
CN101344854B (zh) 2008-08-22 2011-01-19 四川长虹电器股份有限公司 通过SD卡对嵌入式Linux设备进行升级的方法
CN101799881A (zh) 2008-10-24 2010-08-11 上海吉芯电子有限公司 一种sd卡接口的td-scdma通讯卡
CN101447035B (zh) * 2008-12-29 2011-06-08 普天信息技术研究院有限公司 一种智能存储卡及提高智能存储卡传输速率的方法
TWI386847B (zh) * 2009-02-04 2013-02-21 Novatek Microelectronics Corp 可安全復原的韌體更新方法及可安全復原之韌體更新的嵌入式電子裝置
CN201781586U (zh) 2010-01-27 2011-03-30 福建新大陆通信科技股份有限公司 一种基于sd卡技术实现自动升级的机顶盒
US8745304B2 (en) * 2010-02-01 2014-06-03 Standard Microsystems Corporation USB to SD bridge
CN102004657B (zh) * 2010-12-15 2016-02-17 北京壹人壹本信息科技有限公司 一种电子设备及其升级方法
US9396329B2 (en) * 2011-10-17 2016-07-19 Intel Corporation Methods and apparatus for a safe and secure software update solution against attacks from malicious or unauthorized programs to update protected secondary storage
US8972966B2 (en) * 2012-01-05 2015-03-03 Lenovo (Singapore) Pte. Ltd. Updating firmware in a hybrid computing environment
JP5821640B2 (ja) * 2012-01-06 2015-11-24 株式会社リコー 情報処理装置
US8631239B2 (en) * 2012-01-12 2014-01-14 Facebook, Inc. Multiple system images for over-the-air updates
CN103309709B (zh) 2013-06-08 2018-10-09 华为终端有限公司 一种固件升级方法、装置及通信设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005508547A (ja) * 2001-11-06 2005-03-31 サンディスク コーポレイション メモリカード上のファームウェアを更新するインシステムプログラムのインプリメンテーション
US20040199911A1 (en) * 2003-04-04 2004-10-07 Incomm Technologies Co., Ltd. Apparatus and method for upgrading execution code of the portable memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988828A (zh) * 2015-01-30 2016-10-05 深圳市硅格半导体有限公司 固件更新系统及方法

Also Published As

Publication number Publication date
JP5838527B2 (ja) 2016-01-06
WO2014194865A1 (zh) 2014-12-11
CN103309709A (zh) 2013-09-18
EP3007062A4 (en) 2016-05-11
CN103309709B (zh) 2018-10-09
US9804832B2 (en) 2017-10-31
US20160132315A1 (en) 2016-05-12
EP3007062A1 (en) 2016-04-13

Similar Documents

Publication Publication Date Title
JP5838527B2 (ja) ファームウェアを更新するための方法、装置、および通信デバイス
CN104885055B (zh) 一种应用数据同步的方法及装置
US9525587B2 (en) Updating web resources
US20150220326A1 (en) Mobile Terminal and Software Upgrade Method Thereof
CN107992308B (zh) 一种安卓终端应用程序的插件化管理方法
CN110597542B (zh) 软件自动ota升级方法及装置、电子设备
EP3399408B1 (en) Information processing apparatus and computer readable storage medium
JP7346606B2 (ja) 画面共有処理方法、装置、機器及び記憶媒体
KR20170001488A (ko) 외장 메모리를 구비하는 전자장치 및 그 동작 방법
CN108650287B (zh) 物联网中的终端设备的升级方法、设备及计算机可读介质
WO2017185954A1 (zh) 一种实现usb设备管理的方法、主机和系统
CN108509215B (zh) 一种系统软件的更换方法、装置、终端设备及存储介质
WO2018032757A1 (zh) 组件升级的方法及装置
CN110825419B (zh) 一种固件刷新方法、装置及电子设备和存储介质
CN107291507B (zh) 一种虚拟机虚拟硬盘的升级方法及电子设备
CN115202686A (zh) 虚拟化系统的升级方法、装置、电子设备及存储介质
CN114780019A (zh) 电子设备的管理方法、装置、电子设备及存储介质
CN113900693A (zh) 一种固件升级方法、装置、系统、电子设备及存储介质
CN110134423B (zh) 固件的更新方法、装置及计算机可读存储介质
CN110995462B (zh) 一种云主机功能扩展方法、系统、设备及计算机存储介质
US20140137092A1 (en) Information processing apparatus, information processing system, non-transitory computer-readable storage medium having stored therein information processing program, and information processing method
CN114968386A (zh) 一种电子设备的设备信息管理方法、装置及设备
WO2017096889A1 (zh) 系统升降级的方法和装置
CN114296764A (zh) 系统升级方法、装置、存储介质和电子设备
CN109413714B (zh) 用户代理信息的处理方法、装置、存储介质及终端

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151022

R150 Certificate of patent or registration of utility model

Ref document number: 5838527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees