JP6082389B2 - ホストから見たデバイスファームウェア更新の影響の管理 - Google Patents
ホストから見たデバイスファームウェア更新の影響の管理 Download PDFInfo
- Publication number
- JP6082389B2 JP6082389B2 JP2014514587A JP2014514587A JP6082389B2 JP 6082389 B2 JP6082389 B2 JP 6082389B2 JP 2014514587 A JP2014514587 A JP 2014514587A JP 2014514587 A JP2014514587 A JP 2014514587A JP 6082389 B2 JP6082389 B2 JP 6082389B2
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- command
- revision identifier
- computing host
- host
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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 Security & Cryptography (AREA)
- Stored Programmes (AREA)
Description
本出願の優先権利益の主張を、(それがある場合には、適宜)添付の出願データシート、請求、または送達状において行う。本出願の種類によって許容される範囲内で、本出願はこの参照によりあらゆる目的で以下の出願を組み込むものであり、以下の出願はすべて、発明がなされた時点において本出願と所有者を同じくするものである。
この出願の発明に関連する先行技術文献情報としては、以下のものがある(国際出願日以降国際段階で引用された文献及び他国に国内移行した際に引用された文献を含む)。
(先行技術文献)
(特許文献)
(特許文献1) 米国特許出願公開第2008/0040713号明細書
(特許文献2) 米国特許第7865907号明細書
(特許文献3) 米国特許第7065769号明細書
(特許文献4) 米国特許出願公開第2010/0095079号明細書
(特許文献5) 米国特許出願公開第2005/0028172号明細書
この概説は、詳細な説明のより迅速な理解を助けるために含まれるにすぎず、本発明は、(それがある場合には、明示的な例を含む)この概説で提示される概念だけに限定されるものではなく、どんな概説の段落も、必然的に、主題全体の縮約された見方であり、網羅的な、または限定的な記述であることを意味するものではない。例えば、以下の概説は、スペースおよび編成によりある一定の実施形態だけに限定される概要情報を提供するものである。特許請求の範囲が究極的にそこに導かれることになる実施形態を含む多くの他の実施形態があり、それらを本明細書の残りの部分にわたって論じる。
ここで定義される様々な縮めた表現の略語(例えば、頭字語)の少なくとも一部が本明細書において使用される特定の要素を指す。
詳細な記載に対する導入を締めくくる際に続くものは、「ECs」(例示的な組み合わせ)として明示的に列挙される少なくとも一部の例示的な実施形態を含む例示的な実施形態を集めたものであり、本明細書において記載される概念に従った様々な実施形態の種類の追加的な記載を提供する。これらの例は、互いに排他的、網羅的、又は制限的であることを意味せず、本発明はこれらの例示的な実施形態には限定されず、刊行された特許請求の範囲及びその均等物の範囲内の全ての可能な改変及び変化形を含む
EC1)方法であって、
(a)現在の選択識別情報と関連付けられた現在のファームウェアに従ってデバイスを動作させる工程であって、デバイスと通信するコンピューティングホストに当該現在の選択識別情報を返す工程を有するものである、前記(a)の動作させる工程と、
(b)前記(a)の工程の後、前記デバイスにおいて、新しい選択識別情報と関連付けられた新しいファームウェアを受け取る工程であって、当該新しい選択識別情報は現在の選択識別情報のそれぞれの要素に対応する1若しくはそれ以上の要素を有し、新しい選択識別情報の要素のうちの少なくとも1つは、現在の選択識別情報の対応する要素とは異なる値を有するものである、前記受け取る工程と、
(c)前記(b)の工程の後、前記新しいファームウェアに従ってデバイスを動作させる工程であって、前記現在の選択識別情報をコンピューティングホストに返す工程を有するものである、前記(c)の動作させる工程と、
(d)(b)の工程の後、前記新しい選択識別情報の可視性の遅延を終了させるイベントに応答して、前記新しいファームウェアに従って前記デバイスを動作させる工程であって、前記新しい選択識別情報をコンピューティングホストに返す工程を有するものである(d)の動作させる工程と
を有する方法。
前記新しいファームウェアは第1の新しいファームウェアであり、前記新しい選択識別情報は第1の新しい選択識別情報であり、さらに、
(e)前記(c)の工程の後、第2の新しい選択識別情報と関連付けられた第2の新しいファームウェアを受け取る工程と、
(f)前記(e)の工程の後、第2の新しいファームウェアに従ってデバイスを動作させる工程であって、前記現在の選択識別情報をコンピューティングホストに返す工程を有するものである、前記(f)の動作させる工程と
を有するものである方法。
現在の選択識別情報は現在の他の識別情報と組み合わさった現在の選択識別情報であり、前記(a)の返す工程は、現在の他の識別情報と組み合わさった現在の選択識別情報を返し、
新しい識別情報は新しい他の識別情報と組み合わさった新しい選択識別情報であり、新しい識別情報は現在の識別情報のそれぞれの要素に対応する1若しくはそれ以上の要素を有し、新しい他の識別情報は現在の他の識別情報のそれぞれの要素に対応する1若しくはそれ以上の要素を有し、前記(c)の返す工程は、現在の他の識別情報と組み合わさった新しい選択識別情報を返すことによって現在の選択識別情報を返す方法。
現在のファームウェアの少なくとも一部分を実行し、および/またはダウンロードして現在のファームウェアと現在の選択識別情報との間の関連付けを形成する工程と、
新しいファームウェアの少なくとも一部分を実行し、および/またはダウンロードして新しいファームウェアと新しい選択識別情報との間の関連付けを形成する工程と
を有するものである方法。
デバイスが電源サイクルされること、
デバイスの全部または任意の部分がある電力モードから別の電力モードに遷移すること、
デバイスがベンダ特有のコマンドを受け取ること、
デバイスがファームウェア更新の一部として特定のパラメータおよび/またはコードを受け取ること、ならびに
デバイスをホストに接続するリンクがリセットされること
のうちの任意の1若しくはそれ以上を有する方法。
現在の選択識別情報は現在のファームウェア改訂識別子であり、
新しい選択識別情報は新しいファームウェア改訂識別子であり、
前記3つの返す工程は、各々、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)IDENTIFYコマンドのインスタンスに応答したものである方法。
現在の選択識別情報は現在のファームウェア改訂識別子であり、
新しい選択識別情報は新しいファームウェア改訂識別子であり、
前記3つの返す工程は、各々、重要製品データ(VPD)読み取りコマンドのインスタンスに応答したものである方法。
現在の選択識別情報はプロトコル互換性レベルであり、
新しい選択識別情報はプロトコル互換性レベルである方法。
コンピューティングホストを、デバイスから現在の選択識別情報を受け取り、および/または受け取った現在の選択識別情報をデバイスに提供するように動作させる工程を有するものである方法。
現在の選択識別情報の少なくとも一部分を1若しくはそれ以上の不揮発性メモリに記憶する工程を有するものである方法。
新しい選択識別情報の可視性の遅延を終了させるイベントに応答して、現在の選択識別情報の変更からの保護を解除する工程を有するものである方法。
デバイスにおいて、コンピューティングホストから第1のファームウェアを受け取る工程と、
前記デバイスにおいて、前記コンピューティングホストから第2のファームウェアを受け取る工程であって、当該第2のファームウェアを受け取る工程は前記第1のファームウェアを受け取る工程の後で行われるものである、前記第2のファームウェアを受け取る工程と、
前記第2のファームウェアを実行している間に、前記コンピューティングホストからの特定のタイプのコマンドに応答して、前記コンピューティングホストに、前記第1のファームウェアおよび前記第2のファームウェアの任意の組み合わせに対するアクセスを提供する工程と
を有する方法。
デバイスにおいて、コンピューティングホストから第1のファームウェアを受け取る工程であって、当該第1のファームウェアは第1のファームウェア識別情報と関連付けられているものである、前記第1のファームウェアを受け取る工程と、
前記デバイスにおいて、前記コンピューティングホストから第2のファームウェアを受け取る工程であって、当該第2のファームウェアを受け取る工程は前記第1のファームウェアを受け取る工程の後で行われるものであり、前記第2のファームウェアは第2のファームウェア識別情報と関連付けられているものである、前記第2のファームウェアを受け取る工程と、
前記デバイスが前記コンピューティングホストに前記第1のファームウェア識別情報を返す工程であって、当該返す工程は、前記コンピューティングホストからの特定のタイプのコマンドに応答して実行されるものであり、前記デバイスが前記第2のファームウェアを実行している間であって、且つ特定のイベントが発生する前に実行されるものである、前記第1のファームウェア識別情報を返す工程と
を有する方法。
デバイスが電源サイクルされること、
デバイスの全部または任意の部分がある電力モードから別の電力モードに遷移すること、
デバイスがベンダ特有のコマンドを受け取ること、
デバイスがファームウェア更新の一部として特定のパラメータおよび/またはコードを受け取ること、ならびに
デバイスをホストに接続するリンクがリセットされること
のうちの任意の1若しくはそれ以上を有する方法。
前記第1のファームウェア識別情報は第1のファームウェア改訂識別子を有し、
前記第2のファームウェア識別情報は第2のファームウェア改訂識別子を有する方法。
前記第1のファームウェア識別情報は第1のプロトコル互換性レベル識別子を有し、
前記第2のファームウェア識別情報は第2のプロトコル互換性レベル識別子を有する方法。
前記第1のファームウェア識別情報は、ソフトウェア設定保存(SSP)の対象となる1若しくはそれ以上のパラメータに対応する第1の値セットを有し、
前記第2のファームウェア識別情報は該パラメータに対応する第2の値セットを有する方法。
デバイスにおいて、コンピューティングホストから第1のファームウェアを受け取る工程であって、当該第1のファームウェアは第1のファームウェア識別情報と関連付けられているものである、前記第1のファームウェアを受け取る工程と、
前記デバイスにおいて、前記コンピューティングホストから第2のファームウェアを受け取る工程であって、当該第2のファームウェアを受け取る工程は、前記第1のファームウェアを受け取る工程の後で行われるものであり、前記第2のファームウェアは第2のファームウェア識別情報と関連付けられているものである、前記第2のファームウェアを受け取る工程と、
前記デバイスが前記コンピューティングホストに前記第1のファームウェア識別情報を返す工程であって、当該返す工程は、前記コンピューティングホストからの第1のタイプのコマンドに応答して実行されるものであり、前記デバイスが前記第2のファームウェアを実行している間に実行されるものである、前記第1のファームウェア識別情報を返す工程と、
前記デバイスが前記コンピューティングホストに前記第2のファームウェア識別情報を返す工程であって、当該返す工程は、前記コンピューティングホストからの第2のタイプのコマンドに応答して実行されるものであり、前記デバイスが第2のファームウェアを実行している間に実行されるものである、前記第2のファームウェア識別情報を返す工程と
を有する方法。
第1のタイプのコマンドは識別読み取りタイプのコマンドであり、
第2のタイプのコマンドはベンダ特有のタイプのコマンドである方法。
前記第1のファームウェア識別情報は第1のファームウェア改訂識別子を有し、
前記第2のファームウェア識別情報は第2のファームウェア改訂識別子を有する方法。
前記第1のファームウェア識別情報は第1のプロトコル互換性レベル識別子を有し、
前記第2のファームウェア識別情報は第2のプロトコル互換性レベル識別子を有する方法。
前記第1のファームウェア識別情報は、ソフトウェア設定保存(SSP)の対象となる1若しくはそれ以上のパラメータに対応する第1の値セットを有し、
前記第2のファームウェア識別情報は当該パラメータに対応する第2の値セットを有する方法。
(a)現在のファームウェア改訂識別子と関連付けられた現在のファームウェアに従って記憶デバイスコントローラを動作させる工程であって、当該記憶デバイスコントローラを有する記憶デバイスと通信するコンピューティングホストに当該現在のファームウェア改訂識別子を返す工程を有するものである、前記(a)の動作させる工程と、
(b)前記(a)の工程の後、少なくとも部分的に記憶デバイスコントローラを介して、現在のファームウェア改訂識別子とは異なる新しいファームウェア改訂識別子と関連付けられた新しいファームウェアを受け取る工程と、
(c)前記(b)の工程の後、前記新しいファームウェアに従って前記記憶デバイスコントローラを動作させる工程であって、前記現在のファームウェア改訂識別子をコンピューティングホストに返す工程を有するものである、前記(c)の動作させる工程と、
(d)前記(b)の工程の後、電源サイクルに応答して、前記新しいファームウェアに従って前記記憶デバイスコントローラを動作させる工程であって、前記新しいファームウェア改訂識別子をコンピューティングホストに返す工程を有するものである、前記(d)の動作させる工程と
を有し、
(f)前記記憶デバイスは、前記新しいファームウェアの少なくとも一部を記憶することが可能な不揮発性メモリ(NVM)を有し、
(g)前記3つの返す工程は、各々、前記コンピューティングホストからの複数のタイプのコマンドのうちの特定の1つのインスタンスに応答したものであり、当該特定のタイプのコマンドにより、前記(c)の返す工程で前記新しいファームウェア改訂識別子が返された場合、前記コンピューティングホスト上で実行されているオペレーティングシステム(OS)に回復不能の誤りが発生するものである方法。
EC95)EC89記載の方法において、特定のタイプのコマンドは、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)IDENTIFYタイプのコマンドを有する方法。
コンピューティングホストに接続可能な記憶デバイスにおいて、記憶デバイスの不揮発性メモリ(NVM)を、第1のファームウェア、第1のファームウェア改訂識別子、第2のファームウェア、および第2のファームウェア改訂識別子を記憶するように管理する工程と、
前記記憶デバイスにおいて、前記コンピューティングホストから前記第1のファームウェアを受け取る工程であって、前記第1のファームウェアは前記第1のファームウェア改訂識別子と関連付けられているものである、前記第1のファームウェアを受け取る工程と、
前記記憶デバイスにおいて、前記コンピューティングホストから前記第2のファームウェアを受け取る工程であって、当該受け取る工程は、前記第1のファームウェアを受け取る工程の後で実行されるものであり、前記第2のファームウェアは前記第2のファームウェア改訂識別子と関連付けられているものである、前記第2のファームウェアを受け取る工程と、
前記記憶デバイスが前記コンピューティングホストに前記第1のファームウェア改訂識別子を返す工程であって、当該返す工程は、前記コンピューティングホストからの特定のタイプのコマンドに応答するものであり、前記記憶デバイスが前記第2のファームウェアを実行している間であって、且つ特定のイベントが発生する前に実行されるものである、前記第1のファームウェア改訂識別子を返す工程と
を有し、
前記第1のファームウェア改訂識別子を返す工程により、前記コンピューティングホスト上で実行されているオペレーティングシステム(OS)は、前記記憶デバイスが前記第1のファームウェアを実行している間中、および特定のイベントが発生するまで前記第2のファームウェアを実行している間に、返されたファームウェア改訂識別子の値の変更に応答して誤りを検出することなく実行を継続することが可能になるものである方法。
前記第2のファームウェアを実行している間であって、且つ特定のイベントが発生した後で、前記コンピューティングホストからの特定のタイプのコマンドに応答して、前記コンピューティングホストに前記第2のファームウェア改訂識別子を返す工程を有するものである方法。
記憶デバイスの不揮発性メモリ(NVM)を、第1のファームウェア、第1のファームウェア改訂識別子、第2のファームウェア、および第2のファームウェア改訂識別子を記憶するように管理する工程であって、当該記憶デバイスはコンピューティングホストに接続可能なものである、前記管理する工程と、
前記記憶デバイスにおいて、前記コンピューティングホストから前記第1のファームウェアを受け取る工程であって、前記第1のファームウェアは前記第1のファームウェア改訂識別子と関連付けられているものである、前記第1のファームウェアを受け取る工程と、
前記記憶デバイスにおいて、前記コンピューティングホストから前記第2のファームウェアを受け取る工程であって、当該受け取る工程は、前記第1のファームウェアを受け取る工程の後で実行されるものであり、前記第2のファームウェアは前記第2のファームウェア改訂識別子と関連付けられているものである、前記第2のファームウェアを受け取る工程と、
前記記憶デバイスが前記コンピューティングホストに前記第1のファームウェア改訂識別子を返す工程であって、当該返す工程は、前記コンピューティングホストからの第1のタイプのコマンドに応答するものであり、前記記憶デバイスが前記第2のファームウェアを実行している間に行われるものである、前記第1のファームウェア改訂識別子を返す工程と、
前記記憶デバイスが前記コンピューティングホストに、前記第2のファームウェア改訂識別子を返す工程であって、前記第1のファームウェア改訂識別子を返す工程は、前記コンピューティングホストからの第2のタイプのコマンドに応答するものであり、前記記憶デバイスが第2のファームウェアを実行している間に行われるものである、前記第2のファームウェア改訂識別子を返す工程と
を有し、
前記第1タイプのコマンドは識別読み取りタイプのコマンドであり、
前記第2タイプのコマンドはベンダ特有のタイプのコマンドである
方法。
(a)複数のファームウェアイメージのうちの選択された1つに従って実行する手段であって、当該複数のファームウェアイメージの各々は対応する識別子を有し、当該複数のファームウェアイメージは、それぞれのイメージに対応する現在のファームウェアイメージと新しいファームウェアイメージとを有するものであり、当該現在および新しいファームウェアイメージはそれぞれ対応する現在の識別子および新しい識別子を有するものである、前記実行する手段と、
(b)前記実行する手段を現在のファームウェアイメージである選択されたファームウェアイメージと共に使用し、当該使用中に、コンピューティングホストからの複数のタイプのコマンドのうちの特定の1つの第1のインスタンスに応答して、前記現在の識別子を返す手段と、
(c)前記(b)の手段の後に動作して、前記新しい識別子を有する前記新しいファームウェアイメージを受け取る手段と、
(d)前記(c)の手段の後に動作して、前記実行する手段を前記新しいファームウェアイメージである選択されたファームウェアイメージと共に使用し、当該使用中に、特定のタイプのコマンドの第2のインスタンスに応答して、前記現在の識別子を返す手段と、
(e)前記(b)の手段の後に電源サイクルに応答して動作する手段であって、前記実行する手段を前記新しいファームウェアイメージである選択されたファームウェアイメージと共に使用し、当該使用中に、特定のタイプのコマンドの第3のインスタンスに応答して、前記新しい識別子を返す手段と、
前記新しいファームウェアの少なくとも一部を記憶可能なフラッシュメモリと
を有し、
前記特定のタイプのコマンドは、
(i)第1の識別子の各々が前記特定のタイプのコマンドの第1のインスタンスの各々に応答して前記コンピューティングホストに返され、
(ii)第2の識別子の各々が特定のタイプのコマンドの第2のインスタンスの各々に応答して前記コンピューティングホストに返され、
(iii)前記第1の識別子の各々が返されるときと前記第2の識別子の各々が返されるときとの間に電源サイクルが行われない
場合、
前記第2の識別子の返しに応答して、前記コンピューティングホスト上で実行されているオペレーティングシステム(OS)に回復不能の誤りが発生するタイプのコマンドであるシステム。
NANDフラッシュ技術記憶セル、および
NORフラッシュ技術記憶セル
のうちの1若しくはそれ以上を有するEC。
シングルレベルセル(SLC)フラッシュ技術記憶セル、および
マルチレベルセル(MLC)フラッシュ技術記憶セル
のうちの1若しくはそれ以上を有するEC。
オープンNANDフラッシュインターフェース(ONFI)、
トグルモードインターフェース、
デュアル・データ・レート(DDR)同期インターフェース、
同期インターフェース、および
非同期インターフェース
のうちの1若しくはそれ以上と適合するEC。
ユニバーサル・シリアル・バス(Universal Serial Bus:USB)インターフェース規格と、
コンパクトフラッシュ(登録商標)(Compact Flash:CF)インターフェース規格と、
マルチメディアカード(MultiMediaCard:MMC)インターフェース規格と、
セキュアデジタル(Secure Digital:SD)インターフェース規格と、
メモリ・スティック・インターフェース規格と、
xDピクチャ・カード・インターフェース規格と、
内蔵ドライブエレクトロニクス(Integrated Drive Electronics:IDE)インターフェース規格と、
シリアル・アドバンスト・テクノロジー・アタッチメント(Serial Advanced Technology Attachment:SATA)インターフェース規格と、
エクスターナルSATA(eSATA)インターフェース規格と、
スモール・コンピュータ・システム・インターフェース(SCSI)インターフェース規格と、
シリアル接続スモール・コンピュータ・システム・インターフェース(SAS)インターフェース規格と、
ファイバー・チャンネル・インターフェース規格と、
イーサネット(登録商標)インターフェース規格と、
ペリフェラル・コンポーネント・インターコネクト・エキスプレス(Peripheral Component Interconnect express:PCIe)インターフェース規格と
のうちの1若しくはそれ以上を有するものであるストレージインターフェース規格を有するか、又は参照する上記ECのうちのいずれかのEC。
コンピュータと、
ワークステーションコンピュータと、
サーバコンピュータと、
ストレージサーバと、
パーソナルコンピュータ(Personal Computer:PC)と、
ラップトップコンピュータと、
ノートブックコンピュータと、
ネットブックコンピュータと、
携帯端末(Personal Digital Assistant:PDA)と、
メディアプレーヤと、
メディアレコーダと、
デジタルカメラと、
セル方式送受話器と、
コードレス電話の送受話器と、
電子ゲームと
のうちの1若しくはそれ以上を有するものである計算ホストを有するか、又は参照する上記ECのうちのいずれかのEC。
図1Aは、ホストから見たデバイスファームウェア更新の影響の管理を提供するSSDコントローラ100を含むSSD101の実施形態の選択された詳細を図示する。SSDコントローラはNVM要素(例えば、フラッシュメモリ)を介して実装される不揮発性ストレージなどの不揮発性ストレージを管理するためのものである。SSDコントローラ100は1若しくはそれ以上の外部インターフェース110を介してホスト(図示せず)に通信するように接続される。様々な実施形態に従って、外部インターフェース110は、SATAインターフェース、SASインターフェース、PICeインターフェース、ファイバー・チャンネル・インターフェース、イーサネット(登録商標)インターフェース(例えば、10ギガビットのイーサネット(登録商標))、上記のインターフェースのうちのいずれかの規格外版、若しくは特注のインターフェース、又はストレージ及び/又は通信機器及び/又は計算デバイスを相互接続するために使用されるその他任意の種類のインターフェースのうちの1若しくはそれ以上である。例えば、一部の実施形態において、SSDコントローラ100はSATAインターフェースとPCIeインターフェースとを含む。
図2に、ホストから見たデバイスファームウェア更新の影響の管理の実施形態の選択された詳細の流れ図200を示す。図の実施形態の動作についてのシステムコンテキストの例は、OSがホスト上で走っているホストに接続されたデバイスを含む。デバイスはホストからのコマンドに応答し、可視性の遅延を終了させるイベント(電源サイクルなど)を検出し、これに応答することができるようになっている。デバイスはファームウェア(ファームウェアを実行しているコントローラなど)に従って動作する。またデバイスは、ファームウェアを介して(例えば、ファームウェアの一部分を変更するコントローラを介して)読み取り可能であり、書き込み可能である選択identify/識別情報に従って動作する。選択identify/識別情報(「ID情報」ともいう)は、本明細書の別の箇所に記載したidentifyおよび/または識別情報の1若しくはそれ以上のサブセットであり、それらのサブセットは、デバイスの実施形態、使用シナリオ、および/または動作モードによって異なる。図に示す流れは、ファームウェア更新の影響の少なくとも一部分の可視性の遅延を提供し、よって、ホストから見たデバイスファームウェア更新の影響の管理を可能にする。
一部の実施形態では、フラッシュメモリ、コンピューティングホスト・フラッシュ・メモリ・コントローラなどを有するSSDコントローラ(例えばホストから見たデバイスファームウェア更新の影響の管理を提供するSSD)、および/またはSSDコントローラ(例えば図1AのSSDコントローラ100)、ならびにプロセッサ、マイクロプロセッサ、システム・オン・チップ、特定用途向け集積回路、ハードウェアアクセラレータ、または前述の動作の全部または部分を提供する他の回路を実装するシステムによって行われる動作の全部またはいずれかの部分の様々な組み合わせが、コンピュータシステムによる処理と適合する仕様によって指定される。仕様は、様々な記述、例えば、ハードウェア記述言語、回路記述、ネットリスト記述、マスク記述、またはレイアウト記述に従ったものである。記述の例には、Verilog、VHDL、SPICE、SPICEの変形、例えば、PSpice、IBIS、LEF、DEF、GDS−II、OASIS、または他の記述が含まれる。様々な実施形態では、処理は、1つ若しくはそれ以上の集積回路上に含めるのに適する論理および/または回路を生成し、検証し、または指定するための解釈、コンパイル、シミュレーション、および合成の任意の組み合わせを含む。各集積回路は、様々な実施形態によれば、様々な技法に従って設計することができ、および/または製造することができる。技法には、プログラマブルな技法(例えば、フィールド若しくはマスク・プログラマブル・ゲート・アレイ集積回路)、セミカスタムの技法(例えば、全部若しくは一部がセルベースの集積回路)、およびフルカスタムの技法(例えば、実質的に専門化された集積回路)、それらの任意の組み合わせ、または集積回路の設計および/若しくは製造と適合する任意の他の技法が含まれる。
ある特定の選択が、説明において、テキストおよび図面を作成するに際の単なる便宜のためになされており、別の指示がない限り、それらの選択は、それ自体で、前述の実施形態の構造または動作に関する追加情報を伝えるものと解釈すべきではない。選択の例には、図の符番に使用される呼称の特定の編成または割り当て、および実施形態の特徴および要素を識別し、参照するのに使用される要素識別子(コールアウトや数値識別子など)の特定の編成または割り当てが含まれる。
Claims (20)
- デバイスであって、
不揮発性メモリと、
コンピューティングホストに接続する手段と、
前記不揮発性メモリを、第1のファームウェア、第1のファームウェア改訂識別子、第2のファームウェア、および第2のファームウェア改訂識別子を記憶するように管理する手段と、
前記コンピューティングホストから前記第1のファームウェアを受け取る手段であって、前記第1のファームウェアは前記第1のファームウェア改訂識別子と関連付けられているものである、前記第1のファームウェアを受け取る手段と、
前記コンピューティングホストから前記第2のファームウェアを受け取る手段であって、当該受け取る手段は前記第1のファームウェアを受け取る手段の後で動作するものであり、前記第2のファームウェアは前記第2のファームウェア改訂識別子と関連付けられているものである、前記第2のファームウェアを受け取る手段と、
前記コンピューティングホストに前記第1のファームウェア改訂識別子を返す手段であって、当該返す手段は、前記コンピューティングホストからの特定のタイプのコマンドに応答するものであり、当該デバイスが前記第2のファームウェアを実行している間であって、且つ特定のイベントが発生する前に動作するものである、前記返す手段と
を有し、
前記返す手段の動作により、前記コンピューティングホスト上で実行されているオペレーティングシステム(Operating System:OS)は、当該デバイスが前記第1のファームウェアを実行している間中、および前記特定のイベントが発生するまで前記第2のファームウェアを実行している間に、返されたファームウェア改訂識別子の値の変更に応答して誤りを検出することなく実行を継続することが可能になるものである、デバイス。 - 請求項1記載のデバイスにおいて、前記特定のイベントはデバイスの電源サイクルであるデバイス。
- 請求項1記載のデバイスにおいて、さらに、
前記コンピューティングホストに前記第2のファームウェア改訂識別子を返す手段であって、当該デバイスが前記第2のファームウェアを実行している間であって、且つ前記特定のイベントが発生した後で動作するものであり、前記コンピューティングホストからの前記特定のタイプのコマンドに応答するものである、前記第2のファームウェア改訂識別子を返す前記手段を有するデバイス。 - 請求項1記載のデバイスにおいて、前記オペレーティングシステムはWindows(登録商標)オペレーティングシステムの1バージョンを有するデバイス。
- 請求項1記載のデバイスにおいて、前記特定のタイプのコマンドは、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)IDENTIFYタイプのコマンドを有するデバイス。
- 請求項1記載のデバイスにおいて、前記特定のタイプのコマンドは、シリアル小型コンピュータ・システム・インターフェース(シリアルSCSI)(SAS)重要製品データ(VPD)読み取りタイプのコマンドを有するデバイス。
- デバイスであって、
不揮発性メモリと、
前記不揮発性メモリを、第1のファームウェア、第1のファームウェア改訂識別子、第2のファームウェア、および第2のファームウェア改訂識別子を記憶するように管理する手段であって、当該デバイスはコンピューティングホストに接続可能である、前記管理する手段と、
前記コンピューティングホストから前記第1のファームウェアを受け取る手段であって、前記第1のファームウェアは前記第1のファームウェア改訂識別子と関連付けられているものである、前記第1のファームウェアを受け取る手段と、
前記コンピューティングホストから前記第2のファームウェアを受け取る手段であって、当該受け取る手段は、前記第1のファームウェアを受け取る前記手段の後で動作するものであり、前記第2のファームウェアは前記第2のファームウェア改訂識別子と関連付けられているものである、前記第2のファームウェアを受け取る手段と、
前記コンピューティングホストに前記第1のファームウェア改訂識別子を返す手段であって、当該返す手段は、前記コンピューティングホストからの第1のタイプのコマンドに応答するものであり、当該デバイスが前記第2のファームウェアを実行している間に動作するものである、前記第1のファームウェア改訂識別子を返す前記手段と、
前記コンピューティングホストに前記第2のファームウェア改訂識別子を返す手段であって、当該返す手段は、前記コンピューティングホストからの第2のタイプのコマンドに応答するものであり、当該デバイスが前記第2のファームウェアを実行している間に動作するものである、前記第2のファームウェア改訂識別子を返す前記手段と
を有し、
前記第1のタイプのコマンドは識別読み取りタイプのコマンドであり、
前記第2のタイプのコマンドはベンダ特有のタイプのコマンドである、デバイス。 - 請求項7記載のデバイスにおいて、前記ベンダ特有のタイプのコマンドはベンダ特有のファームウェア識別情報読み取りタイプのコマンドを有するデバイス。
- 請求項7記載のデバイスにおいて、前記識別読み取りタイプのコマンドは、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)IDENTIFYタイプのコマンドを有するデバイス。
- 請求項7記載のデバイスにおいて、前記識別読み取りタイプのコマンドは、シリアル小型コンピュータ・システム・インターフェース(シリアルSCSI)(SAS)重要製品データ(VPD)読み取りタイプのコマンドを有するデバイス。
- 請求項7記載のデバイスにおいて、前記識別読み取りタイプのコマンドは、前記第2のファームウェア改訂識別子が前記第1のファームウェア改訂識別子の代わりに返されるように処理されるときに、前記コンピューティングホスト上で実行されているオペレーティングシステム(OS)が回復不能の誤りを発生させるタイプのコマンドを有するデバイス。
- 請求項11記載のデバイスにおいて、前記オペレーティングシステムはWindows(登録商標)オペレーティングシステムの1バージョンを有するデバイス。
- 記憶デバイスであって、
現在のファームウェア改訂識別子と関連付けられた現在のファームウェアに従って記憶デバイスを動作させる第1の手段であって、前記現在のファームウェア改訂識別子を、記憶デバイスと通信するコンピューティングホストに返す第2の手段を有するものである、前記第1の手段と、
前記第1の手段の後で動作する、前記現在のファームウェア改訂識別子とは異なる新しいファームウェア改訂識別子と関連付けられた新しいファームウェアを受け取る第3の手段と、
前記第3の手段の後で動作する、前記新しいファームウェアに従って記憶デバイスを動作させる第4の手段であって、前記現在のファームウェア改訂識別子を前記コンピューティングホストに返す第5の手段を有するものである、前記第4の手段と、
前記第3の手段の後で電源サイクルに応答して動作する、前記新しいファームウェアに従って記憶デバイスを動作させる第6の手段であって、前記新しいファームウェア改訂識別子を前記コンピューティングホストに返す第7の手段を有するものである、前記第6の手段と、
前記新しいファームウェアの少なくとも一部分を記憶することができるようにした不揮発性メモリと
を有し、
前記3つの返す手段は、各々、前記コンピューティングホストからの複数のタイプのコマンドのうちの特定の1つのそれぞれのインスタンスに応答し、前記特定のタイプのコマンドは、
(a)前記現在のファームウェア改訂識別子が前記それぞれのインスタンスの第1のものに応答して前記コンピューティングホストに返され、
(b)前記新しいファームウェア改訂識別子が前記それぞれのインスタンスの第2のものに応答して前記コンピューティングホストに返され、
(c)前記現在のファームウェア改訂識別子が返されるのと前記新しいファームウェア改訂識別子が返されるのとの間に前記電源サイクルが行われないときには、
前記コンピューティングホスト上で実行されているオペレーティングシステム(OS)が、前記新しいファームウェア改訂識別子の返しに応答して回復不能の誤りを発生させるようなものである、記憶デバイス。 - 請求項13記載の記憶デバイスにおいて、前記オペレーティングシステムはWindows(登録商標)OSの1バージョンを有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記特定のタイプのコマンドは、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)IDENTIFYタイプのコマンドを有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記特定のタイプのコマンドは、小型コンピュータ・システム・インターフェース(SCSI)重要製品データ(VPD)読み取りタイプのコマンドを有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記特定のタイプのコマンドは、シリアル小型コンピュータ・システム・インターフェース(シリアルSCSI)(SAS)重要製品データ(VPD)読み取りタイプのコマンドを有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記受け取る手段は、前記電源サイクルまで前記現在のファームウェア改訂識別子を保存する手段を有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記受け取る手段は、前記電源サイクルまで前記現在のファームウェア改訂識別子を変更されないよう保護する手段を有する記憶デバイス。
- 請求項13記載の記憶デバイスにおいて、前記受け取る手段は、前記現在のファームウェア改訂識別子を前記コンピューティングホストに提供する手段と、前記コンピューティングホストから前記現在のファームウェア改訂識別子を復元する手段とを有する記憶デバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161494262P | 2011-06-07 | 2011-06-07 | |
US61/494,262 | 2011-06-07 | ||
PCT/US2012/041088 WO2012170521A2 (en) | 2011-06-07 | 2012-06-06 | Management of device firmware update effects as seen by a host |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2014519662A JP2014519662A (ja) | 2014-08-14 |
JP2014519662A5 JP2014519662A5 (ja) | 2015-07-30 |
JP6082389B2 true JP6082389B2 (ja) | 2017-02-15 |
Family
ID=47296715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014514587A Expired - Fee Related JP6082389B2 (ja) | 2011-06-07 | 2012-06-06 | ホストから見たデバイスファームウェア更新の影響の管理 |
Country Status (6)
Country | Link |
---|---|
US (3) | US9223563B2 (ja) |
EP (1) | EP2718828A4 (ja) |
JP (1) | JP6082389B2 (ja) |
KR (2) | KR101466560B1 (ja) |
CN (3) | CN106990977B (ja) |
WO (1) | WO2012170521A2 (ja) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011075139A1 (en) * | 2009-12-18 | 2011-06-23 | Hewlett-Packard Development Company, L.P. | Methods and devices for updating firmware of a component using a firmware update application |
CN106990977B (zh) | 2011-06-07 | 2023-09-15 | 希捷科技有限公司 | 主机看到的设备固件更新效果的管理 |
US8972973B2 (en) | 2012-06-27 | 2015-03-03 | Microsoft Technology Licensing, Llc | Firmware update discovery and distribution |
US9235404B2 (en) | 2012-06-27 | 2016-01-12 | Microsoft Technology Licensing, Llc | Firmware update system |
TW201441932A (zh) * | 2013-04-19 | 2014-11-01 | Nuvoton Technology Corp | 處理裝置與系統程式更新方法 |
JP2015102889A (ja) | 2013-11-21 | 2015-06-04 | レノボ・シンガポール・プライベート・リミテッド | ファームウェアの更新方法、電子機器、コンピュータおよびコンピュータ・プログラム |
JP6281413B2 (ja) * | 2014-05-28 | 2018-02-21 | 富士通株式会社 | ファームウェア更新装置、ストレージ制御装置およびプログラム |
US9395975B2 (en) * | 2014-07-21 | 2016-07-19 | Sandisk Technologies Llc | Method and system for generating a ROM patch |
US9626179B2 (en) | 2014-07-21 | 2017-04-18 | Sandisk Technologies Llc | Method and system for using a ROM patch |
JP6484965B2 (ja) * | 2014-09-03 | 2019-03-20 | 富士通株式会社 | ストレージ装置、ファームウェアの更新方法、およびファームウェアの更新プログラム |
KR102261815B1 (ko) | 2014-10-30 | 2021-06-07 | 삼성전자주식회사 | 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템 |
US9459857B2 (en) | 2015-01-21 | 2016-10-04 | HGST Netherlands B.V. | Managing wear of system areas of storage devices |
KR102400384B1 (ko) * | 2015-06-26 | 2022-05-23 | 삼성전자 주식회사 | 외장 메모리를 구비하는 전자장치 및 그 동작 방법 |
CN107085459B (zh) * | 2016-02-14 | 2020-03-31 | 华为技术有限公司 | 一种电源管理方法以及*** |
US9913081B1 (en) * | 2016-10-13 | 2018-03-06 | GM Global Technology Operations LLC | Method and device for communicating with a vehicle system module while conserving power by using two different short range wireless communication (SRWC) protocols |
DE102017205274A1 (de) * | 2017-03-29 | 2018-10-04 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Aktualisieren eines Programmes |
US10747437B2 (en) * | 2017-05-02 | 2020-08-18 | Quanta Computer Inc. | SAS hard disk drive update via management controller |
US20190044809A1 (en) * | 2017-08-30 | 2019-02-07 | Intel Corporation | Technologies for managing a flexible host interface of a network interface controller |
US10642693B2 (en) | 2017-09-06 | 2020-05-05 | Western Digital Technologies, Inc. | System and method for switching firmware |
US10754580B2 (en) * | 2017-10-23 | 2020-08-25 | Micron Technology, Inc. | Virtual partition management in a memory device |
US10642603B2 (en) | 2018-01-16 | 2020-05-05 | Nutanix, Inc. | Scheduling upgrades in distributed computing systems |
US11099831B2 (en) * | 2018-02-08 | 2021-08-24 | Micron Technology, Inc. | Firmware update in a storage backed memory system |
CN108415862B (zh) * | 2018-03-05 | 2021-06-01 | 青岛海信宽带多媒体技术有限公司 | 光模块的通道保存方法、装置及光模块 |
US10838754B2 (en) | 2018-04-27 | 2020-11-17 | Nutanix, Inc. | Virtualized systems having hardware interface services for controlling hardware |
US20200004522A1 (en) * | 2018-06-27 | 2020-01-02 | Hewlett Packard Enterprise Development Lp | Selective download of a portion of a firmware bundle |
DE102018214451A1 (de) * | 2018-08-27 | 2020-02-27 | Robert Bosch Gmbh | Verfahren zum Betreiben einer Recheneinrichtung |
US10635345B2 (en) | 2018-08-31 | 2020-04-28 | Micron Technology, Inc. | Live firmware activation in a memory system |
US10838711B2 (en) | 2018-09-20 | 2020-11-17 | Mellanox Technologies Tlv Ltd. | In-service software/firmware update |
WO2020131073A1 (en) * | 2018-12-20 | 2020-06-25 | Hewlett-Packard Development Company, L.P. | Conditional firmware images |
CN110704334B (zh) * | 2019-09-25 | 2021-10-15 | 苏州浪潮智能科技有限公司 | 一种重要产品数据管理的方法、***及设备 |
CN111079124B (zh) * | 2019-12-21 | 2023-02-10 | 广州小鹏汽车科技有限公司 | 安全芯片激活方法、装置、终端设备及服务器 |
US11650743B2 (en) * | 2020-02-03 | 2023-05-16 | Dell Products L.P. | Updating storage drive firmware |
CN113495743A (zh) * | 2020-03-19 | 2021-10-12 | 瑞昱半导体股份有限公司 | 储存电路以及运作方法 |
KR20220033311A (ko) | 2020-09-09 | 2022-03-16 | 삼성전자주식회사 | 전자 디바이스 및 이의 동작 방법과 네트워크 시스템 |
US11741232B2 (en) | 2021-02-01 | 2023-08-29 | Mellanox Technologies, Ltd. | Secure in-service firmware update |
US11750522B2 (en) * | 2021-04-19 | 2023-09-05 | Avago Technologies International Sales Pte. Limited | System and method for reducing congestion in a network |
US11709667B2 (en) | 2021-06-14 | 2023-07-25 | EMC IP Holding Company LLC | Non-disruptive firmware upgrade of symmetric hardware accelerator systems |
US11513787B1 (en) * | 2021-06-14 | 2022-11-29 | EMC IP Holding Company LLC | Non-disruptive firmware upgrade of asymmetric hardware accelerator systems |
US11922170B2 (en) | 2021-06-28 | 2024-03-05 | Samsung Electronics Co., Ltd. | Systems and method for bootup activation of firmware images |
US11899945B2 (en) | 2021-10-03 | 2024-02-13 | Silicon Motion, Inc. | Method and apparatus for performing communications specification version control of memory device in predetermined communications architecture with aid of compatibility management, and associated computer-readable medium |
Family Cites Families (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5432927A (en) * | 1992-06-17 | 1995-07-11 | Eaton Corporation | Fail-safe EEPROM based rewritable boot system |
JP3437083B2 (ja) * | 1998-02-23 | 2003-08-18 | 富士通株式会社 | 入出力制御装置およびそのファームウェア更新方法 |
US6237091B1 (en) * | 1998-10-29 | 2001-05-22 | Hewlett-Packard Company | Method of updating firmware without affecting initialization information |
JP2001216167A (ja) * | 2000-02-04 | 2001-08-10 | Minolta Co Ltd | 本体と周辺装置からなるシステム |
JP2001331327A (ja) * | 2000-05-24 | 2001-11-30 | Matsushita Electric Ind Co Ltd | 電子機器 |
US7065769B1 (en) * | 2000-06-30 | 2006-06-20 | Intel Corporation | Method for automatically installing and updating drivers |
JP2002244874A (ja) * | 2001-02-15 | 2002-08-30 | Toshiba Corp | 情報処理装置およびファームウェア更新方法 |
GB0116568D0 (en) * | 2001-07-06 | 2001-08-29 | Ncipher Corp Ltd | Firmware validation |
US7320126B2 (en) * | 2001-11-06 | 2008-01-15 | Sandisk Corporation | Implementation of in system programming to update firmware on memory cards |
JP4189570B2 (ja) * | 2001-12-28 | 2008-12-03 | コニカミノルタビジネステクノロジーズ株式会社 | 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム |
JP3880407B2 (ja) * | 2002-01-25 | 2007-02-14 | キヤノン株式会社 | 情報処理装置およびユーザインターフェースを制御する方法 |
TW591524B (en) * | 2002-03-13 | 2004-06-11 | Insyde Software Corp | Updating method of keyboard controller in notebook computer |
US20040083469A1 (en) * | 2002-10-23 | 2004-04-29 | Ping-Sheng Chen | Method for updating firmware of optical disk system |
US20040236932A1 (en) * | 2003-05-20 | 2004-11-25 | Zhahong Zhang | Apparatus and method for firmware upgrade in microprocessor-based processing units |
US7222339B2 (en) * | 2003-06-13 | 2007-05-22 | Intel Corporation | Method for distributed update of firmware across a clustered platform infrastructure |
US20050028172A1 (en) * | 2003-07-30 | 2005-02-03 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for installing software |
US7865907B2 (en) | 2003-09-25 | 2011-01-04 | Fisher-Rosemount Systems, Inc. | Method and apparatus for providing automatic software updates |
TWI229818B (en) * | 2003-12-15 | 2005-03-21 | Wistron Corp | Method and device for updating firmware |
KR100987628B1 (ko) * | 2004-02-07 | 2010-10-13 | 엘지전자 주식회사 | 엠비디드 컨트롤러의 펌웨어 갱신방법 및 갱신용 펌웨어저장매체 |
US7904895B1 (en) * | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
EP1756711A1 (en) * | 2004-05-31 | 2007-02-28 | STMicroelectronics Pvl. Ltd. | A method for remotely upgrading the firmware of a target device using wireless technology |
US7334117B2 (en) * | 2004-08-04 | 2008-02-19 | National Instruments Corporation | Device boot loader for processing one or more requests from a host computer system concurrently with loading or updating the firmware of the device |
KR100594305B1 (ko) * | 2004-12-17 | 2006-06-30 | 삼성전자주식회사 | 시리얼 ata 인터페이스를 이용하여 광학 디스크드라이버의 프로그램 코드를 업데이트하는 장치 및 그 방법 |
US7603562B2 (en) * | 2005-02-02 | 2009-10-13 | Insyde Software Corporation | System and method for reducing memory requirements of firmware |
JP4679943B2 (ja) * | 2005-03-23 | 2011-05-11 | ヒタチグローバルストレージテクノロジーズネザーランドビーブイ | データ記憶装置及びその不揮発性メモリ内データ書き換え処理方法 |
US7748031B2 (en) * | 2005-07-08 | 2010-06-29 | Sandisk Corporation | Mass storage device with automated credentials loading |
JP2007025933A (ja) * | 2005-07-14 | 2007-02-01 | Hitachi Ltd | ストレージシステム及びそのファームウェア自動更新方法 |
US20070288986A1 (en) * | 2006-06-13 | 2007-12-13 | Candelore Brant L | Method and system for downloading content to a target device |
KR100775431B1 (ko) * | 2006-02-20 | 2007-11-12 | 삼성전자주식회사 | 임베디드 시스템 및 임베디드 시스템의 펌웨어 업데이트방법 |
US8707290B2 (en) * | 2006-02-22 | 2014-04-22 | Dell Products L.P. | Firmware update in an information handling system employing redundant management modules |
CN100570558C (zh) * | 2006-03-31 | 2009-12-16 | 联想(北京)有限公司 | 一种芯片固件升级方法 |
US8707297B2 (en) * | 2006-07-26 | 2014-04-22 | Dell Products L.P. | Apparatus and methods for updating firmware |
KR100801014B1 (ko) * | 2006-08-21 | 2008-02-04 | 삼성전자주식회사 | Dos 부트 프로그램을 내장한 디스크를 구비하는 하드 디스크 드라이브와 그를 포함하는 컴퓨터 시스템, 상기 하드 디스크 드라이브의 펌웨어 다운로드 방법 및 그를 포함하는 기록 매체 |
US8010959B2 (en) * | 2006-11-29 | 2011-08-30 | Sony Ericsson Mobile Communications Ab | System and method for updating device drivers |
US8046776B1 (en) * | 2006-11-30 | 2011-10-25 | Marvell International Ltd. | Method and apparatus for transferring firmware between an operating system device in a host |
KR100800589B1 (ko) * | 2006-12-20 | 2008-02-04 | 엘지전자 주식회사 | 정보 처리 장치 및 그 운용방법 |
US8776037B2 (en) * | 2007-01-04 | 2014-07-08 | International Business Machines Corporation | Apparatus and method to update multiple devices disposed in a computing system |
CN101291231A (zh) * | 2007-04-17 | 2008-10-22 | 鸿富锦精密工业(深圳)有限公司 | 网络设备及其重启方法 |
KR20090023863A (ko) * | 2007-09-03 | 2009-03-06 | 엘지이노텍 주식회사 | 펌웨어 업데이트 시스템 및 방법 |
JP2009116772A (ja) * | 2007-11-09 | 2009-05-28 | Hitachi-Lg Data Storage Inc | 光ディスク装置、および、そのファームウェア更新方法 |
KR20090060774A (ko) * | 2007-12-10 | 2009-06-15 | 한국전자통신연구원 | 임베디드 시스템의 펌웨어 및 데이터 미러링 장치 및 방법 |
US8201161B2 (en) * | 2008-01-07 | 2012-06-12 | Lenovo (Singapore) Pte. Ltd. | System and method to update device driver or firmware using a hypervisor environment without system shutdown |
US7975084B1 (en) * | 2008-02-06 | 2011-07-05 | American Megatrends, Inc. | Configuring a host computer using a service processor |
US20090254898A1 (en) * | 2008-04-08 | 2009-10-08 | Microsoft Corporation | Converting a device from one system to another |
US8122298B2 (en) * | 2008-06-12 | 2012-02-21 | Lsi Corporation | Methods and systems for capturing error information in a SATA communication system |
US8250246B2 (en) * | 2008-07-09 | 2012-08-21 | Finisar Corporation | Loading and executing firmware module without resetting operation |
US8694989B1 (en) * | 2008-07-17 | 2014-04-08 | Apple Inc. | Virtual installation environment |
US8332839B2 (en) * | 2008-08-15 | 2012-12-11 | Lsi Corporation | Method and system for modifying firmware image settings within data storage device controllers |
JP5102918B2 (ja) * | 2008-09-02 | 2012-12-19 | 株式会社日立製作所 | ストレージ装置及びファームウェア更新指示方法 |
US20100064048A1 (en) * | 2008-09-05 | 2010-03-11 | Hoggan Stuart A | Firmware/software validation |
US8566571B2 (en) * | 2008-12-12 | 2013-10-22 | Novell, Inc. | Pre-boot securing of operating system (OS) for endpoint evaluation |
US8856776B2 (en) * | 2009-02-05 | 2014-10-07 | International Business Machines Corporation | Updating firmware without disrupting service |
JP5342302B2 (ja) * | 2009-03-30 | 2013-11-13 | 株式会社日立ソリューションズ | ファームウェア更新システム、ファームウェア配信サーバ、及びプログラム |
JP5478986B2 (ja) * | 2009-08-21 | 2014-04-23 | 株式会社日立ソリューションズ | 情報機器及びプログラム |
US9565207B1 (en) * | 2009-09-04 | 2017-02-07 | Amazon Technologies, Inc. | Firmware updates from an external channel |
US8214653B1 (en) * | 2009-09-04 | 2012-07-03 | Amazon Technologies, Inc. | Secured firmware updates |
US8971538B1 (en) * | 2009-09-08 | 2015-03-03 | Amazon Technologies, Inc. | Firmware validation from an external channel |
US8381264B1 (en) * | 2009-09-10 | 2013-02-19 | Amazon Technologies, Inc. | Managing hardware reboot and reset in shared environments |
US8589302B2 (en) * | 2009-11-30 | 2013-11-19 | Intel Corporation | Automated modular and secure boot firmware update |
US20120110562A1 (en) * | 2010-10-27 | 2012-05-03 | David Heinrich | Synchronized firmware update |
US9146726B2 (en) * | 2010-12-16 | 2015-09-29 | Netapp, Inc. | System and method for firmware update for network connected storage subsystem components |
CN106990977B (zh) | 2011-06-07 | 2023-09-15 | 希捷科技有限公司 | 主机看到的设备固件更新效果的管理 |
US8966466B2 (en) * | 2012-04-04 | 2015-02-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System for performing firmware updates on a number of drives in an array with minimum interruption to drive I/O operations |
CN102855151B (zh) * | 2012-08-21 | 2016-06-08 | 武汉电信器件有限公司 | 不打断业务的光模块固件在应用升级方法 |
JP6134390B2 (ja) * | 2013-01-15 | 2017-05-24 | ヒューレット パッカード エンタープライズ デベロップメント エル ピーHewlett Packard Enterprise Development LP | 動的ファームウェア更新 |
US9355674B2 (en) * | 2013-07-19 | 2016-05-31 | Seagate Technology Llc | Data storage device and system having adaptive brownout detection |
-
2012
- 2012-06-06 CN CN201610879541.5A patent/CN106990977B/zh active Active
- 2012-06-06 US US14/119,375 patent/US9223563B2/en active Active
- 2012-06-06 KR KR1020137034919A patent/KR101466560B1/ko active IP Right Grant
- 2012-06-06 CN CN201510419234.4A patent/CN105159699B/zh not_active Expired - Fee Related
- 2012-06-06 JP JP2014514587A patent/JP6082389B2/ja not_active Expired - Fee Related
- 2012-06-06 KR KR1020147018185A patent/KR101524096B1/ko active IP Right Grant
- 2012-06-06 EP EP12796844.4A patent/EP2718828A4/en not_active Withdrawn
- 2012-06-06 CN CN201280031049.2A patent/CN103620567A/zh active Pending
- 2012-06-06 WO PCT/US2012/041088 patent/WO2012170521A2/en active Application Filing
-
2015
- 2015-12-09 US US14/964,139 patent/US9766878B2/en active Active
-
2017
- 2017-08-25 US US15/686,221 patent/US10365920B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20160085541A1 (en) | 2016-03-24 |
JP2014519662A (ja) | 2014-08-14 |
CN103620567A (zh) | 2014-03-05 |
CN106990977A (zh) | 2017-07-28 |
WO2012170521A3 (en) | 2013-02-21 |
WO2012170521A2 (en) | 2012-12-13 |
KR101524096B1 (ko) | 2015-06-01 |
KR20140010999A (ko) | 2014-01-27 |
US10365920B2 (en) | 2019-07-30 |
KR101466560B1 (ko) | 2014-11-28 |
US20180004504A1 (en) | 2018-01-04 |
EP2718828A2 (en) | 2014-04-16 |
US20140189673A1 (en) | 2014-07-03 |
US9223563B2 (en) | 2015-12-29 |
CN106990977B (zh) | 2023-09-15 |
KR20140092413A (ko) | 2014-07-23 |
US9766878B2 (en) | 2017-09-19 |
CN105159699A (zh) | 2015-12-16 |
EP2718828A4 (en) | 2014-11-05 |
CN105159699B (zh) | 2022-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6082389B2 (ja) | ホストから見たデバイスファームウェア更新の影響の管理 | |
US10936251B2 (en) | I/O device and computing host interoperation | |
US20230244296A1 (en) | Device power control | |
JP6045567B2 (ja) | 不揮発性記憶のための可変オーバープロビジョニング | |
US9461904B2 (en) | Selective enablement of operating modes or features via host transfer rate detection | |
KR20140094468A (ko) | 비휘발성 메모리에 대한 기록들의 관리 및 그 기록들의 영역 선택 | |
US9423977B2 (en) | Lock-free communication storage request reordering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150606 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150606 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20160427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160525 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160712 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161011 |
|
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: 20170104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6082389 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |