(57)【要約】  本発明は、技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートのための第１の方法に関する。ここで、この技術的な機器は、揮発性のメモリ機器、例えばＲＡＭメモリを有しており、この技術的な機器は、ファームウェアアップデートパケットが格納されている不揮発性のメモリ機器、例えばフラッシュメモリを有している。ここでこのファームウェアアップデートパケットは、個々のファイルと、属する第１のチェックサムとを含んでいる。ここでこの方法は、以下のステップ、すなわち、再起動（Ｇ）、後続の、コンピューターシステムの立ち上げ（Ｈ）、および、インジケーターファイルが不揮発性のメモリ機器内に存在するか否かの検査（Ｉ）を記載された順番で行う。本発明は、技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートのための第２の方法に関する。ここでこの方法は、以下のステップ、すなわち、再起動（Ｇ）、後続の、コンピューターシステムの立ち上げ（Ｈ）、および、インジケーターファイルが不揮発性のメモリ機器内に存在するか否かの検査（Ｉ）を記載された順番で行う。
2017534136.tif 000002
【特許請求の範囲】
【請求項１】
技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートの準備のための方法であって、
・前記技術的な機器は、揮発性のメモリ機器、例えばＲＡＭメモリを有しており、
・前記技術的な機器は、不揮発性のメモリ機器、例えばフラッシュメモリを有しており、
前記方法は、以下のステップ、すなわち、
・前記ファームウェアの前記アップデートの開始（Ａ）
・ファームウェアアップデートパケットの、前記揮発性のメモリ機器へのダウンロード（Ｂ）
・前記ファームウェアアップデートパケットの、前記不揮発性のメモリ機器へのコピー（Ｃ）
・前記不揮発性のメモリ機器における、インジケーターファイルの生成（Ｄ）
・ユーザーへの、前記技術的な機器の再起動を実行させる要求の出力（Ｅ）
・前記コンピューターシステムの再起動（Ｆ）
を記載された順番で行う、
ことを特徴とする、コンピューターシステムのファームウェアのアップデートの準備のための方法。
【請求項２】
技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートのための方法であって、
・前記技術的な機器は、揮発性のメモリ機器、例えばＲＡＭメモリを有しており、
・前記技術的な機器は、ファームウェアアップデートパケットが格納されている不揮発性のメモリ機器、例えばフラッシュメモリを有しており、
・前記ファームウェアアップデートパケットは、個々のファイルと、属する第１のチェックサムと、を含んでおり、
前記方法は、以下のステップ、すなわち、
・再起動（Ｇ）
・後続の、前記コンピューターシステムの立ち上げ（Ｈ）、および、
・インジケーターファイルが前記不揮発性のメモリ機器内に存在するか否かの検査（Ｉ）
を記載された順番で行う、
ことを特徴とする、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項３】
・前記インジケーターファイルが存在していない場合には、前記技術的な機器のファームウェアの始動が行われる（Ｊ）、
請求項２記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項４】
・前記インジケーターファイルが存在している場合には、前記ファームウェアアップデートパケットは、前記不揮発性のメモリ機器から前記揮発性のメモリ機器にコピーされ（Ｋ）、
・次に、前記ファームウェアアップデートパケット内に含まれている全てのファイルが、前記揮発性のメモリ機器においてアンパックされ（Ｌ）、前記ファイルの、属する第２の前記チェックサムが形成され、前記ファームウェアアップデートパケットの前記ファイルの前記第１のチェックサムと、コピーされた前記ファームウェアアップデートパケットの前記第２のチェックサムと、が比較される（Ｍ）、
請求項２記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項５】
・前記ファームウェアアップデートパケットの前記ファイルの前記チェックサムと、前記コピーされたファームウェアアップデートパケットの前記チェックサムと、が同一でない場合には、前記不揮発性のメモリ機器内の前記ファームウェアアップデートパケットが消去され（Ｏ）、
・前記不揮発性のメモリ機器内の前記インジケーターファイルが消去され（Ｐ）、
・次に、前記技術的な機器のファームウェアの始動が行われる（Ｊ、Ｑ）、
請求項４記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項６】
・前記ファームウェアアップデートパケットの前記ファイルの前記チェックサムと、前記コピーされたファームウェアアップデートパケットの前記チェックサムと、が同一である場合には、前記揮発性のメモリ機器内に格納されている前記ファームウェアアップデートパケットの全てのファイルが、前記不揮発性のメモリ機器にコピーされ（Ｒ）、
・次に、前記コピープロセスが成功していたか否かがコントロールされる（Ｓ）、
請求項４記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項７】
・前記コピープロセスが成功していた場合には、前記不揮発性のメモリ内の前記ファームウェアアップデートパケットが消去され（Ｏ）、
・次に、前記不揮発性のメモリ内の前記インジケーターファイルが消去され（Ｐ）、
・次に、前記技術的な機器のファームウェアの始動が行われる（Ｊ、Ｑ）、
請求項６記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項８】
・前記コピープロセスが成功していなかった場合には、前記技術的な機器のユーザーは、前記技術的な機器の再起動を実行するように要求される（Ｔ）、
請求項６記載の、コンピューターシステムのファームウェアのアップデートのための方法。
【請求項９】
３つの個々のパケットから成るファームウェアアップデートパケットが格納されているデータメモリを有するコンピューターシステムであって、
・第１のパケットは、前記ファームウェアに関連する全てのファイルを含んでおり、
・第２のパケットは、少なくとも１つのスクリプトファイルを含んでおり、
・第３のパケットは、前記第１のパケットのファイルに割り当てられている少なくとも１つのチェックサムを含んでおり、前記チェックサムによって、前記ファイルの確かさを検査することができる、
ことを特徴とするコンピューターシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、独立請求項１の上位概念に記載された、コンピューターシステムのファームウェアのアップデートの準備のための方法に基づき、さらに、独立請求項２の上位概念に記載された、コンピューターシステムのファームウェアのアップデートのための方法に基づく。本発明は、同様に、ファームウェアアップデートパケットが格納されているデータメモリを有するコンピューターシステムに関し、請求項９に基づく。
【０００２】
この種のコンピューターシステムは、「組み込み機器」とも称される。このコンピューターシステムは、駆動されるべき技術的な機器に対する全ての必要な制御データおよび機能データ、並びに、制御規則および機能規則（プロセス）を含んでいる、いわゆるファームウェアによって駆動される。
【背景技術】
【０００３】
国際公開第２００７００５７９０号（WO 2007 005 790 A2）は、技術的な機器のファームウェアのアップデートのための方法を開示している。ファームウェアデータパケットから、アップデートの前に、ローカルコピーが、技術的な機器の記憶媒体に格納される。場合によって生じる、アップデートの失敗の際には、このコピーを用いてアップデートを再度、実行することができる。
【０００４】
しかし、壊れたファイルまたは不完全なファイルによってアップデートが行われてしまう場合がある。ここでは、機器の動作エラーはすぐには気付かれない。国際公開第２００７００５７９０号（WO 2007 005 790 A2）のアップデート方法を、このようなエラーから保護することはできない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の課題は、ファームウェアの確実なアップデートを提案することである。
【課題を解決するための手段】
【０００６】
上述の課題は、独立請求項１の特徴部分に記載された構成によって解決される。
【０００７】
本発明の有利な構成は、従属請求項に記載されている。
【０００８】
本発明の核心は、ファームウェアのアップデート方法を二段階にすることである。元来のアップデート方法は、前半の方法において準備される。
【０００９】
本願で提示される方法は、特に有利には、いわゆるスイッチにおいて用いられる。スイッチは、ネットワーク技術から既知である。
【００１０】
ファームウェア（英語でｆｉｒｍ  「固定の」）とは、当業者にとって、電子機器に組み込まれているソフトウェアのことである。これは、多くの場合に、フラッシュメモリに格納されている。ファームウェアは、機能的に、ハードウェアと固定的に接続されている。これは、他方が無くては、一方が利用不可能であることを意味している。これは、ハードウェア（すなわち、機器の物理的な部分）とアプリケーションソフトウェア（機器の、場合によって交換可能なプログラム）との間の中間位置を取る。
【００１１】
ファームウェアアップデートパケットは、例えば、アンパック可能なＺＩＰファイルのことであり、これは通常、属する技術的な機器の製造者によって提供される。本願で提案されるファームウェアアップデートパケットは、ファイル、プロトコル、スクリプトおよび属するチェックサムを含んでいる。これらは、既知のｍｄ５−アルゴリズムを用いて生成されたものである。
【００１２】
本発明に関連するファームウェアアップデートパケットは、アンパックされた後、有利には、３つの小さいパケットから成る。第１のパケットは、ファームウェアに関連する全てのファイルを含んでいる。第２のパケットは、少なくとも１つの、いわゆるスクリプトファイルから成る。このスクリプトファイルから、個々の命令が読み出され、実行される。スクリプトファイルは特に、第１のパケットのファイルが、設定された目的フォルダにコピーされるように、設けられている。第３のパケットは、第１のパケットのファイルに割り当てられている少なくとも１つのチェックサムから成り、このチェックサムによって、このファイルの確かさを検査することができる。
【００１３】
それが通常であるように、第２のパケットがスクリプトファイルだけを含んでいる場合には、ファームウェアアップデートパケットは、２つのパケットと、ほかならぬこのスクリプトファイルとから成る。
【００１４】
以降で説明する方法の大部分は、このスクリプトファイルによって導かれる。
【００１５】
前半の方法は、技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートの準備のために用いられる。この技術的な機器には、揮発性のメモリ機器、例えばＲＡＭメモリと、不揮発性のメモリ機器、例えばフラッシュメモリとが設けられている。この方法は、以下のステップを、記載された順番で実行する。
・まずは、ファームウェアアップデートパケットが、揮発性のメモリ機器内にダウンロードされる。このファームウェアアップデートパケットは、例えばＵＳＢスティックに格納されていてよく、ＵＳＢインタフェースを介して、技術的な機器に供給され得る。
・続いて、ファームウェアアップデートパケットが、不揮発性のメモリ機器にコピーされる。
・次に、インジケーターファイルが、不揮発性のメモリ機器において生成される。このインジケーターファイルの機能については、以降で詳細に説明する。
・最後に、技術的な機器から要求がユーザーに出力され、これは、技術的な機器の再起動を実行するという内容を伴う。
【００１６】
後半の方法は、ファームウェアの元来のアップデートプロセスに関する。ファームウェアに関連する全てのファイルが交換される。
【００１７】
技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートのための後半の方法は、揮発性のメモリ機器、例えばＲＡＭメモリと、不揮発性のメモリ機器、例えばフラッシュメモリとを有する技術的な機器に関する。ここで、不揮発性のメモリ機器内には、ファームウェアアップデートパケットが格納されており、このファームウェアアップデートパケットは、個々のファイル、プロトコル、スクリプトおよび属する第１のチェックサムを含んでいる。
【００１８】
後半の方法は、以下のステップを、記載された順番で実行する。
・まずは、技術的な機器の再起動を実行する。
・次に、インジケーターファイルが、不揮発性のメモリ機器内に存在しているか否かを検査する。
【００１９】
インジケーターファイルは、ファームウェアの個々のファイル、プロトコルおよびスクリプトが正しく、かつ、完全にダウンロードされており、誤り無くコピーされている、ということに対するインジケーターとして用いられる。インジケーターファイルの機能を以降で、より明確に記載する。
【００２０】
・インジケーターファイルが存在していない場合には、技術的な機器のファームウェアの始動（Ａｎｓｔａｒｔｅｎ）が行われる。技術的な機器は、既存のファームウェアもしくは既存のファームウェアファイルによって駆動される。この場合には、後半のアップデート方法は終了させられるだろう。
【００２１】
・しかし、インジケーターファイルが存在している場合には、ファームウェアアップデートパケットは、不揮発性のメモリ機器から揮発性のメモリ機器にコピーされる。インジケーターファイルは、ここで、ファームウェアアップデートパケットがダウンロードされており、アップデートが実行可能であることを示す。
・次に、ファームウェアアップデートパケット内に含まれている全てのファイルが、揮発性のメモリ機器においてアンパックされ、これらのファイルの属する第２のチェックサムが形成される。
・次に、コピーされたファームウェアアップデートパケットのファイルの第２のチェックサムと、元来のファームウェアアップデートパケットの第１のチェックサムとが相互に比較される。
【００２２】
・これらのファイルの第１のチェックサムと第２のチェックサムとが同一でない場合には、不揮発性のメモリ機器内のファームウェアアップデートパケットが消去される。同様に、この場合には、不揮発性のメモリ機器内のインジケーターファイルが消去される。これによって、技術的な機器の始動が、エラーを有しているもしくは損傷を有しているファームウェアによって行われないことが保証される。この場合には、始動は、以前のバージョン、すなわち古いファームウェアによって行われる。
【００２３】
・しかし、ファームウェアアップデートパケットのファイルのチェックサムと、コピーされたファームウェアアップデートパケットのチェックサムとが同一である場合には、揮発性のメモリ機器内に格納されているファームウェアアップデートパケットの全てのファイルが、不揮発性のメモリ機器にコピーされる。このステップでは、古いファームウェアファイル、古いプロトコルおよび古いスクリプトが新しいものと交換される。
・次に、コピープロセスが成功していたか否かがコントロールされる。これは通常、内部のエラープロトコルの読み出しを介して行われる。
【００２４】
・コピープロセスが成功していなかった場合には、ファームウェアのアップデートのためのこの方法が終了させられる。インジケーターファイル並びにファームウェアアップデートパケットは得られたままである。次の再起動の後、アップデートプロセスが繰り返される。択一的に、ここでカウンターも構築され得る。このカウンターは、ｎ回のコピーの試みの後に初めて、インジケーターファイルの消去並びにファームウェアアップデートパケットの消去によって、この方法を終了させる。
【００２５】
・しかし、コピープロセスが成功していた場合には、不揮発性のメモリ機器内のファームウェアアップデートパケットが消去される。なぜなら、これは、もはや不必要だからである。さらにこれは、メモリスペースの理由で有利である。さらに、不揮発性のメモリ機器内のインジケーターファイルが消去される。
・その後、技術的な機器の始動が、新たなファームウェアファイル、プロトコルおよびスクリプトによって行われる。
【００２６】
本発明の重要な構成部分は、ファームウェアアップデートパケット内に含まれているスクリプトファイルである。このスクリプトファイルは、以降で、インストールスクリプトとも称される。ファームウェアアップデートの実行が、コンピューターシステムから、このインストールスクリプトに譲られる。インストールスクリプトは、次に、以下のステップを実行する。
・ＲＡＭメモリ機器からフラッシュメモリ機器にファームウェアアップデートパケットをコピーする。
・ここで、ファームウェアアップデートパケットの第１のパケットの第２のチェックサムが算出され、既に得られている第１のチェックサムと比較される。
・第１のチェックサムと第２のチェックサムとが同一である場合には、これは、エラーの無い、ファームウェアファイルを示唆する。
・ここでインストールスクリプトは、ファームウェアファイルをＲＡＭメモリ機器にコピーし、これをインストールする。
・不必要な書き込みアクセスによって、フラッシュメモリに負荷を与えないために、ファームウェアファイルは、既にインストールされているファームウェアファイルの事前に算出されたチェックサムが、インストールされるべきファームウェアファイルの算出されたチェックサムと同一でない場合にのみコピーされる。
【００２７】
上述したアップデート方法の重要な本発明のアイディアは、インストールされるべきファームウェアファイルだけでなく、インストールスクリプトも、コンピューターシステムにロードされる、ということである。これによって、損傷を有しているファームウェアアップデートパケットによって技術的な機器が故障してしまうことが無いということが、高い程度で保証される。
【００２８】
本発明の実施例を図示し、以下でより詳細に説明する。
【図面の簡単な説明】
【００２９】
【図１】技術的な機器のファームウェアのアップデートの準備のための前半の方法のフローチャート
【図２】技術的な機器のファームウェアのアップデートのための後半の方法のフローチャート
【発明を実施するための形態】
【００３０】
図面は、部分的に簡素化された、概略図を含んでいる。部分的に、同じ要素であるが、場合によっては同一でない要素に、同一の参照番号が用いられる。同じ要素の異なった図が異なってスケーリングされていることがある。
【００３１】
図１の、前半の方法は、技術的な機器に組み込まれているコンピューターシステムのファームウェアのアップデートの準備のために用いられる。技術的な機器には、揮発性のメモリ機器、例えばＲＡＭメモリと、不揮発性のメモリ機器、例えばフラッシュメモリとが装備されている。この方法は、以下のステップを、記載された順番で行う。
・ファームウェアアップデートの開始（Ａ）は例えば、いわゆるコマンドによって、例えばコンソールを介して準備される。ファームウェアは、例えば、特定のフォルダを、新たなアップデートがあるか否かに関して監視する。
・次に、ファームウェアアップデートパケットが、揮発性のメモリ機器にダウンロードされる（Ｂ）。このファームウェアアップデートパケットは、例えば、ＵＳＢスティックに格納されていてよく、技術的な機器に、ＵＳＢインタフェースを介して供給され得る。
・次に、ファームウェアアップデートパケットが、不揮発性のメモリ機器にコピーされる（Ｃ）。
・次に、インジケーターファイルが、不揮発性のメモリ機器において生成される（Ｄ）。インジケーターファイルの機能については、以降で詳細に説明する。
・最後に、技術的な機器から、技術的な機器の再起動を実行させるという内容を有している要求がユーザーに出力される（Ｅ）。
・最後に、コンピューターシステムの再起動、いわゆるリブートが行われる（Ｆ）。これによって前半の方法が終了する。
【００３２】
図２には、コンピューターシステムのファームウェアの元来のアップデートのための、後半の方法のフローチャートが示されている。この方法は、以下のステップを、記載された順番で行う。
・まずは、技術的な機器が再起動される（Ｇ）。例えば、このためには、事前に、コンピューターシステムによって、ユーザーへの「再起動」の要求が行われ得る。
・次に、コンピューターシステムが立ち上げられる（Ｈ）。
・これに続いて、インジケーターファイルが不揮発性のメモリ機器内に存在するか否かが検査される（Ｉ）。
・インジケーターファイルが存在していない場合には、コンピューターシステムもしくは技術的な機器が、ファームウェアもしくは相応するファイル、プロトコルおよびスクリプトの助けを借りて、起動される。これは、ファームウェアの始動とも称される（Ｊ）。この場合には、後半の方法が終了されるだろう。
【００３３】
・一方、インジケーターファイルが存在している場合には、ファームウェアアップデートパケットは、不揮発性のメモリ機器（ＦＬＡＳＨ）から、揮発性のメモリ機器（ＲＡＭ）にコピーされる（Ｋ）。
【００３４】
・次に、ファームウェアアップデートパケット内に含まれている全てのファイルが、揮発性のメモリ機器においてアンパックされる（Ｌ）。
・その後、アンパックされたファイルの、属する第２のチェックサムが形成され、次に、ファームウェアアップデートパケットのファイルの第１のチェックサムと、コピーされたファームウェアアップデートパケットの第２のチェックサムと、が比較される（Ｍ）。
・これらのチェックサムの比較によって、先行するコピープロセスが成功していたか否かが検査される（Ｎ）。
・ファームウェアアップデートパケットのファイルの第１のチェックサムと、コピーされたファームウェアアップデートパケットの第２のチェックサムと、が同一でない場合には、不揮発性のメモリ機器内のファームウェアアップデートパケットが消去される（Ｏ）。
・次に、不揮発性のメモリ機器内のインジケーターファイルも消去される（Ｐ）。
・その後、技術的な機器のファームウェアの始動が行われる（Ｑ）。この場合には、後半の方法が終了されるだろう。
【００３５】
・ファームウェアアップデートパケットのファイルのチェックサムとコピーされたファームウェアアップデートパケットのチェックサムとが同一である場合には（Ｒ）、
・揮発性のメモリ機器内に格納されているファームウェアアップデートパケットの全てのファイルが、不揮発性のメモリ機器にコピーされる（Ｒ）。
・その後、このコピープロセスが成功していたか否かがコントロールされる（Ｓ）。
・このコピープロセスが成功していた場合には、不揮発性のメモリ内のファームウェアアップデートパケットが消去される（Ｏ）。ここで、複数のステップが、フローチャートにおいて、再び合流する。
・次に、不揮発性のメモリ内のインジケーターファイルが消去される（Ｐ）。
・その後、技術的な機器のファームウェアの始動が行われる。これによって、後半の方法が終了する。
【００３６】
・ファイルのコピープロセスが成功していなかった場合には、技術的な機器のユーザーは、技術的な機器の再起動を実行するように要求される（Ｔ）。この方法は、場合によっては、再び、始めから、ステップ（Ｇ）で始まることが可能である。
【図１】
2017534136.tif 000003
【図２】
2017534136.tif 000004
【国際調査報告】
2017534136.tif 000005
2017534136.tif 000006
2017534136.tif 000007
2017534136.tif 000008
2017534136.tif 000009
2017534136.tif 000010