JP2004535637A - ソフトウェアモジュールの転送方法 - Google Patents
ソフトウェアモジュールの転送方法 Download PDFInfo
- Publication number
- JP2004535637A JP2004535637A JP2003509310A JP2003509310A JP2004535637A JP 2004535637 A JP2004535637 A JP 2004535637A JP 2003509310 A JP2003509310 A JP 2003509310A JP 2003509310 A JP2003509310 A JP 2003509310A JP 2004535637 A JP2004535637 A JP 2004535637A
- Authority
- JP
- Japan
- Prior art keywords
- software module
- software
- target unit
- storage device
- approval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/64—Retargetable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- 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/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
Abstract
本発明は、搬送手段であることが好ましい移動装置上に配置された、ターゲット装置のためのソフトウェアモジュールを転送する方法に関する。どのソフトウェアモジュールが、移動装置上に位置するどのタイプのターゲット装置に対して公開されるかについての情報が、例えばCDなどの移動記憶装置上に記憶される。この情報は、転送前に、移動装置の構成と比較される。従って、この方法は、より高いプロセスセキュリティを提供する。この方法は、移動装置と、中央構成管理システムまたはドキュメンテーションシステムとの間の接続が、存在する場合と存在しない場合との両方において、転送のために実施できる。
Description
【技術分野】
【0001】
本発明は、ターゲット装置内に装備されたターゲットユニット用のソフトウェアモジュールを転送する方法に関する。前記ターゲット装置は、移動装置であり、好ましくは、車両または搬送手段である。
【背景技術】
【0002】
移動装置、特に自動車では、ドア制御ユニットなど、ソフトウェアモジュールにより制御されるユニットがますます多く使用されるようになっている。電子ナビゲーションシステムや音声出力用システムなどの、一部のユニットには、大規模なデータライブラリが必要である。移動装置を、ユーザやオペレータからの個々の要求と要望に合わせるために、多数のさまざまに変形されたターゲットユニットがしばしば製造および装備されており、ときには後で製造および装備されることもある。変形の組み合わせにより、移動装置の一種に属する、移動装置に搭載されるターゲットユニットについて、多数の異なる構成がもたらされる。それにもかかわらず、移動装置の製造業者は、自社が承認したすべての組み合わせにおいて、それらのターゲットユニットが動作中に確実に相互作用することを保証しなければならない。
【0003】
「ソフトウェアモジュール」は、特に、移動装置上で実行されるプログラムまたはプログラムの一部、およびそのようなプログラム用のデータまたはユニット用のデータを表す。「ターゲットユニット」は、ソフトウェアモジュールが転送されることを要する移動装置上のユニットであり、これらのユニットには、特に、データ処理ユニットが含まれる。
【0004】
ソフトウェアモジュールを移動装置に後で転送する目的で、前記ターゲットユニットを整備工場などで取り外して、必要なソフトウェアモジュールをそれらのターゲットユニットに提供し、その後、それらのターゲットユニットを再び装備することは、現在でもまだ通例となっている。場合によっては、ターゲットユニットを記製造業者に送り、この製造業者が一箇所でまとめてソフトウェアモジュールを転送しなければならないこともある。これらの方法は高価であり、また、多くの時間を必要とする。
【0005】
車両上のナビゲーションシステム用のデータをCDからインストールする方法は公知である。ボッシュ/ブラウプンクト(Bosch/Blaupunkt)社のトラベルパイロット(TravelPilot)というシステムの場合、自動車の運転者は、整備工場を訪れる。この整備工場で、カーラジオと相互作用するナビゲーションシステム用のデータがCDから読み込まれる。一部のナビゲーションシステムは、走行中に、つまり自動車で移動中に、CDからデジタルマップを読み込む。これらのシステムおよび方法はすべて、1つの所定の製造業者によるターゲットユニットに合わせた仕様となっている。他の製造業者によるターゲットユニット用のソフトウェアモジュールをインストールする必要がある場合には、この方法をどのように適用できるかについての開示がない。あるのは、この方法を複数回、すなわち製造業者につき1回、またはユニットにつき1回適用する方法のみである。正しいソフトウェアモジュールのみが転送され、他のソフトウェアモジュールは転送されないことを保証する方法はない。ここで、「正しい」ソフトウェアモジュールとは、前記車両内に実際に存在しているターゲットユニットの組み合わせに対して承認されたソフトウェアモジュールを表す。特に、一つの製造業者による一つのソフトウェアモジュールが、前記移動装置に実際に搭載されているユニットの全体構成に、許可されない影響を及ぼすのを防止することは不可能である。
【0006】
請求項1の前文に従った方法は特許文献1により公知である。特許文献1は特許文献2のドイツ語訳である。特許文献1の目的は、中央遠隔サービスシステムにより、顧客システムにおいてオンライン問題を解決することである。
【0007】
問題管理データベースは、サービス要求を探索引数として受け取り、不具合処理のための解決方法を提供する。この問題管理データベースは、探索引数の形式によるさまざまな構成要素および症状を、出力データとしての問題解決と相互に結び付けるエントリを含む。前記問題管理データベースは、3つの独立したユニット、すなわち、ハードウェア構成要素のためのエントリを有する症状例外テーブル、仮プログラム修正を有するソフトウェア構成要素のためのAPARテーブル、およびマイクロコードの修正を有するMTARテーブルを含むことが好ましい。前記探索引数は、交換可能な構成要素(「フィールド交換可能ユニット」(field replaceable units)、FRU)を識別し、問題解決方法の番号および出口点を識別する、参照キーとしてフォーマットされた症状の結果であることが好ましい。例えば、前記症状の結果は、最も可能性の高い2つのエラーを含む。
【0008】
特許文献1の問題管理データベースでは、探索引数として明らかにされる症状、および問題検出方法からの出口点を要求する。サービス要求は、所定の顧客システムと前記問題検出方法の結果とを識別する。前記問題管理データベースでは、その出力データが問題の解決方法を規定するように構築されている。
【0009】
前記問題管理データベースは必然的に複雑なものであり、その評価にはある程度の計算時間を要する。この理由は、構成要素は一般に複数のエラーにより中断させられる場合があり、また、1つの構成要素でのエラーにより他の構成要素にもエラーが発生する場合があるためである。これは、考慮に入れるべき症状の数は、存在する構成要素の数よりも通常ははるかに多いということを意味している。
【0010】
特許文献1では、ソフトウェアモジュールの転送の前に、ターゲット装置の構成データへのアクセスが実行される。障害時のハードウェアおよびソフトウェア構成要素の構成が、この手段により取得される。これらの構成データは、資源マネージャシステムにより、好ましくはテーブル内で管理される。移動装置では多くの場合、搭載されている記憶容量の不足などにより、そのようなテーブルを搭載および管理して最新に保つことは不可能であり、可能にしてもある程度の複雑さが伴う。特に、移動装置の場合、移動装置のユーザまたはオペレータがターゲットユニットを交換し、または追加したという理由により、テーブルの構成がターゲット装置の実際の構成に一致しないという危険もある。そのようなオペレータまたはユーザは、一般に、データ処理の専門家ではなく、例えば自動車の運転者などである。従って、構成テーブルが常に移動装置の現在の構成を含むと想定することはできない。
【0011】
特許文献3は、操作データを車両構成要素にプログラミングするための方法および装置を開示している。このデータは、制御センターから、自動車などの要求側ステーションに送られる。制御センターは、車両構成要素に関連する個々のコードを使用して、このデータをコード化する。このデータは、車両構成要素そのものに入るまで復号されない。これにより、このデータは不正アクセスから保護される。1つの改良に従えば、車両、車両構成要素、および要求側システムのユーザの識別に関する情報が、制御センターに送信され、そこで要求の許可が確認される。
【0012】
特許文献4は、プログラムおよび/またはデータを取り込むための方法を開示している。プログラムおよび/またはデータは、供給業者のサーバからダウンロードされる。その場合、無線リンクが、ターゲットユニットとサーバとの間でセットアップされ、アクセス許可の確認に成功すれば引き続いてプログラムまたはデータを転送するために使用される。この方法では、送受信装置が車両に搭載されている必要がある。ソフトウェアモジュールがより大規模な場合、多くの時間が必要とされる。転送時間は、無線リンクの帯域幅に依存する。転送リンクが大容量のデータにより過負荷になった場合または中断された場合、予期しない転送時間の増加が発生する。
【0013】
特許文献5は、自動車内の情報の表示、編集、および記憶のための装置を開示している。この装置は、プログラム及びデータの不揮発性記憶のための大容量記憶装置と、情報を受信するためのインタフェースと、オペレータ制御ユニットと、表示ユニットと、オペレーティングシステムとを具備し、このオペレーティングシステム上でプログラムを実行することができる。この発明による装置は、搭載されているユニットの機能を柔軟に調整および拡張することができる。1つの改良では、この装置はCDプレーヤーを含む。さらに、この装置は、許可されていないデータ入力を防止する手段、および承認識別子を使用した許可に基づいて入力データを提供する手段を含むこともできる。そのような承認識別子は、例えば、記憶されたコードを使用して確認できる。この装置は、ソフトウェアモジュールが、所定のユーザに対して、または所定の車両に対して承認されているかどうかを確認することができる。
【0014】
特許文献6による制御装置は、コンピュータを使用したシステムマネージャと、メモリと、ユーザの識別装置とを含む。識別装置には、チップカードなどの可搬型の記録媒体を読み出し、この記録媒体が正当かつ適切に使用されているかどうかを検査する読み出しユニットが含まれている。検査の結果に問題がない場合のみ、メモリに記憶されたプログラムが実行される。ユーザは、制御ユニットの仕様を選択することもでき、その仕様は記録媒体に記憶される。これにより、所定の制御ユニットの応答を、許可された所定のユーザに合わせて調整ことができる。
【0015】
特許文献7は、車両に搭載される、2つの論理ユニットを備えたコンピュータシステムを開示している。2つの論理ユニット間では、データを交換することができ、交換されるデータの1つのビットは、検査ビットとして、車両に転送される残りのデータが有効かどうかを示す。この文献では、車両に搭載されたメモリへのソフトウェアモジュールのインストール方法、およびデータが正しく、つまり転送エラーなしに転送されたかどうかを確認する方法を開示している。
【0016】
前述の刊行文献は、ソフトウェアモジュールを移動装置に転送するための方法、およびその転送の際に、許可および承認の確認を必要に応じて実行するための方法を開示するものである。この確認は、それぞれが1つの移動装置に関連している。しかし、この方法では、多くの変形を有する移動装置にソフトウェアモジュールを転送する必要があるという可能性が考慮に入れられていない。例えば、さまざまなターゲットユニットが装備された移動装置の一種の種々の例示により、またはさまざまなバージョンで使用されるターゲットユニットにより、広範な変形が生じる。この広範な変形により、適切に用いて定義しかつ有効にすることが不可能である、膨大な数の異なる確認が必要となる場合がある。。その上、移動装置のユーザまたはオペレータは、前記移動装置の製造業者に通知せずに、ターゲットユニットの交換または後の追加を行う可能性があり、製造業者は先行技術に基づく承認確認の際にこれを考慮に入れることができない、という事実も考慮に入れられていない。しかし、各移動装置に正しいソフトウェアモジュールが転送されることを保証するには、広範な変種および後の変更を考慮に入れる必要がある。
【0017】
【特許文献1】
独国特許公表第68920462 T2号明細書
【特許文献2】
欧州特許出願公告第333620 B1号明細書
【特許文献3】
独国特許発明第19532067 C1号明細書
【特許文献4】
独国特許出願公開第19750372 A1号明細書
【特許文献5】
独国特許出願公開第4218804 A1号明細書
【特許文献6】
欧州特許出願公告第392411 B2号明細書
【特許文献7】
米国特許第6,009,363号明細書
【発明の開示】
【発明が解決しようとする課題】
【0018】
本発明は、請求項1の前文に従った方法を提供するという目的に基づく。前記方法により、さまざまな製造業者によるターゲットユニットを備えたターゲット装置の、豊富な変形を有する種類が存在する場合でも、また、個々のターゲット装置の後の変更の可能性を考慮に入れる必要があり、制御センターがその変更に関する情報を有さない場合でも、正しいソフトウェアモジュールのみが転送され、それ以外のソフトウェアモジュールは転送されないことが保証される。また、本発明は、前記方法を実行する装置を提供することも目的としている。
【課題を解決するための手段】
【0019】
この目的は、請求項1に従った方法により、および請求項12に従った装置により実現される。有利な改良は、従属請求項で記載されている。
【0020】
請求項1に従った方法は、ターゲットユニットのためのソフトウェアモジュールを転送する。ターゲットユニットは、移動装置の中に、特に、車両または搬送手段の中に装備されている。ソフトウェアモジュールは、CDなどの移動記憶装置内に記憶されている。移動記憶装置と移動装置との間のデータリンクは、例えば、移動装置内に装備されたCDの読み取り装置を、データバスを介してターゲットユニットに接続することにより、少なくとも一時的にセットアップされる。このデータリンクは、ソフトウェアモジュールの転送を目的としている。どのソフトウェアモジュールが移動装置に対して承認されているかを判定するための確認が実行される。
【0021】
2種類のタイプの識別子が規定される。第1に、ユニットタイプの識別子がターゲットユニットについて規定され、第2に、ソフトウェアタイプの識別子がソフトウェアモジュールについて規定される。前記ユニットタイプの識別子およびソフトウェアタイプの識別子は、記憶されているソフトウェアモジュールのうちのどれが、どのタイプのターゲットユニットに対して承認されているかを規定するために使用される。ソフトウェアモジュールがターゲットユニットのタイプに対して承認されるのは、少なくとも、そのソフトウェアモジュールが、そのタイプの任意のターゲットユニット上で実行できる場合である。これらの承認規定は、例えば、移動記憶装置上に記憶される。
【0022】
また、本発明による方法は、転送時に実際に装備されている、確認されるべき少なくとも1つのターゲットユニットのタイプも規定する。少なくとも1つのソフトウェアモジュールについて、確認が実行され、そのソフトウェアモジュールが、実際に装備されているターゲットユニットのタイプに対して承認されているかどうかが判定される。承認されていると認識されたソフトウェアモジュールは、移動装置に転送される。それらのソフトウェアモジュールは、移動装置上に記憶されることが好ましく、例えば、個々のターゲットユニット内の上書き可能な記憶装置内や、ターゲットユニットに搭載された中央記憶装置内などに記憶される。
【0023】
この方法は、少数の変形を含む移動装置の種類に対しても、多数の変形を含む移動装置の種類に対するのと同じ方法で適用できる。特に、移動装置が、異なる製造業者による複数のターゲットユニットを含む場合でも、そして、それらのターゲットユニットには異なるバージョンが存在し、これらの異なるバージョンが異なるソフトウェアモジュールを必要とする場合でも、正しいソフトウェアモジュールが確実に選択されて転送され、それ以外のソフトウェアモジュールは選択も転送もされない。その承認規定は、個々の移動装置についてではなく、ターゲットユニットのタイプおよびソフトウェアモジュールについて作成される。従って、承認規定は、移動装置の実際に存在する構成には依存しない。
【0024】
同じ移動記憶装置に、さまざまな製造業者によるターゲットユニットについてのソフトウェアモジュール、および、ターゲットユニットのさまざまなバージョンについてのソフトウェアモジュールを記憶できる。このことは、多数の変形が存在する場合でも、その移動記憶装置が、移動装置のうちの一つの種類における任意の例示に対して変更または調整されることなく、使用できるということを意味する。
【0025】
移動装置のユーザまたはオペレータが、ターゲットユニットを後に別の種類に交換した場合、またはさらなるターゲットユニットを後に追加した場合、またはターゲットユニットを削除した場合でも、正しいソフトウェアモジュールが選択され、転送される。これは特に、どのタイプのターゲットユニットが実際に移動装置内に存在しているかを、転送時に確認することにより実現される。それにより、中央データベース内で移動装置の構成を確認する必要はなくなる。そのような中央データベースのエントリは古くなっている可能性がある。その理由は、例えば、ターゲットユニットが他の種類に交換されたり、追加または削除されたりしても、関連するエントリはそれに合わせて更新されないためである。
【0026】
本発明は、ソフトウェアモジュールが中央サーバから移動装置に、転送時まで送信されていない場合よりもはるかに迅速に、ソフトウェアモジュールを移動装置に転送するために使用できる。例えば、CD−ROMを移動記憶装置として使用する場合、等倍速の読み出しでもデータ転送速度170Kバイト/秒が実現される。可能なさらなる移動記憶装置として、DVDを使用すれば、500Kバイト/秒およびそれ以上の読み出しも可能となる。その上、この方法は、制御センターから移動装置への直接的な転送よりもはるかに障害が発生しにくい。転送に必要な時間は、移動記憶装置から移動装置へのデータ転送レートを知るだけで実際に予測することができる。
【0027】
この方法は、種々の適用例に対して、さまざまに改良して使用することができる。以下にその例を示す。
【0028】
ある製造業者は1つのタイプの車両を何百も生産しており、各車両には所定の1つのタイプのターゲットユニットが装備されている。車両が販売業者に引き渡される直前まで、ソフトウェアモジュールは作成されておらず、このタイプのターゲットユニットに対して承認されていない。本発明による方法は、これらのソフトウェアモジュールが、引き渡しの「直前」に、ターゲットユニットを取り外す必要も、中央サーバなどへのデータリンクをセットアップする必要もなしに、迅速に転送されることを可能にする。ソフトウェアモジュールの転送は、例えばロボットに基づいて、このソフトウェアモジュールと承認規定を含むCDとを車両に搭載された読み取りユニット内に配置し、転送動作を開始し、転送が完了したら再びCDを取り外すことにより、自動化することができる。
【0029】
一つの種類の車両の引き渡し後に、新しいソフトウェアモジュールが作成され、所定のタイプのターゲットユニットに対して承認される。このタイプのターゲットユニットは車両の多数の事例におけるさまざまな変形が、インストールされており、種々のソフトウェアモジュールがそれらの変形に対して承認されている。インストールされているすべてのターゲットユニットには、例えば新しい法律規定を満足するために、それぞれに対して承認されたソフトウェアモジュールを提供しなければならない。この目的のために、整備工場、および/または車両製造業者のさらなるサービスパートナーには、本発明に従って、ターゲットユニットのすべての変形についてのソフトウェアモジュールを記憶したそれぞれのデータ記憶媒体が提供される。対象となっている車両のユーザは、それらの整備工場のいずれかを訪れるよう求められる。本発明の方法により、正しいソフトウェアモジュールが転送され、所定の車両内のターゲットユニットに対して承認されていないソフトウェアモジュールが転送される可能性はなくなる。制御センターへのデータリンクが前記転送のためにセットアップされることはないため、転送に要する時間は短く、また、長距離にわたるデータネットワークの利用に転送は依存しない。
【0030】
転送に続いて、整備工場では、この転送が正常に完了したかどうかを確認するために、機能テストを実行することが好ましい。中央構成管理システムまたはドキュメンテーションシステムは、転送後に、この車両上にどのソフトウェアモジュールが存在するかを示すレポートを受け取る。これにより、車両製造業者は、製品マニュアルに記載されている要求に従う。
【0031】
1つのタイプのターゲットユニットについて、所定の機能を有するものと有さないものという2つの変形が提供される。この2つのタイプの違いは、ソフトウェアモジュールのみに基づくものである。この手引きにより、ターゲットユニットにある変形の多様性は減少する。追加の機能は、これらのソフトウェアモジュールを車両に転送することによって提供される。本発明の方法により、車両製造業者は車両の所有者に、使用の開始時またはその後の任意の時点で追加機能を導入するという選択肢を提供できるようになる。これは、所有者が、ソフトウェアモジュールを有するデータ記憶媒体を取得し、そのデータ記憶媒体を車両に一時的に接続することにより行われる。本発明による方法は、車両を整備工場に持って行く必要も、ターゲットユニットを取り外す必要もなしに、ソフトウェアモジュールを転送し、それにより追加機能を導入する。
【0032】
車両には、メッセージおよび情報を自然言語で音読することにより前記運転者に出力する、音声出力のためのシステムが装備されている。前記運転者は、使用する言語を選択する。前記運転者は、多数の異なる言語を選択できるため、また、自然言語を音読するために必要なデータは大量のストレージ容量を占有するため、提供されるすべての言語の音声データを車両内に永続的に記憶するのは経済的ではない。本発明による方法の1つの改良に従って、前記ソフトウェアモジュール、特に、提供されるすべての言語の音声データおよびプログラムは、1つのデータ記憶媒体に記憶される。言語の選択に続いて、この言語による出力に必要なソフトウェアモジュールが前記車両に転送される。各言語について独立したデータ記憶媒体を維持する必要はなく、また、選択された言語以外の言語のデータまたはプログラムを転送する必要もない。車両の所有者や運転者が変更されたなどの理由により、異なる言語での出力が必要になった場合は、整備工場を訪れる必要なしに、この方法を何度でも繰り返すことができる。運転者の頻繁な変更は、特に、自動車レンタル会社により時間単位または1日単位で賃貸される車両の場合、または運送会社に属する商業用車両の場合に生じる。
【0033】
同様の改良を、音声入力用のシステムに必要なソフトウェアモジュールの転送に使用できる。そのようなシステムは、前記車両に搭載されているユニットを制御するために、前記運転者またはサービスエンジニアからの自然言語で話されたコマンドを認識する。
【0034】
前記ソフトウェアモジュールが記憶される前記移動記憶装置は、
−少なくとも1枚のCD、
−および/または、元来MP3データ用に開発された3.5インチのデータ記憶媒体である、少なくとも1枚のミニディスク、
−および/または、少なくとも1枚のDVD、
−および/または、少なくとも1つのフラッシュメモリスティック、を含むことが好ましい。
【0035】
前記ソフトウェアモジュールの記憶の完了に続いて、前記移動記憶装置の一部であるCDは、ISO−9660媒体として完成されることが好ましい。
【0036】
他の改良では、前記移動記憶装置はポータブルコンピュータの一部であり、前記コンピュータ内のハードディスク、または前記コンピュータ内のCDドライブの中に配置されるCDであることが好ましい。このポータブルコンピュータは、例えばデータ転送を目的とした市販のパラレルケーブルを使用して、少なくとも一時的に、前記制御装置に接続される。
【0037】
好ましくは、タイプ識別子は、品番とバージョン番号を含む。1つのタイプの各バージョンは、すべて同じ機能を実行し、また、相互に交換することができ、特に、上位互換性および下方への互換性がある。
【0038】
請求項2に従った改良により、ソフトウェアモジュールを、異なるターゲットユニットを有する複数の移動装置に転送することが可能になる。例えば、一部のターゲットユニットは、これらの移動装置のうちいくつかの中にのみ存在し、また、さまざまな移動装置に、種々のタイプのターゲットユニットが装備されている。それにもかかわらず、これらの移動装置のそれぞれに対して、同じ移動記憶装置または複数の類似の移動記憶装置が使用される。例えば、移動記憶装置のコピーが、存在する移動装置の数と同じ数だけ作成される。前記承認規定の評価により、構成が異なるにもかかわらず、各移動装置に正しいソフトウェアモジュールが転送されることが保証される。
【0039】
さまざまな製造業者によるターゲットユニットのためのソフトウェアモジュールを、前記移動記憶装置上に効率よく記憶するために、所定の製造業者のための記憶領域が予約されることが有利である。請求項3に従って、ターゲットユニットの少なくとも2つの製造業者のために、それぞれの記憶領域が、この製造業者によるターゲットユニット用のソフトウェアモジュールのための移動記憶装置上に予約される。
【0040】
さまざまな製造業者によるターゲットユニットのためのソフトウェアモジュールが、それらのソフトウェアモジュールのための承認規定とともに、同じ移動記憶装置上に記憶されることが有利である。請求項3に従って、
−第1の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第1の位置に記憶され、
−第2の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第2の位置に記憶され、
−第1の製造業者によるターゲットユニットのためのソフトウェアモジュールについての承認規定は、第2の製造業者によるターゲットユニットのためのソフトウェアモジュールについての承認規定と組み合わされ、
−組み合わされた前記承認規定は前記移動記憶装置上に記憶される。
【0041】
前記承認規定は、自動的に組み合わされるようにすることができる。第1の製造業者による承認規定は、第2の製造業者による承認規定と同じ構文を有することが好ましい。
【0042】
前記承認規定は、例えば、ASCIIフォーマット、またはバイナリフォーマットにより、あるいは好ましくは、拡張可能なマーク付け言語(XML)を使用して記憶される。
【0043】
前記承認規定は、移動記憶装置上に記憶されることが好ましい(請求項4)。それにより、転送時の承認確認のために、さらなる方法ステップなしに、それらの承認規定を使用できるようになる。前記移動記憶装置は、少なくとも1つのソフトウェアモジュールについて、前記移動記憶装置上の前記ソフトウェアモジュールが記憶されている位置についての情報を記憶することが好ましい。例えば、前記位置情報は、前記ソフトウェアモジュールのパスを含み、また、前記ソフトウェアモジュールの各ファイルについて、前記パスに相対的なサブパスを含む。その上、ソフトウェアモジュールがターゲットユニットに記憶される際の、このターゲットユニットタイプの記憶領域の開始アドレスが、前記移動記憶装置上に記憶されることが、特に好ましい。
【0044】
前記承認規定を前記移動記憶装置上に記憶することの1つの代替方法としては、前記承認規定を構成管理システム内またはドキュメンテーションシステム内に記憶することである(請求項5)。前記ソフトウェアモジュールの転送は、制御装置により制御される。前記承認規定は、前記構成管理システムまたは前記ドキュメンテーションシステムから前記制御装置に送信される。この改良が有する利点は、前記ソフトウェアモジュールの転送の開始時まで、すなわち、例えば前記移動記憶装置が整備工場に配布された後になるまで、前記承認規定は作成される必要がないということである。
【0045】
1つの実施形態では、ソフトウェアモジュールはターゲットユニットタイプに対して、すべての状況下において、つまり、どのようなさらなるターゲットユニットが前記移動装置内に装備されているかに関係なく、承認される。ただし、搭載されているターゲットユニットは、相互に影響を及ぼす場合がある。この理由により、他の実施形態では、承認が条件に結び付けられる。条件が満足された場合のみ、前記ソフトウェアモジュールは前記移動装置に対して承認される。請求項6に従う承認規定は、ソフトウェアウェアモジュールを承認するための少なくとも1つの条件を含む。このソフトウェアモジュールのための承認確認には、前記承認条件の有効性の確認が含まれる。
【0046】
そのような承認条件には、好ましくは、所定のターゲットユニットタイプ、および/または所定のソフトウェアモジュールが、前記移動装置上に存在すること、および/または存在しないことが含まれる。例えば、あるソフトウェアモジュールがターゲットユニットタイプAに対して承認されるのは、前記移動装置上にタイプBのターゲットユニットが装備され、タイプCのターゲットユニットは装備されていない場合のみである。承認条件は、ユニットタイプ識別子および/またはソフトウェアタイプ識別子を含むブール式であることが好ましい。承認条件は、例えば、テーブルまたはデータベースの形式で記憶される。
【0047】
承認規定の1つの実施形態は、ソフトウェアモジュールに対して規定される実際のインタフェース仕様を含み、また、ターゲットユニットタイプによりどのような希望のインタフェース仕様が期待されるかの規定も含む。ソフトウェアモジュールに対しては、1つ以上の実際のインタフェース仕様が規定され、ターゲットユニットタイプに対しては、1つ以上の希望のインタフェース仕様が規定される。実際のインタフェース仕様が、希望のインタフェース仕様と互換性がある場合のみ、前記ソフトウェアモジュールは前記ターゲットユニットタイプに対して承認される。好ましくは、ソフトウェアタイプ識別子とユニットタイプ識別子を使用した承認規定が、実際のインタフェース仕様と希望のインタフェース仕様を使用した承認規定と組み合わされる。
【0048】
インタフェース仕様は、例えば、プログラミング言語C、C++、およびPASCALにおける「プロシージャ宣言」および「メソッド宣言」という名称により、また、JAVAにおける「インタフェース」という名称により公知である。希望のインタフェース仕様の簡単な例は、前記ターゲットユニットタイプが「ソート」と呼ばれる関数を当てにしていることを述べるものである。この関数は、自然数nと、n個の整数を有するベクトルを入力変数として有し、出力変数として、入力ベクトルのn個の整数が昇順でソートされたベクトルを有するものである。前記インタフェース仕様は、どのソート方式が適用されるかは規定しない。実際のインタフェース仕様は、n個の実数を有するベクトルがソートされるものであり、この希望の仕様と互換性を有する。インタフェース仕様のさらなる例は、TCP/IPスタックの仕様、および、オーディオまたはビデオチャネルなどの転送チャネルのための関数の仕様である。これらの関数は、転送チャネルへの接続をセットアップし、その接続を開き、データ転送を実行して、その接続を再び閉じる。このインタフェース仕様は、転送方式の種類により異なる場合がある。
【0049】
承認規定のさらなる実施形態は、例えば前記ソフトウェアモジュールの承認が開始される日付などの、最も早い承認時刻に基づくものである。ソフトウェアモジュールに対して、このソフトウェアモジュールが承認される日付に関する規定が存在する。前記承認確認には、前記最も早い承認時刻と、前記ソフトウェアモジュールが移動装置に転送される時刻との比較が含まれる。前記転送時刻が、前記最も早い承認時刻と同じか、それよりも遅い場合に限り、前記ソフトウェアモジュールは承認されたものと評価される。前記時刻の比較に続いて、ソフトウェアタイプおよびユニットタイプ識別子を使用した前記承認規定の評価が行われるようにするのが好ましい。この理由は、時刻の比較に要する計算時間は、承認確認に要する計算時間よりも少ないためである。
【0050】
本発明による方法の1つの改良では、前記移動装置上の各ソフトウェアモジュールについて承認確認が実行され、承認が認識された各ソフトウェアモジュールが転送される。これとは対照的に、請求項7に従った改良では、規定されるソフトウェアモジュールの組を準備する。この組の中のソフトウェアモジュールのみが転送を考慮され、その他のソフトウェアモジュールは、承認されていても転送されない。この組の中の各ソフトウェアモジュールについて、承認確認が実行される。この組の中の、承認が認識された各ソフトウェアモジュールは、前記移動記憶装置から前記移動装置に転送される。これは、さまざまなソフトウェアモジュールを転送するために、同じ移動記憶装置または複数の類似の記憶装置を使用することが可能であることを意味する。このためには、それぞれの新しい組を規定する必要があるだけである。
【0051】
例えば、前記組は、前記移動記憶装置上で識別される所定のソフトウェアモジュールに基づいて規定される(請求項8)。識別されたすべてのソフトウェアモジュールが、前記組に属する。前記識別は、例えば、識別されるべきソフトウェアモジュールのソフトウェアタイプ識別子をリストにすることにより行われる。
【0052】
他の実施形態では、前記組は、構成管理システムまたはドキュメンテーションシステムの中で識別される所定のソフトウェアモジュールに基づいて規定される(請求項9)。前記転送は、制御装置により制御される。どのソフトウェアモジュールが前記組に属するかについての情報は、前記構成管理システムまたは前記ドキュメンテーションシステムから、前記制御装置に送られる。例えば、ソフトウェアタイプ識別子の組が、前記制御装置に送られる。この改良により、前記転送の直前に前記組を規定することが可能になる。
【0053】
請求項7〜9のいずれか一項に従った改良は、特に、少なくとも1つのターゲットユニットが、前記移動装置に搭載されている音声入力または音声出力システムの一部である場合に有利である。この場合、前記移動記憶装置は、さまざまな言語のためのソフトウェアモジュールを記憶する(請求項10)。前記組は、選択される言語に基づいて規定される。前記移動記憶装置は、どのソフトウェアモジュールがどの言語に属するかに関する規定を記憶することが好ましい。例えば、各言語について、ソフトウェアタイプ識別子の組がリストにされる。
【0054】
前記移動記憶装置への記憶後や、転送後などにおける、ソフトウェアモジュールの破壊や不正操作を防止するため、または、許可なしに作成されたコピーの使用を防止するために、正当性の検査が実行される。これには、少なくとも1つのソフトウェアモジュールに対する署名を作成して、前記移動記憶装置上に記憶することが含まれる。前記署名は、好ましくは、前記ソフトウェアモジュールをデータストリームとして処理し、ハッシュ値を生成することにより作成される。このハッシュ値から前記署名を作成するには、秘密鍵が使用される。従って、前記署名は、前記ソフトウェアモジュールおよび前記秘密鍵に依存する。
【0055】
その上、少なくとも1つのターゲットユニットタイプについて、公開鍵が、前記移動装置上に記憶される。この公開鍵は、前記署名を検査するために使用される。前記検査の結果に問題がない場合のみ、前記ソフトウェアモジュールが破壊されていないこと、および許可されているとことが認識される。
【0056】
以下に示す改良は、所定のソフトウェアモジュールの転送は、前記移動装置のユーザがそのソフトウェアモジュールの所有を許可されている場合にのみ行われるべきである場合に、特に適用することができる。例えば、前記ソフトウェアモジュールは、前記ユーザがそれらの購入価格を支払った場合のみ転送され、前記ユーザが許可なしに前記移動記憶装置を所有するようになった場合は転送されない。この改良は、ユーザの識別データの取得を規定する。例えば、ユーザはパスワードをタイプ入力する。前記識別データは、前記ユーザの許可の検査を実行するために使用される。例えば、前記タイプ入力されたパスワードが、記憶されたパスワードと比較される。前記許可の検査結果に問題がない場合のみ、少なくとも1つのソフトウェアモジュールが転送される。
【0057】
前記ソフトウェアモジュールそのものは暗号化されないことが好ましい。この理由は、暗号化により、車両固有の移動記憶装置を作成することが必要になるためである。署名の使用により前記ソフトウェアモジュールは保護され、それにもかかわらず、移動記憶装置はさまざまなタイプの移動装置に対して、および移動装置の複数の例示に対して使用することができる。
【0058】
オーディオおよび/またはビデオデータを含む少なくとも1つのソフトウェアモジュールが準備されることが好ましい。これらのオーディオおよび/またはビデオデータは、前記移動装置または装備されているターゲットユニットの操作方法をユーザに説明するために使用される。例えば、ユニットの操作がビデオフィルムにより前記ユーザに説明されるか、または説明テキストが前記ユーザに対して音読される。これらのデータは、ソフトウェアモジュールに関連する他のすべてのデータと同様に、承認確認を受けるため、正しいオーディオおよび/またはビデオデータのみが、つまり、実際に装備されているターゲットユニットに関連するデータのみが確実に転送される。
【0059】
前記オーディオおよび/またはビデオデータの再生は、例えば、前記ユーザが希望した場合に、または前記ソフトウェアモジュールの転送が正常に完了した場合に開始される。前記移動記憶装置に記憶されたメニュー項目が前記ユーザに対して表示され、それにより前記ユーザは、どのオーディオおよび/またはビデオデータが再生されるかを規定するためにメニュー項目を選択できることが好ましい。
【0060】
請求項11に従った、本発明による方法を実施するための装置には、
−ソフトウェアモジュールおよび承認規定を移動記憶装置から読み込むための、読み取り装置
−および、前記移動記憶装置から前記移動装置へのソフトウェアモジュールの転送を制御し、その際に、どのソフトウェアモジュールが前記移動装置に対して承認されているかを確認する、制御装置、が含まれる。
【0061】
前記移動記憶装置の読み取り装置は、前記移動装置に搭載されることが好ましく、例えばCD読み取り装置である。
【0062】
本発明による方法の例示的実施形態を、付属の図面を参照して以下に詳細に説明する。
【発明を実施するための最良の形態】
【0063】
図1は、移動記憶装置としてCDを用いた本発明の例示的実施形態を示す。 図1の例では、2台の自動車20.1および20.2に、ソフトウェアモジュールが提供される。このソフトウェアモジュールを有する移動記憶装置として、図1の例では、2枚のCD30.1および30.2を使用する。制御センター10は、2枚の類似のCDを、例えばコピーすることにより作成する。それらのCDは、例えば、2台の車両(自動車)20.1および20.2の運転者に、または2つの整備工場に、郵便で配布される。2台のCD読み取り装置を使用して、このソフトウェアモジュールは、CD30.1および30.2から、2台の車両(自動車)20.1および20.2に転送される。これらのCD読み取り装置は、CD30.1および30.2と、自動車20.1および20.2との間のデータリンク60を提供する。
【0064】
本発明の説明のために参照する例示的実施形態では、自動車20に搭載されている2つのターゲットユニットにソフトウェアモジュールが提供される。これら2つのターゲットユニットのうちの1つは、例えば運転者に対して自然言語でメッセージを音読するシステム内の音声出力のための中央ユニットであり、もう1つは、ドアシステムのための制御ユニットである。中央ユニットは、CDの読み取り装置を具備し、制御ユニットにデータバスを使って接続され、また、転送動作を監視および制御する制御装置にデータリンクを使って接続される。本実施形態では、このように、CD30は移動記憶装置として使用される。これらのCDは、1度に書き込まれた情報、または複数回にわたって書き込まれた情報(CD−RまたはCD−RWの場合)を有することが可能である。移動記憶装置30についての代替となるいくつかの実施形態としては、DVD,USBインタフェースを有するメモリスティック、携帯型コンピュータ(ラップトップ、パームトップ)などがある。実施形態によっては、制御装置は車両20.1、20.2に搭載されるか、または車両20.1、20.2の外部に配置され、外部に配置される場合、制御装置は中央ユニットに一時的にのみ接続されることが好ましい。
【0065】
前記2つのターゲットユニットは、さまざまな製造業者によるものであり、さまざまなバージョンが存在する。その音声出力は、複数の言語で可能となるように設計されている。各言語につき、例えば3つのソフトウェアモジュールが必要である。これら2つのターゲットユニットの変形すべてについてのソフトウェアモジュールが、CDに記憶されている。記憶動作は、例えばISO−9660媒体標準に従って完了される。
【0066】
ターゲットユニットおよびソフトウェアモジュールのタイプは、それぞれの品番により識別される。品番は、車両製造業者の製品範囲内で一義的な数字および文字の列である。その変形は、3桁の数により識別される。
【0067】
ここで説明する例では、転送が考慮されるすべてのソフトウェアモジュールが、1枚のCD上に記憶される。このCDは、次の3つのファイルを保持する。
− ソフトウェアモジュールの確認の際に評価される、ソフトウェアモジュールの承認情報を含む承認ファイルと、
− 音声出力用の言語を選択するためにユーザが使用する選択メニューの構築のために、システム内の音声出力用ユニットにより使用される情報を含む、メニューファイルと、
− 構成管理システムまたはドキュメンテーションシステムによってソフトウェアモジュールの第2の組が規定されておらず、かつ、ユーザが選択を行わない場合に、転送されるべきソフトウェアモジュールを規定する、自動スタートファイルと、である。
【0068】
これらの3つのファイルは、例えば、CD_INFO.CDIや、MENU.CDIや、CONFIG.CDIなどの決められた名前を有し、移動記憶装置上の所定の位置に記憶されることが好ましい。
【0069】
ソフトウェアモジュールは、多数のオペレーティングシステムにより認識されるファイル管理システムの中で、CD上のパス(ディレクトリ)内に記憶される。パスは複数の構成要素を含み、各構成要素は分離文字(デリミタ)により区切られる。例えば、車両製造業者は、そのようなパスの最初の4つの構成要素を、特には、次の順序で規定する。供給業者−ソフトウェアモジュールの地域的有効性−ソフトウェアモジュールのタイプ−バージョン。以下に、2つの例を示す。
4つのパス構成要素
/XY/EUR/OS/V1
は、供給業者XYによる、欧州市場のターゲットユニット用に承認された、オペレーティングシステム(OS)の、バージョンV1のソフトウェアモジュールを要約している。
4つのパス構成要素
/AB/USA/EXE/V2
は、供給業者ABによる、米国市場のターゲットユニット用に承認された、実行可能プログラムの、バージョンV2のソフトウェアモジュールを要約している。
【0070】
記憶位置を示すための、パスのさらなる構成要素およびファイル名は、前記4つの規定された構成要素の後に追加される。
【0071】
前記承認ファイルでは、ソフトウェアモジュールの承認情報および記憶位置が、所定の構文に従って表されるが、この構文については、以下に例を使って説明する。1つの原則としては、ソフトウェアモジュールがターゲットユニットのあるタイプに対して承認されるのは、対応する承認情報が承認ファイル内に示されている場合のみであり、それ以外の場合は承認されないということである。
【0072】
承認ファイルには、以下の行が含まれる。
【0073】
この例では、中央ユニット用のソフトウェアは、供給業者XYにより供給され、ドア制御ユニット用のソフトウェアは、供給業者AB(欧州市場の場合)およびFG(米国市場の場合)により供給される。ターゲットユニットのタイプ、およびソフトウェアモジュールは、それぞれHWおよびSWで開始され、3桁または4桁の数字がそれに続く、品番により識別される。バージョンは、3桁の数字により識別される。例えば、SW−212−001は、品番がSW−212で、バージョン番号が001のソフトウェアモジュールを表す。品番とバージョンは、大括弧[]に入れられる。注釈行は、#で開始される。
【0074】
これらのソフトウェアモジュールが記憶されるCD自体は、最初のキーワード「CD name」の後に示される、品番とバージョン番号を有する。前記承認ファイルは、例えば、ソフトウェアモジュールSW−212−001が、品番HW−2002のターゲットユニットのバージョン001および002に対して承認され、関連ファイルはパス/FG/USA/APPL/V1に記憶されていることを規定する。ドア制御ユニットのバージョン001および002に対しては、ソフトウェアモジュールSW−202、SW−212、およびSW−222の、それぞれ特にバージョン001が承認される。
【0075】
キーワード「common」により、さまざまな種類のターゲットユニット用のソフトウェアモジュールの承認規定を有する領域が開始される。この例では、ソフトウェアモジュールSW−3001のバージョン002が、ターゲットユニットタイプHW−1002のバージョン001、002、およびターゲットユニットタイプHW−2002のバージョン001、002に対して承認される。
【0076】
承認ファイルの評価には、車両内に存在する各ターゲットユニットについての、承認ファイルの検索が含まれる。この検索により、開始の中括弧の後の最初の行でターゲットユニットタイプの品番およびバージョン番号が明らかになった場合、次の右括弧までの間に示されているすべてのソフトウェアモジュールが、このターゲットユニットに対して承認される。承認ファイル内の検索は、キーワード「common」で開始されるブロックまで継続されることが好ましい。
【0077】
承認ファイルの内容は、以下から自動的にコンパイルされ得る。
−ソフトウェアモジュールの個々の供給業者により提供される、承認についての情報から、
−ソフトウェアモジュールが記憶されているパスの、前記規定された最初の4つの構成要素から、およびソフトウェアモジュールとそれらのパスとの間の関連からも、そして、
−前記CDの品番およびバージョン番号から、である。
【0078】
CDは、任意のターゲットユニットに対して任意数の供給業者によるソフトウェアモジュールを記憶することができる。
【0079】
本発明の1つの実施形態では、中央構成管理システムまたはドキュメンテーションシステムが、車両に転送されるソフトウェアモジュールの第2の組を規定する。この車両に搭載された少なくとも1つのターゲットユニットに対して承認された、この第2の組からの各ソフトウェアモジュールが、転送される。この実施形態では、メニューファイルおよび自動スタートファイルは必要とされない。
【0080】
メニューファイルに記憶された情報は、代替となる選択肢をユーザに示すために評価される。この選択肢により、ユーザは、個々のファイルを直接選択する必要なしに、ソフトウェアモジュールの1つ以上のグループを選択することが可能になる。
【0081】
1つの例示的適用例では、ユーザは自然言語を選択し、それによりその自然言語でメッセージが音読されるようにする。中央ユニットには、マン/マシン相互関係のための構成要素が含まれており、ユーザはそれを利用して、例えばキーを押したり画面に触れたりすることにより、規定されたメニューから選択肢を選ぶ。ユーザは、最初に、複数の可能なアプリケーションのうちの1つを選択する。例えば、ユーザは、「音声出力」、「音声入力」、および「中止」(前記選択肢)の中から選択する。「スタイルガイド」、すなわちメニューの外観を規定する情報は、例えば、中央ユニット自体に記憶される。このメニュー項目は、CDおよび/または中央ユニットに記憶される。例えば、メニュー項目「音声出力」および「音声入力」はCDに記憶され、標準メニュー項目の「中止」は中央ユニットに記憶される。
【0082】
選択肢「音声出力」は、CD上の情報にリンクされている。このリンクは、例えば、キーワード「T2S」(text−to−speech)を使用してセットアップされる。選択肢「音声出力」は、同様に、中央ユニットに記憶されている情報により「T2Sにリンクされ、CD上のメニューファイルは、T2Sというキーワードで開始される情報を記憶している。
メニューファイルには、例えば、以下の行が含まれている。
【0083】
「Auto−Menu」はキーワードである。次の2行は、選択メニューがターゲットユニットタイプHW−1001のバージョン001および002に適用され、アプリケーション「T2S」が選択された場合に表示されることを規定する。
【0084】
ユーザによる音声出力機能の選択の後までに、メニューファイルがCDから読み込まれ、T2Sの検索が行われる。品番HW−1001のタイプの、バージョン001または002のターゲットユニットが車両に搭載されているかどうかを判定するための確認が実行される。
【0085】
例えば、バージョン001のターゲットユニットが車両に搭載されている。その場合、選択肢「Deutsch」(ドイツ語)−「English(UK)」(イギリス英語)−「English(US)」(アメリカ英語)−「Francais」(フランス語)−「Italiano」(イタリア語)−「Espanol」(スペイン語)を含む選択メニューが構築され、中央ユニットに記憶されているメニュー項目”Cancel”(キャンセル)が追加されて、すべてのメニュー項目が、マン/マシン相互関係のための構成要素により表示される。ユーザの選択に応じて、選択された言語にメニューファイル内でリンクされたソフトウェアモジュールが取り込まれる。例えば、ユーザは、音声出力のための言語として「Deutsch」(ドイツ語)を選択する。次に、ソフトウェアモジュールSW−555−001がターゲットユニットHW−1001−001に対して承認されているかどうかについての情報、およびソフトウェアモジュールSW−555−001が記憶されているCD上の位置についての情報が、承認ファイルから取得される。
【0086】
自動スタートファイルは、構成管理システムによってソフトウェアモジュールの組が規定されておらず、かつ、ユーザが選択を行わない場合に、どのソフトウェアモジュールが転送されるかを規定する情報を記憶する。このファイルの構文の例を以下に示す。
【0087】
「Do−Flash」は、転送されるべきソフトウェアモジュールに関する情報を含むブロックを開始するキーワードである。このブロックの中では、次の2つが規定されている。
− 車両が、タイプHW−1001−001のターゲットユニットを含む場合、最初にソフトウェアモジュールSW−101−001が転送され、次にソフトウェアモジュールSW−111−001が転送される。
− 車両が、タイプHW−1001−002のターゲットユニットを含む場合、最初にソフトウェアモジュールSW−101−001が転送され、次にソフトウェアモジュールSW−111−001が転送される。ただしこれは、キーワードIFとTHENの間の論理条件が満足された場合のみである。条件が満足されるのは、次の場合である。
−タイプHW−1102の、バージョン001〜009のいずれかのターゲットユニットが装備されており、
−タイプHW−2102の、バージョン001または002のターゲットユニットが装備されており、
−かつ、タイプHW−2302の、バージョン001〜009のいずれかのターゲットユニットが装備されていない場合である。
このファイル内にある00nは、バージョン001〜009の省略指定である。
【0088】
各ソフトウェアモジュールについて、次の2つのファイルも作成され、記憶される。即ち、−ソフトウェアモジュールの一部となるファイルを規定し、それらのファイルの記憶位置と、それらのファイルの転送順序を規定する、構成ファイルと、
−転送エラーおよび不正操作を認識するために使用される、セキュリティファイルと、である。
【0089】
これらの2つのファイルは、ソフトウェアモジュール用に規定された記憶位置に記憶されることが好ましい。上の例で、品番SW−102,バージョン番号001のソフトウェアモジュールに対して、このパスは、/XY/USA/0S/V1である。これらのファイルの構造を、次の2つの例で説明する。
【0090】
ソフトウェアモジュールSW−102−001のための構成ファイルには、以下の行が含まれる。
【0091】
このファイル内の記憶位置の規定は、ソフトウェアモジュールの記憶位置(この例では、/XY/USA/OS/V1)に関連したパスの詳細を示している。この規定は自動的にコンパイルされ、完全なパスとファイル名が(例えば、/XY/USA/OS/V1/DATA/USER/USER.DATが)形成される。
【0092】
これらの行は、ソフトウェアモジュールSW−102−001の転送中に、ファイルSETUP.EXE、INFO.TXT、CONTROLER.EXE、DRIVER.DLL、CONFIG.INI、DATA.DB2、およびUSER.DATが、この順序で転送されることを規定する。
【0093】
品番SW−111、バージョン番号001のソフトウェアモジュールのためのセキュリティファイルの1つの例を、次に示す。このセキュリティファイルには、以下の行が含まれる。
【0094】
これらの詳細により、以下が規定される。ソフトウェアモジュールのすべてのファイルの合計サイズは6764Kバイトである。この記載は、例えば、転送中の進行状況を表示するために使用される。すでにいくらのKバイト数が転送されたかが確認済みであり、構成ファイル内のこの記載は、合計でいくらのKバイト数が転送される必要があるかを意味している。この割合は、作業の進行状況を示すものであり、例えば棒グラフなどで表示される。
【0095】
CRC値(この例では16進数4758A08C)は、特に、車両および車両に搭載されている記憶装置への転送中に、転送エラーが発生していないかどうかを確認するために検査される。
【0096】
この例では、ソフトウェアモジュールは、ターゲットユニットの2つのバージョン、つまり、タイプHW−1001のバージョン001および002に対して承認される。したがって、2つの異なる署名が作成されてファイルに保存される(つまり、バージョンごとに1つの署名が作成される)。バージョンについての署名は、そのバージョンをデータストリームとして処理し、ハッシュ値を作り出すことにより作成されることが好ましい。署名は、このハッシュ値から、秘密鍵を使用して作成される。従って、署名は、ソフトウェアモジュールおよび秘密鍵に依存する。署名を作成するには、例えば、リベスト−シャミア−アドルマン(Rivest−Shamir−Adleman)(RSA暗号化)のアルゴリズムに基づく1024ビットの暗号化が使用される。
【0097】
署名は、不正アクセスおよび不正操作から厳重に保護されているコンピュータ上で作成される。例えば、供給業者はこのコンピュータを操作して、2つのバージョンおよび2つの署名を、自動車の製造業者に提供する。他の実施形態では、供給業者は前記2つのバージョンのみを製造業者に提供し、署名は製造業者が作成する。例えば、製造業者はその署名を供給業者に送信し、供給業者はソフトウェアモジュールを自社のターゲットユニットに転送し、その際に、その署名を検査のために使用する。第3の実施形態には、署名を作成し、秘密鍵を管理する、認可された委託センターが含まれる。
【0098】
ターゲットユニット内の上書き不能な固定記憶装置には、公開鍵が記憶される。公開鍵は、読み出すことはできるが、上書き、破損、または消去については、不注意によるものと意図的なものの両方に対して保護されている。供給業者がターゲットユニットに公開鍵を提供することが好ましい。署名の検査は、ソフトウェアモジュールが転送された後、インストールされる前に、公開鍵を使用して行われる。この検査により、ソフトウェアモジュールが信頼できる情報源からのものであり、破損も不正操作も行われていないということが保証される。
【0099】
転送中に、ソフトウェアモジュールの承認が検査され、必要に応じて選択され、選択されたソフトウェアモジュールのうち承認が認識されたもののファイルが転送される。この例では、中央ユニット用およびドア制御ユニット用のソフトウェアモジュールが、CDから転送される。CDは中央ユニット内の読み取り装置の中にあらかじめ配置されている。中央ユニット、ドア制御ユニット、並びに、転送動作の調整および監視を行う制御装置は、1つ以上のデータバスにより相互に接続され、また、車両に搭載されているさらなるユニットにも接続されている。制御装置は、車両に装備されるのではなく、転送動作のために車両に搭載されているデータバスに接続される。中央構成管理システムまたはドキュメンテーションシステムは、転送される必要のあるソフトウェアモジュールを選択する際に考慮される一組のソフトウェアモジュールを規定する。
【0100】
転送中におけるユニット間の通信には、ISO 14230−1、ISO 15765−1〜15765−4、およびVDA 14230−1〜VDA−14230−3により標準化されている「キーワードプロトコル2000」(Keyword Protocol 2000)(KWP2000)を使用することが好ましく、この「キーワードプロトコル2000」KWP2000では、コマンドは16進数によりコード化され、例えば、コマンド「ReadEDUIdentification」(ターゲットユニットの一つのタイプの識別子を読み出す)は、$1A,86によりコード化される。その他の転送プロトコルも同様に適合している。
【0101】
以下の例では、転送中に車両は整備工場に置かれている。転送中に、以下の手順が実行される。
− 制御装置が車両に接続される。制御装置は、この車両を、製造業者による他のすべての車両から区別する自動車識別名を確認し、また、データバスを介した放送により、関連するメッセージを送信することにより、このデータバスに接続されている他のすべてのユニットを診断モードにする。この診断モードでは、ユニットを起動することはできない。
− 制御装置は、データバスに接続されている他のすべてのユニットの識別名を確認する。この識別名は、ユニットの品番、バージョン番号、および必要に応じて、シリアル番号を含む。この確認は、データバスを介して要求を送信し、各ユニットがその識別名をデータバス上にのせることにより実行される。
− 次に、制御装置は、車両に搭載されているターゲットユニット上にどのソフトウェアモジュールがすでに存在しているかを確認する。これも、データバスを介した要求と応答により実行される。
− 制御装置は、挿入されているCDの品番とバージョン番号を、中央ユニットへの要求によって確認する。中央ユニット内の読み取り装置は、CDが正しく挿入されているかどうかを確認する。中央ユニットは、承認ファイルを読み込む。中央ユニットにインストールされているパーサが、挿入されているCDの品番およびバージョン番号を確認し、この情報をデータバスを介して制御装置に送信する。
− 制御装置は、他のユニット上の診断モードを終了させる。
− 制御装置は、中央構成管理システムに接続される。例えばイントラネットを使用することにより、制御装置は中央システムに、挿入されているCDの品番とバージョン番号、および車両に搭載されていることが確認されたターゲットユニットとソフトウェアモジュールの、品番とバージョン番号を送信する。
− 本実施形態では、中央構成管理システムは、どのソフトウェアモジュールがCDに記憶されているか、およびそれらのソフトウェアモジュールのうちのどれが、どのターゲットユニットタイプに対して承認されているかについての情報への、読み出しアクセス権を有する。中央構成管理システムは、ソフトウェアモジュールの第2の組を、制御装置に送信する。この第2の組で指定されたソフトウェアモジュールが、それに続いて転送される。
− 制御装置は、中央構成管理システムから切り離され、車両に再び接続される。
− 制御装置は、中央ユニットへの要求によって、再び、挿入されているCDの品番とバージョン番号を確認する。この新たな確認により、以前に挿入されていたCDが、それまでの間に交換または削除された可能性も考慮に入れられる。異なる品番およびバージョン番号が確認された場合、またはCDが挿入されていないことが確認された場合は、正しいCDの挿入と読み込みを要求するための、関連するメッセージが出力される。
− 制御装置は、再び、データバス上の他のすべてのユニットを診断モードにする。
− 中央ユニットに、この中央ユニット用のソフトウェアモジュールの品番とバージョン番号が送信され、また、制御装置のシリアル番号と転送の時期も送信される。中央ユニットは、この情報をすべて記憶する。
− 本実施形態では、上記中央ユニットは「インテリジェントユニット」である。この中央ユニットは、この中央ユニット用のソフトウェアモジュール、およびそれらのソフトウェアモジュールのそれぞれに対する構成ファイルとセキュリティファイルとを、みずから取得する。この目的のために、中央ユニットは、制御装置が要求に応じてこの中央ユニットに追加送信する、記憶位置に関する情報を評価する。
− 所定のソフトウェアモジュールがCD上で検出されない場合、または読み取り不能な場合、制御装置は、関連するエラーメッセージを生成する。
− 対応する情報がドア制御ユニットに送信され、そこに記憶される。ドア制御ユニットは、同様に、このドア制御ユニット用のソフトウェアモジュール、および構成ファイルとセキュリティファイルとを、みずから取得する。
− 制御装置は、中央ユニット用のすべてのソフトウェアモジュールが実際にこの中央ユニットに記憶されたことを確認し、また、ドア制御ユニットについても同じことを実行する。
− 秘密鍵を使用し、公開鍵を援用して作成され、中央ユニットに記憶されている、セキュリティファイルの署名を確認するよう、制御装置は中央ユニットに要求する。中央ユニットは、確認の結果を折り返し報告する。
− 制御装置は中央ユニットに対して、CRC値を確認するよう要求する。中央ユニットは、この結果も折り返し報告する。
− ドア制御ユニットについても、署名およびCRC値が確認され、結果が制御装置に報告される。
− 中央ユニットおよびドア制御ユニットに信号が送られ、それによりそれらのユニットは、新しいソフトウェアモジュールが転送されたという事実、およびどのソフトウェアモジュールが転送されたかをメモリセルに記憶するよう要求される。最初の信号はリセットフラグ(reset flag)である。各モジュールについて、起動フラグ(activating flag)もセットされる。
− 前記診断モードが終了される。リセットフラグがセットされたユニットは、電源が切られ、再び電源が入れられる。本実施例では、これは前記中央ユニットおよび前記ドア制御ユニットである。データバス上のその他のユニットは、一時的に停止される。電源が入れられると、起動フラグにより識別される転送済みソフトウェアモジュールが、インストールされ、起動される。
− 制御装置は、中央構成管理システムに再び接続される。制御装置は、中央システムに、車両の識別名、車両に搭載されていることが確認されたターゲットユニットのタイプの品番とバージョン番号、および車両への転送に成功したソフトウェアモジュールの品番とバージョン番号を送信する。
【0102】
作業者は、読み取り装置内にCDを配置し、転送が完了したら再びCDを取り出す必要があり、また、制御装置を車両に接続し、中央構成管理システムに接続し、その後、再び車両に接続する必要がある。
【0103】
ターゲットユニットが、例えば、転送プロトコルKWP2000に基づくメモリアドレスユニットの場合、ソフトウェアモジュールは、複数のファイルにわたって分割されるだけでなく、複数のセグメントにわたって分割され得る。ソフトウェアモジュールが複数のセグメントにわたって分割される場合、CDは、ソフトウェアモジュールと最初のセグメントのメインヘッダ、およびそれに続く各セグメントのサブヘッダを含むことが好ましい。従って、3つのセグメントを有するソフトウェアモジュールに対しては、メインヘッダと2つのサブヘッダが作成される。メインヘッダは、好ましくは、以下の情報を含む。
−ターゲットユニット内の、最初のセグメントが記憶されているメモリ領域の開始アドレスと、
−最初のセグメントの圧縮された長さと、
−最初のセグメントの圧縮されていない長さと、
−ソフトウェアモジュールの品番と、
−ソフトウェアモジュールのバージョン番号と、
−セグメントの総数と、
−メインヘッダのバージョンと、
−ソフトウェアモジュールのタイプなどのその他の記載と、である。
【0104】
サブヘッダは、好ましくは、以下の情報を含む。
−ターゲットユニット内の、さらなるセグメントが記憶されているメモリ領域の開始アドレスと、
−さらなるセグメントの圧縮された長さと、
−さらなるセグメントの圧縮されていない長さと、
−このさらなるセグメントのセグメント番号と、である。
【図面の簡単な説明】
【0105】
【図1】CDを移動記憶装置として使用した、本発明の例示的実施形態を示す。
【0001】
本発明は、ターゲット装置内に装備されたターゲットユニット用のソフトウェアモジュールを転送する方法に関する。前記ターゲット装置は、移動装置であり、好ましくは、車両または搬送手段である。
【背景技術】
【0002】
移動装置、特に自動車では、ドア制御ユニットなど、ソフトウェアモジュールにより制御されるユニットがますます多く使用されるようになっている。電子ナビゲーションシステムや音声出力用システムなどの、一部のユニットには、大規模なデータライブラリが必要である。移動装置を、ユーザやオペレータからの個々の要求と要望に合わせるために、多数のさまざまに変形されたターゲットユニットがしばしば製造および装備されており、ときには後で製造および装備されることもある。変形の組み合わせにより、移動装置の一種に属する、移動装置に搭載されるターゲットユニットについて、多数の異なる構成がもたらされる。それにもかかわらず、移動装置の製造業者は、自社が承認したすべての組み合わせにおいて、それらのターゲットユニットが動作中に確実に相互作用することを保証しなければならない。
【0003】
「ソフトウェアモジュール」は、特に、移動装置上で実行されるプログラムまたはプログラムの一部、およびそのようなプログラム用のデータまたはユニット用のデータを表す。「ターゲットユニット」は、ソフトウェアモジュールが転送されることを要する移動装置上のユニットであり、これらのユニットには、特に、データ処理ユニットが含まれる。
【0004】
ソフトウェアモジュールを移動装置に後で転送する目的で、前記ターゲットユニットを整備工場などで取り外して、必要なソフトウェアモジュールをそれらのターゲットユニットに提供し、その後、それらのターゲットユニットを再び装備することは、現在でもまだ通例となっている。場合によっては、ターゲットユニットを記製造業者に送り、この製造業者が一箇所でまとめてソフトウェアモジュールを転送しなければならないこともある。これらの方法は高価であり、また、多くの時間を必要とする。
【0005】
車両上のナビゲーションシステム用のデータをCDからインストールする方法は公知である。ボッシュ/ブラウプンクト(Bosch/Blaupunkt)社のトラベルパイロット(TravelPilot)というシステムの場合、自動車の運転者は、整備工場を訪れる。この整備工場で、カーラジオと相互作用するナビゲーションシステム用のデータがCDから読み込まれる。一部のナビゲーションシステムは、走行中に、つまり自動車で移動中に、CDからデジタルマップを読み込む。これらのシステムおよび方法はすべて、1つの所定の製造業者によるターゲットユニットに合わせた仕様となっている。他の製造業者によるターゲットユニット用のソフトウェアモジュールをインストールする必要がある場合には、この方法をどのように適用できるかについての開示がない。あるのは、この方法を複数回、すなわち製造業者につき1回、またはユニットにつき1回適用する方法のみである。正しいソフトウェアモジュールのみが転送され、他のソフトウェアモジュールは転送されないことを保証する方法はない。ここで、「正しい」ソフトウェアモジュールとは、前記車両内に実際に存在しているターゲットユニットの組み合わせに対して承認されたソフトウェアモジュールを表す。特に、一つの製造業者による一つのソフトウェアモジュールが、前記移動装置に実際に搭載されているユニットの全体構成に、許可されない影響を及ぼすのを防止することは不可能である。
【0006】
請求項1の前文に従った方法は特許文献1により公知である。特許文献1は特許文献2のドイツ語訳である。特許文献1の目的は、中央遠隔サービスシステムにより、顧客システムにおいてオンライン問題を解決することである。
【0007】
問題管理データベースは、サービス要求を探索引数として受け取り、不具合処理のための解決方法を提供する。この問題管理データベースは、探索引数の形式によるさまざまな構成要素および症状を、出力データとしての問題解決と相互に結び付けるエントリを含む。前記問題管理データベースは、3つの独立したユニット、すなわち、ハードウェア構成要素のためのエントリを有する症状例外テーブル、仮プログラム修正を有するソフトウェア構成要素のためのAPARテーブル、およびマイクロコードの修正を有するMTARテーブルを含むことが好ましい。前記探索引数は、交換可能な構成要素(「フィールド交換可能ユニット」(field replaceable units)、FRU)を識別し、問題解決方法の番号および出口点を識別する、参照キーとしてフォーマットされた症状の結果であることが好ましい。例えば、前記症状の結果は、最も可能性の高い2つのエラーを含む。
【0008】
特許文献1の問題管理データベースでは、探索引数として明らかにされる症状、および問題検出方法からの出口点を要求する。サービス要求は、所定の顧客システムと前記問題検出方法の結果とを識別する。前記問題管理データベースでは、その出力データが問題の解決方法を規定するように構築されている。
【0009】
前記問題管理データベースは必然的に複雑なものであり、その評価にはある程度の計算時間を要する。この理由は、構成要素は一般に複数のエラーにより中断させられる場合があり、また、1つの構成要素でのエラーにより他の構成要素にもエラーが発生する場合があるためである。これは、考慮に入れるべき症状の数は、存在する構成要素の数よりも通常ははるかに多いということを意味している。
【0010】
特許文献1では、ソフトウェアモジュールの転送の前に、ターゲット装置の構成データへのアクセスが実行される。障害時のハードウェアおよびソフトウェア構成要素の構成が、この手段により取得される。これらの構成データは、資源マネージャシステムにより、好ましくはテーブル内で管理される。移動装置では多くの場合、搭載されている記憶容量の不足などにより、そのようなテーブルを搭載および管理して最新に保つことは不可能であり、可能にしてもある程度の複雑さが伴う。特に、移動装置の場合、移動装置のユーザまたはオペレータがターゲットユニットを交換し、または追加したという理由により、テーブルの構成がターゲット装置の実際の構成に一致しないという危険もある。そのようなオペレータまたはユーザは、一般に、データ処理の専門家ではなく、例えば自動車の運転者などである。従って、構成テーブルが常に移動装置の現在の構成を含むと想定することはできない。
【0011】
特許文献3は、操作データを車両構成要素にプログラミングするための方法および装置を開示している。このデータは、制御センターから、自動車などの要求側ステーションに送られる。制御センターは、車両構成要素に関連する個々のコードを使用して、このデータをコード化する。このデータは、車両構成要素そのものに入るまで復号されない。これにより、このデータは不正アクセスから保護される。1つの改良に従えば、車両、車両構成要素、および要求側システムのユーザの識別に関する情報が、制御センターに送信され、そこで要求の許可が確認される。
【0012】
特許文献4は、プログラムおよび/またはデータを取り込むための方法を開示している。プログラムおよび/またはデータは、供給業者のサーバからダウンロードされる。その場合、無線リンクが、ターゲットユニットとサーバとの間でセットアップされ、アクセス許可の確認に成功すれば引き続いてプログラムまたはデータを転送するために使用される。この方法では、送受信装置が車両に搭載されている必要がある。ソフトウェアモジュールがより大規模な場合、多くの時間が必要とされる。転送時間は、無線リンクの帯域幅に依存する。転送リンクが大容量のデータにより過負荷になった場合または中断された場合、予期しない転送時間の増加が発生する。
【0013】
特許文献5は、自動車内の情報の表示、編集、および記憶のための装置を開示している。この装置は、プログラム及びデータの不揮発性記憶のための大容量記憶装置と、情報を受信するためのインタフェースと、オペレータ制御ユニットと、表示ユニットと、オペレーティングシステムとを具備し、このオペレーティングシステム上でプログラムを実行することができる。この発明による装置は、搭載されているユニットの機能を柔軟に調整および拡張することができる。1つの改良では、この装置はCDプレーヤーを含む。さらに、この装置は、許可されていないデータ入力を防止する手段、および承認識別子を使用した許可に基づいて入力データを提供する手段を含むこともできる。そのような承認識別子は、例えば、記憶されたコードを使用して確認できる。この装置は、ソフトウェアモジュールが、所定のユーザに対して、または所定の車両に対して承認されているかどうかを確認することができる。
【0014】
特許文献6による制御装置は、コンピュータを使用したシステムマネージャと、メモリと、ユーザの識別装置とを含む。識別装置には、チップカードなどの可搬型の記録媒体を読み出し、この記録媒体が正当かつ適切に使用されているかどうかを検査する読み出しユニットが含まれている。検査の結果に問題がない場合のみ、メモリに記憶されたプログラムが実行される。ユーザは、制御ユニットの仕様を選択することもでき、その仕様は記録媒体に記憶される。これにより、所定の制御ユニットの応答を、許可された所定のユーザに合わせて調整ことができる。
【0015】
特許文献7は、車両に搭載される、2つの論理ユニットを備えたコンピュータシステムを開示している。2つの論理ユニット間では、データを交換することができ、交換されるデータの1つのビットは、検査ビットとして、車両に転送される残りのデータが有効かどうかを示す。この文献では、車両に搭載されたメモリへのソフトウェアモジュールのインストール方法、およびデータが正しく、つまり転送エラーなしに転送されたかどうかを確認する方法を開示している。
【0016】
前述の刊行文献は、ソフトウェアモジュールを移動装置に転送するための方法、およびその転送の際に、許可および承認の確認を必要に応じて実行するための方法を開示するものである。この確認は、それぞれが1つの移動装置に関連している。しかし、この方法では、多くの変形を有する移動装置にソフトウェアモジュールを転送する必要があるという可能性が考慮に入れられていない。例えば、さまざまなターゲットユニットが装備された移動装置の一種の種々の例示により、またはさまざまなバージョンで使用されるターゲットユニットにより、広範な変形が生じる。この広範な変形により、適切に用いて定義しかつ有効にすることが不可能である、膨大な数の異なる確認が必要となる場合がある。。その上、移動装置のユーザまたはオペレータは、前記移動装置の製造業者に通知せずに、ターゲットユニットの交換または後の追加を行う可能性があり、製造業者は先行技術に基づく承認確認の際にこれを考慮に入れることができない、という事実も考慮に入れられていない。しかし、各移動装置に正しいソフトウェアモジュールが転送されることを保証するには、広範な変種および後の変更を考慮に入れる必要がある。
【0017】
【特許文献1】
独国特許公表第68920462 T2号明細書
【特許文献2】
欧州特許出願公告第333620 B1号明細書
【特許文献3】
独国特許発明第19532067 C1号明細書
【特許文献4】
独国特許出願公開第19750372 A1号明細書
【特許文献5】
独国特許出願公開第4218804 A1号明細書
【特許文献6】
欧州特許出願公告第392411 B2号明細書
【特許文献7】
米国特許第6,009,363号明細書
【発明の開示】
【発明が解決しようとする課題】
【0018】
本発明は、請求項1の前文に従った方法を提供するという目的に基づく。前記方法により、さまざまな製造業者によるターゲットユニットを備えたターゲット装置の、豊富な変形を有する種類が存在する場合でも、また、個々のターゲット装置の後の変更の可能性を考慮に入れる必要があり、制御センターがその変更に関する情報を有さない場合でも、正しいソフトウェアモジュールのみが転送され、それ以外のソフトウェアモジュールは転送されないことが保証される。また、本発明は、前記方法を実行する装置を提供することも目的としている。
【課題を解決するための手段】
【0019】
この目的は、請求項1に従った方法により、および請求項12に従った装置により実現される。有利な改良は、従属請求項で記載されている。
【0020】
請求項1に従った方法は、ターゲットユニットのためのソフトウェアモジュールを転送する。ターゲットユニットは、移動装置の中に、特に、車両または搬送手段の中に装備されている。ソフトウェアモジュールは、CDなどの移動記憶装置内に記憶されている。移動記憶装置と移動装置との間のデータリンクは、例えば、移動装置内に装備されたCDの読み取り装置を、データバスを介してターゲットユニットに接続することにより、少なくとも一時的にセットアップされる。このデータリンクは、ソフトウェアモジュールの転送を目的としている。どのソフトウェアモジュールが移動装置に対して承認されているかを判定するための確認が実行される。
【0021】
2種類のタイプの識別子が規定される。第1に、ユニットタイプの識別子がターゲットユニットについて規定され、第2に、ソフトウェアタイプの識別子がソフトウェアモジュールについて規定される。前記ユニットタイプの識別子およびソフトウェアタイプの識別子は、記憶されているソフトウェアモジュールのうちのどれが、どのタイプのターゲットユニットに対して承認されているかを規定するために使用される。ソフトウェアモジュールがターゲットユニットのタイプに対して承認されるのは、少なくとも、そのソフトウェアモジュールが、そのタイプの任意のターゲットユニット上で実行できる場合である。これらの承認規定は、例えば、移動記憶装置上に記憶される。
【0022】
また、本発明による方法は、転送時に実際に装備されている、確認されるべき少なくとも1つのターゲットユニットのタイプも規定する。少なくとも1つのソフトウェアモジュールについて、確認が実行され、そのソフトウェアモジュールが、実際に装備されているターゲットユニットのタイプに対して承認されているかどうかが判定される。承認されていると認識されたソフトウェアモジュールは、移動装置に転送される。それらのソフトウェアモジュールは、移動装置上に記憶されることが好ましく、例えば、個々のターゲットユニット内の上書き可能な記憶装置内や、ターゲットユニットに搭載された中央記憶装置内などに記憶される。
【0023】
この方法は、少数の変形を含む移動装置の種類に対しても、多数の変形を含む移動装置の種類に対するのと同じ方法で適用できる。特に、移動装置が、異なる製造業者による複数のターゲットユニットを含む場合でも、そして、それらのターゲットユニットには異なるバージョンが存在し、これらの異なるバージョンが異なるソフトウェアモジュールを必要とする場合でも、正しいソフトウェアモジュールが確実に選択されて転送され、それ以外のソフトウェアモジュールは選択も転送もされない。その承認規定は、個々の移動装置についてではなく、ターゲットユニットのタイプおよびソフトウェアモジュールについて作成される。従って、承認規定は、移動装置の実際に存在する構成には依存しない。
【0024】
同じ移動記憶装置に、さまざまな製造業者によるターゲットユニットについてのソフトウェアモジュール、および、ターゲットユニットのさまざまなバージョンについてのソフトウェアモジュールを記憶できる。このことは、多数の変形が存在する場合でも、その移動記憶装置が、移動装置のうちの一つの種類における任意の例示に対して変更または調整されることなく、使用できるということを意味する。
【0025】
移動装置のユーザまたはオペレータが、ターゲットユニットを後に別の種類に交換した場合、またはさらなるターゲットユニットを後に追加した場合、またはターゲットユニットを削除した場合でも、正しいソフトウェアモジュールが選択され、転送される。これは特に、どのタイプのターゲットユニットが実際に移動装置内に存在しているかを、転送時に確認することにより実現される。それにより、中央データベース内で移動装置の構成を確認する必要はなくなる。そのような中央データベースのエントリは古くなっている可能性がある。その理由は、例えば、ターゲットユニットが他の種類に交換されたり、追加または削除されたりしても、関連するエントリはそれに合わせて更新されないためである。
【0026】
本発明は、ソフトウェアモジュールが中央サーバから移動装置に、転送時まで送信されていない場合よりもはるかに迅速に、ソフトウェアモジュールを移動装置に転送するために使用できる。例えば、CD−ROMを移動記憶装置として使用する場合、等倍速の読み出しでもデータ転送速度170Kバイト/秒が実現される。可能なさらなる移動記憶装置として、DVDを使用すれば、500Kバイト/秒およびそれ以上の読み出しも可能となる。その上、この方法は、制御センターから移動装置への直接的な転送よりもはるかに障害が発生しにくい。転送に必要な時間は、移動記憶装置から移動装置へのデータ転送レートを知るだけで実際に予測することができる。
【0027】
この方法は、種々の適用例に対して、さまざまに改良して使用することができる。以下にその例を示す。
【0028】
ある製造業者は1つのタイプの車両を何百も生産しており、各車両には所定の1つのタイプのターゲットユニットが装備されている。車両が販売業者に引き渡される直前まで、ソフトウェアモジュールは作成されておらず、このタイプのターゲットユニットに対して承認されていない。本発明による方法は、これらのソフトウェアモジュールが、引き渡しの「直前」に、ターゲットユニットを取り外す必要も、中央サーバなどへのデータリンクをセットアップする必要もなしに、迅速に転送されることを可能にする。ソフトウェアモジュールの転送は、例えばロボットに基づいて、このソフトウェアモジュールと承認規定を含むCDとを車両に搭載された読み取りユニット内に配置し、転送動作を開始し、転送が完了したら再びCDを取り外すことにより、自動化することができる。
【0029】
一つの種類の車両の引き渡し後に、新しいソフトウェアモジュールが作成され、所定のタイプのターゲットユニットに対して承認される。このタイプのターゲットユニットは車両の多数の事例におけるさまざまな変形が、インストールされており、種々のソフトウェアモジュールがそれらの変形に対して承認されている。インストールされているすべてのターゲットユニットには、例えば新しい法律規定を満足するために、それぞれに対して承認されたソフトウェアモジュールを提供しなければならない。この目的のために、整備工場、および/または車両製造業者のさらなるサービスパートナーには、本発明に従って、ターゲットユニットのすべての変形についてのソフトウェアモジュールを記憶したそれぞれのデータ記憶媒体が提供される。対象となっている車両のユーザは、それらの整備工場のいずれかを訪れるよう求められる。本発明の方法により、正しいソフトウェアモジュールが転送され、所定の車両内のターゲットユニットに対して承認されていないソフトウェアモジュールが転送される可能性はなくなる。制御センターへのデータリンクが前記転送のためにセットアップされることはないため、転送に要する時間は短く、また、長距離にわたるデータネットワークの利用に転送は依存しない。
【0030】
転送に続いて、整備工場では、この転送が正常に完了したかどうかを確認するために、機能テストを実行することが好ましい。中央構成管理システムまたはドキュメンテーションシステムは、転送後に、この車両上にどのソフトウェアモジュールが存在するかを示すレポートを受け取る。これにより、車両製造業者は、製品マニュアルに記載されている要求に従う。
【0031】
1つのタイプのターゲットユニットについて、所定の機能を有するものと有さないものという2つの変形が提供される。この2つのタイプの違いは、ソフトウェアモジュールのみに基づくものである。この手引きにより、ターゲットユニットにある変形の多様性は減少する。追加の機能は、これらのソフトウェアモジュールを車両に転送することによって提供される。本発明の方法により、車両製造業者は車両の所有者に、使用の開始時またはその後の任意の時点で追加機能を導入するという選択肢を提供できるようになる。これは、所有者が、ソフトウェアモジュールを有するデータ記憶媒体を取得し、そのデータ記憶媒体を車両に一時的に接続することにより行われる。本発明による方法は、車両を整備工場に持って行く必要も、ターゲットユニットを取り外す必要もなしに、ソフトウェアモジュールを転送し、それにより追加機能を導入する。
【0032】
車両には、メッセージおよび情報を自然言語で音読することにより前記運転者に出力する、音声出力のためのシステムが装備されている。前記運転者は、使用する言語を選択する。前記運転者は、多数の異なる言語を選択できるため、また、自然言語を音読するために必要なデータは大量のストレージ容量を占有するため、提供されるすべての言語の音声データを車両内に永続的に記憶するのは経済的ではない。本発明による方法の1つの改良に従って、前記ソフトウェアモジュール、特に、提供されるすべての言語の音声データおよびプログラムは、1つのデータ記憶媒体に記憶される。言語の選択に続いて、この言語による出力に必要なソフトウェアモジュールが前記車両に転送される。各言語について独立したデータ記憶媒体を維持する必要はなく、また、選択された言語以外の言語のデータまたはプログラムを転送する必要もない。車両の所有者や運転者が変更されたなどの理由により、異なる言語での出力が必要になった場合は、整備工場を訪れる必要なしに、この方法を何度でも繰り返すことができる。運転者の頻繁な変更は、特に、自動車レンタル会社により時間単位または1日単位で賃貸される車両の場合、または運送会社に属する商業用車両の場合に生じる。
【0033】
同様の改良を、音声入力用のシステムに必要なソフトウェアモジュールの転送に使用できる。そのようなシステムは、前記車両に搭載されているユニットを制御するために、前記運転者またはサービスエンジニアからの自然言語で話されたコマンドを認識する。
【0034】
前記ソフトウェアモジュールが記憶される前記移動記憶装置は、
−少なくとも1枚のCD、
−および/または、元来MP3データ用に開発された3.5インチのデータ記憶媒体である、少なくとも1枚のミニディスク、
−および/または、少なくとも1枚のDVD、
−および/または、少なくとも1つのフラッシュメモリスティック、を含むことが好ましい。
【0035】
前記ソフトウェアモジュールの記憶の完了に続いて、前記移動記憶装置の一部であるCDは、ISO−9660媒体として完成されることが好ましい。
【0036】
他の改良では、前記移動記憶装置はポータブルコンピュータの一部であり、前記コンピュータ内のハードディスク、または前記コンピュータ内のCDドライブの中に配置されるCDであることが好ましい。このポータブルコンピュータは、例えばデータ転送を目的とした市販のパラレルケーブルを使用して、少なくとも一時的に、前記制御装置に接続される。
【0037】
好ましくは、タイプ識別子は、品番とバージョン番号を含む。1つのタイプの各バージョンは、すべて同じ機能を実行し、また、相互に交換することができ、特に、上位互換性および下方への互換性がある。
【0038】
請求項2に従った改良により、ソフトウェアモジュールを、異なるターゲットユニットを有する複数の移動装置に転送することが可能になる。例えば、一部のターゲットユニットは、これらの移動装置のうちいくつかの中にのみ存在し、また、さまざまな移動装置に、種々のタイプのターゲットユニットが装備されている。それにもかかわらず、これらの移動装置のそれぞれに対して、同じ移動記憶装置または複数の類似の移動記憶装置が使用される。例えば、移動記憶装置のコピーが、存在する移動装置の数と同じ数だけ作成される。前記承認規定の評価により、構成が異なるにもかかわらず、各移動装置に正しいソフトウェアモジュールが転送されることが保証される。
【0039】
さまざまな製造業者によるターゲットユニットのためのソフトウェアモジュールを、前記移動記憶装置上に効率よく記憶するために、所定の製造業者のための記憶領域が予約されることが有利である。請求項3に従って、ターゲットユニットの少なくとも2つの製造業者のために、それぞれの記憶領域が、この製造業者によるターゲットユニット用のソフトウェアモジュールのための移動記憶装置上に予約される。
【0040】
さまざまな製造業者によるターゲットユニットのためのソフトウェアモジュールが、それらのソフトウェアモジュールのための承認規定とともに、同じ移動記憶装置上に記憶されることが有利である。請求項3に従って、
−第1の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第1の位置に記憶され、
−第2の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第2の位置に記憶され、
−第1の製造業者によるターゲットユニットのためのソフトウェアモジュールについての承認規定は、第2の製造業者によるターゲットユニットのためのソフトウェアモジュールについての承認規定と組み合わされ、
−組み合わされた前記承認規定は前記移動記憶装置上に記憶される。
【0041】
前記承認規定は、自動的に組み合わされるようにすることができる。第1の製造業者による承認規定は、第2の製造業者による承認規定と同じ構文を有することが好ましい。
【0042】
前記承認規定は、例えば、ASCIIフォーマット、またはバイナリフォーマットにより、あるいは好ましくは、拡張可能なマーク付け言語(XML)を使用して記憶される。
【0043】
前記承認規定は、移動記憶装置上に記憶されることが好ましい(請求項4)。それにより、転送時の承認確認のために、さらなる方法ステップなしに、それらの承認規定を使用できるようになる。前記移動記憶装置は、少なくとも1つのソフトウェアモジュールについて、前記移動記憶装置上の前記ソフトウェアモジュールが記憶されている位置についての情報を記憶することが好ましい。例えば、前記位置情報は、前記ソフトウェアモジュールのパスを含み、また、前記ソフトウェアモジュールの各ファイルについて、前記パスに相対的なサブパスを含む。その上、ソフトウェアモジュールがターゲットユニットに記憶される際の、このターゲットユニットタイプの記憶領域の開始アドレスが、前記移動記憶装置上に記憶されることが、特に好ましい。
【0044】
前記承認規定を前記移動記憶装置上に記憶することの1つの代替方法としては、前記承認規定を構成管理システム内またはドキュメンテーションシステム内に記憶することである(請求項5)。前記ソフトウェアモジュールの転送は、制御装置により制御される。前記承認規定は、前記構成管理システムまたは前記ドキュメンテーションシステムから前記制御装置に送信される。この改良が有する利点は、前記ソフトウェアモジュールの転送の開始時まで、すなわち、例えば前記移動記憶装置が整備工場に配布された後になるまで、前記承認規定は作成される必要がないということである。
【0045】
1つの実施形態では、ソフトウェアモジュールはターゲットユニットタイプに対して、すべての状況下において、つまり、どのようなさらなるターゲットユニットが前記移動装置内に装備されているかに関係なく、承認される。ただし、搭載されているターゲットユニットは、相互に影響を及ぼす場合がある。この理由により、他の実施形態では、承認が条件に結び付けられる。条件が満足された場合のみ、前記ソフトウェアモジュールは前記移動装置に対して承認される。請求項6に従う承認規定は、ソフトウェアウェアモジュールを承認するための少なくとも1つの条件を含む。このソフトウェアモジュールのための承認確認には、前記承認条件の有効性の確認が含まれる。
【0046】
そのような承認条件には、好ましくは、所定のターゲットユニットタイプ、および/または所定のソフトウェアモジュールが、前記移動装置上に存在すること、および/または存在しないことが含まれる。例えば、あるソフトウェアモジュールがターゲットユニットタイプAに対して承認されるのは、前記移動装置上にタイプBのターゲットユニットが装備され、タイプCのターゲットユニットは装備されていない場合のみである。承認条件は、ユニットタイプ識別子および/またはソフトウェアタイプ識別子を含むブール式であることが好ましい。承認条件は、例えば、テーブルまたはデータベースの形式で記憶される。
【0047】
承認規定の1つの実施形態は、ソフトウェアモジュールに対して規定される実際のインタフェース仕様を含み、また、ターゲットユニットタイプによりどのような希望のインタフェース仕様が期待されるかの規定も含む。ソフトウェアモジュールに対しては、1つ以上の実際のインタフェース仕様が規定され、ターゲットユニットタイプに対しては、1つ以上の希望のインタフェース仕様が規定される。実際のインタフェース仕様が、希望のインタフェース仕様と互換性がある場合のみ、前記ソフトウェアモジュールは前記ターゲットユニットタイプに対して承認される。好ましくは、ソフトウェアタイプ識別子とユニットタイプ識別子を使用した承認規定が、実際のインタフェース仕様と希望のインタフェース仕様を使用した承認規定と組み合わされる。
【0048】
インタフェース仕様は、例えば、プログラミング言語C、C++、およびPASCALにおける「プロシージャ宣言」および「メソッド宣言」という名称により、また、JAVAにおける「インタフェース」という名称により公知である。希望のインタフェース仕様の簡単な例は、前記ターゲットユニットタイプが「ソート」と呼ばれる関数を当てにしていることを述べるものである。この関数は、自然数nと、n個の整数を有するベクトルを入力変数として有し、出力変数として、入力ベクトルのn個の整数が昇順でソートされたベクトルを有するものである。前記インタフェース仕様は、どのソート方式が適用されるかは規定しない。実際のインタフェース仕様は、n個の実数を有するベクトルがソートされるものであり、この希望の仕様と互換性を有する。インタフェース仕様のさらなる例は、TCP/IPスタックの仕様、および、オーディオまたはビデオチャネルなどの転送チャネルのための関数の仕様である。これらの関数は、転送チャネルへの接続をセットアップし、その接続を開き、データ転送を実行して、その接続を再び閉じる。このインタフェース仕様は、転送方式の種類により異なる場合がある。
【0049】
承認規定のさらなる実施形態は、例えば前記ソフトウェアモジュールの承認が開始される日付などの、最も早い承認時刻に基づくものである。ソフトウェアモジュールに対して、このソフトウェアモジュールが承認される日付に関する規定が存在する。前記承認確認には、前記最も早い承認時刻と、前記ソフトウェアモジュールが移動装置に転送される時刻との比較が含まれる。前記転送時刻が、前記最も早い承認時刻と同じか、それよりも遅い場合に限り、前記ソフトウェアモジュールは承認されたものと評価される。前記時刻の比較に続いて、ソフトウェアタイプおよびユニットタイプ識別子を使用した前記承認規定の評価が行われるようにするのが好ましい。この理由は、時刻の比較に要する計算時間は、承認確認に要する計算時間よりも少ないためである。
【0050】
本発明による方法の1つの改良では、前記移動装置上の各ソフトウェアモジュールについて承認確認が実行され、承認が認識された各ソフトウェアモジュールが転送される。これとは対照的に、請求項7に従った改良では、規定されるソフトウェアモジュールの組を準備する。この組の中のソフトウェアモジュールのみが転送を考慮され、その他のソフトウェアモジュールは、承認されていても転送されない。この組の中の各ソフトウェアモジュールについて、承認確認が実行される。この組の中の、承認が認識された各ソフトウェアモジュールは、前記移動記憶装置から前記移動装置に転送される。これは、さまざまなソフトウェアモジュールを転送するために、同じ移動記憶装置または複数の類似の記憶装置を使用することが可能であることを意味する。このためには、それぞれの新しい組を規定する必要があるだけである。
【0051】
例えば、前記組は、前記移動記憶装置上で識別される所定のソフトウェアモジュールに基づいて規定される(請求項8)。識別されたすべてのソフトウェアモジュールが、前記組に属する。前記識別は、例えば、識別されるべきソフトウェアモジュールのソフトウェアタイプ識別子をリストにすることにより行われる。
【0052】
他の実施形態では、前記組は、構成管理システムまたはドキュメンテーションシステムの中で識別される所定のソフトウェアモジュールに基づいて規定される(請求項9)。前記転送は、制御装置により制御される。どのソフトウェアモジュールが前記組に属するかについての情報は、前記構成管理システムまたは前記ドキュメンテーションシステムから、前記制御装置に送られる。例えば、ソフトウェアタイプ識別子の組が、前記制御装置に送られる。この改良により、前記転送の直前に前記組を規定することが可能になる。
【0053】
請求項7〜9のいずれか一項に従った改良は、特に、少なくとも1つのターゲットユニットが、前記移動装置に搭載されている音声入力または音声出力システムの一部である場合に有利である。この場合、前記移動記憶装置は、さまざまな言語のためのソフトウェアモジュールを記憶する(請求項10)。前記組は、選択される言語に基づいて規定される。前記移動記憶装置は、どのソフトウェアモジュールがどの言語に属するかに関する規定を記憶することが好ましい。例えば、各言語について、ソフトウェアタイプ識別子の組がリストにされる。
【0054】
前記移動記憶装置への記憶後や、転送後などにおける、ソフトウェアモジュールの破壊や不正操作を防止するため、または、許可なしに作成されたコピーの使用を防止するために、正当性の検査が実行される。これには、少なくとも1つのソフトウェアモジュールに対する署名を作成して、前記移動記憶装置上に記憶することが含まれる。前記署名は、好ましくは、前記ソフトウェアモジュールをデータストリームとして処理し、ハッシュ値を生成することにより作成される。このハッシュ値から前記署名を作成するには、秘密鍵が使用される。従って、前記署名は、前記ソフトウェアモジュールおよび前記秘密鍵に依存する。
【0055】
その上、少なくとも1つのターゲットユニットタイプについて、公開鍵が、前記移動装置上に記憶される。この公開鍵は、前記署名を検査するために使用される。前記検査の結果に問題がない場合のみ、前記ソフトウェアモジュールが破壊されていないこと、および許可されているとことが認識される。
【0056】
以下に示す改良は、所定のソフトウェアモジュールの転送は、前記移動装置のユーザがそのソフトウェアモジュールの所有を許可されている場合にのみ行われるべきである場合に、特に適用することができる。例えば、前記ソフトウェアモジュールは、前記ユーザがそれらの購入価格を支払った場合のみ転送され、前記ユーザが許可なしに前記移動記憶装置を所有するようになった場合は転送されない。この改良は、ユーザの識別データの取得を規定する。例えば、ユーザはパスワードをタイプ入力する。前記識別データは、前記ユーザの許可の検査を実行するために使用される。例えば、前記タイプ入力されたパスワードが、記憶されたパスワードと比較される。前記許可の検査結果に問題がない場合のみ、少なくとも1つのソフトウェアモジュールが転送される。
【0057】
前記ソフトウェアモジュールそのものは暗号化されないことが好ましい。この理由は、暗号化により、車両固有の移動記憶装置を作成することが必要になるためである。署名の使用により前記ソフトウェアモジュールは保護され、それにもかかわらず、移動記憶装置はさまざまなタイプの移動装置に対して、および移動装置の複数の例示に対して使用することができる。
【0058】
オーディオおよび/またはビデオデータを含む少なくとも1つのソフトウェアモジュールが準備されることが好ましい。これらのオーディオおよび/またはビデオデータは、前記移動装置または装備されているターゲットユニットの操作方法をユーザに説明するために使用される。例えば、ユニットの操作がビデオフィルムにより前記ユーザに説明されるか、または説明テキストが前記ユーザに対して音読される。これらのデータは、ソフトウェアモジュールに関連する他のすべてのデータと同様に、承認確認を受けるため、正しいオーディオおよび/またはビデオデータのみが、つまり、実際に装備されているターゲットユニットに関連するデータのみが確実に転送される。
【0059】
前記オーディオおよび/またはビデオデータの再生は、例えば、前記ユーザが希望した場合に、または前記ソフトウェアモジュールの転送が正常に完了した場合に開始される。前記移動記憶装置に記憶されたメニュー項目が前記ユーザに対して表示され、それにより前記ユーザは、どのオーディオおよび/またはビデオデータが再生されるかを規定するためにメニュー項目を選択できることが好ましい。
【0060】
請求項11に従った、本発明による方法を実施するための装置には、
−ソフトウェアモジュールおよび承認規定を移動記憶装置から読み込むための、読み取り装置
−および、前記移動記憶装置から前記移動装置へのソフトウェアモジュールの転送を制御し、その際に、どのソフトウェアモジュールが前記移動装置に対して承認されているかを確認する、制御装置、が含まれる。
【0061】
前記移動記憶装置の読み取り装置は、前記移動装置に搭載されることが好ましく、例えばCD読み取り装置である。
【0062】
本発明による方法の例示的実施形態を、付属の図面を参照して以下に詳細に説明する。
【発明を実施するための最良の形態】
【0063】
図1は、移動記憶装置としてCDを用いた本発明の例示的実施形態を示す。 図1の例では、2台の自動車20.1および20.2に、ソフトウェアモジュールが提供される。このソフトウェアモジュールを有する移動記憶装置として、図1の例では、2枚のCD30.1および30.2を使用する。制御センター10は、2枚の類似のCDを、例えばコピーすることにより作成する。それらのCDは、例えば、2台の車両(自動車)20.1および20.2の運転者に、または2つの整備工場に、郵便で配布される。2台のCD読み取り装置を使用して、このソフトウェアモジュールは、CD30.1および30.2から、2台の車両(自動車)20.1および20.2に転送される。これらのCD読み取り装置は、CD30.1および30.2と、自動車20.1および20.2との間のデータリンク60を提供する。
【0064】
本発明の説明のために参照する例示的実施形態では、自動車20に搭載されている2つのターゲットユニットにソフトウェアモジュールが提供される。これら2つのターゲットユニットのうちの1つは、例えば運転者に対して自然言語でメッセージを音読するシステム内の音声出力のための中央ユニットであり、もう1つは、ドアシステムのための制御ユニットである。中央ユニットは、CDの読み取り装置を具備し、制御ユニットにデータバスを使って接続され、また、転送動作を監視および制御する制御装置にデータリンクを使って接続される。本実施形態では、このように、CD30は移動記憶装置として使用される。これらのCDは、1度に書き込まれた情報、または複数回にわたって書き込まれた情報(CD−RまたはCD−RWの場合)を有することが可能である。移動記憶装置30についての代替となるいくつかの実施形態としては、DVD,USBインタフェースを有するメモリスティック、携帯型コンピュータ(ラップトップ、パームトップ)などがある。実施形態によっては、制御装置は車両20.1、20.2に搭載されるか、または車両20.1、20.2の外部に配置され、外部に配置される場合、制御装置は中央ユニットに一時的にのみ接続されることが好ましい。
【0065】
前記2つのターゲットユニットは、さまざまな製造業者によるものであり、さまざまなバージョンが存在する。その音声出力は、複数の言語で可能となるように設計されている。各言語につき、例えば3つのソフトウェアモジュールが必要である。これら2つのターゲットユニットの変形すべてについてのソフトウェアモジュールが、CDに記憶されている。記憶動作は、例えばISO−9660媒体標準に従って完了される。
【0066】
ターゲットユニットおよびソフトウェアモジュールのタイプは、それぞれの品番により識別される。品番は、車両製造業者の製品範囲内で一義的な数字および文字の列である。その変形は、3桁の数により識別される。
【0067】
ここで説明する例では、転送が考慮されるすべてのソフトウェアモジュールが、1枚のCD上に記憶される。このCDは、次の3つのファイルを保持する。
− ソフトウェアモジュールの確認の際に評価される、ソフトウェアモジュールの承認情報を含む承認ファイルと、
− 音声出力用の言語を選択するためにユーザが使用する選択メニューの構築のために、システム内の音声出力用ユニットにより使用される情報を含む、メニューファイルと、
− 構成管理システムまたはドキュメンテーションシステムによってソフトウェアモジュールの第2の組が規定されておらず、かつ、ユーザが選択を行わない場合に、転送されるべきソフトウェアモジュールを規定する、自動スタートファイルと、である。
【0068】
これらの3つのファイルは、例えば、CD_INFO.CDIや、MENU.CDIや、CONFIG.CDIなどの決められた名前を有し、移動記憶装置上の所定の位置に記憶されることが好ましい。
【0069】
ソフトウェアモジュールは、多数のオペレーティングシステムにより認識されるファイル管理システムの中で、CD上のパス(ディレクトリ)内に記憶される。パスは複数の構成要素を含み、各構成要素は分離文字(デリミタ)により区切られる。例えば、車両製造業者は、そのようなパスの最初の4つの構成要素を、特には、次の順序で規定する。供給業者−ソフトウェアモジュールの地域的有効性−ソフトウェアモジュールのタイプ−バージョン。以下に、2つの例を示す。
4つのパス構成要素
/XY/EUR/OS/V1
は、供給業者XYによる、欧州市場のターゲットユニット用に承認された、オペレーティングシステム(OS)の、バージョンV1のソフトウェアモジュールを要約している。
4つのパス構成要素
/AB/USA/EXE/V2
は、供給業者ABによる、米国市場のターゲットユニット用に承認された、実行可能プログラムの、バージョンV2のソフトウェアモジュールを要約している。
【0070】
記憶位置を示すための、パスのさらなる構成要素およびファイル名は、前記4つの規定された構成要素の後に追加される。
【0071】
前記承認ファイルでは、ソフトウェアモジュールの承認情報および記憶位置が、所定の構文に従って表されるが、この構文については、以下に例を使って説明する。1つの原則としては、ソフトウェアモジュールがターゲットユニットのあるタイプに対して承認されるのは、対応する承認情報が承認ファイル内に示されている場合のみであり、それ以外の場合は承認されないということである。
【0072】
承認ファイルには、以下の行が含まれる。
【0073】
この例では、中央ユニット用のソフトウェアは、供給業者XYにより供給され、ドア制御ユニット用のソフトウェアは、供給業者AB(欧州市場の場合)およびFG(米国市場の場合)により供給される。ターゲットユニットのタイプ、およびソフトウェアモジュールは、それぞれHWおよびSWで開始され、3桁または4桁の数字がそれに続く、品番により識別される。バージョンは、3桁の数字により識別される。例えば、SW−212−001は、品番がSW−212で、バージョン番号が001のソフトウェアモジュールを表す。品番とバージョンは、大括弧[]に入れられる。注釈行は、#で開始される。
【0074】
これらのソフトウェアモジュールが記憶されるCD自体は、最初のキーワード「CD name」の後に示される、品番とバージョン番号を有する。前記承認ファイルは、例えば、ソフトウェアモジュールSW−212−001が、品番HW−2002のターゲットユニットのバージョン001および002に対して承認され、関連ファイルはパス/FG/USA/APPL/V1に記憶されていることを規定する。ドア制御ユニットのバージョン001および002に対しては、ソフトウェアモジュールSW−202、SW−212、およびSW−222の、それぞれ特にバージョン001が承認される。
【0075】
キーワード「common」により、さまざまな種類のターゲットユニット用のソフトウェアモジュールの承認規定を有する領域が開始される。この例では、ソフトウェアモジュールSW−3001のバージョン002が、ターゲットユニットタイプHW−1002のバージョン001、002、およびターゲットユニットタイプHW−2002のバージョン001、002に対して承認される。
【0076】
承認ファイルの評価には、車両内に存在する各ターゲットユニットについての、承認ファイルの検索が含まれる。この検索により、開始の中括弧の後の最初の行でターゲットユニットタイプの品番およびバージョン番号が明らかになった場合、次の右括弧までの間に示されているすべてのソフトウェアモジュールが、このターゲットユニットに対して承認される。承認ファイル内の検索は、キーワード「common」で開始されるブロックまで継続されることが好ましい。
【0077】
承認ファイルの内容は、以下から自動的にコンパイルされ得る。
−ソフトウェアモジュールの個々の供給業者により提供される、承認についての情報から、
−ソフトウェアモジュールが記憶されているパスの、前記規定された最初の4つの構成要素から、およびソフトウェアモジュールとそれらのパスとの間の関連からも、そして、
−前記CDの品番およびバージョン番号から、である。
【0078】
CDは、任意のターゲットユニットに対して任意数の供給業者によるソフトウェアモジュールを記憶することができる。
【0079】
本発明の1つの実施形態では、中央構成管理システムまたはドキュメンテーションシステムが、車両に転送されるソフトウェアモジュールの第2の組を規定する。この車両に搭載された少なくとも1つのターゲットユニットに対して承認された、この第2の組からの各ソフトウェアモジュールが、転送される。この実施形態では、メニューファイルおよび自動スタートファイルは必要とされない。
【0080】
メニューファイルに記憶された情報は、代替となる選択肢をユーザに示すために評価される。この選択肢により、ユーザは、個々のファイルを直接選択する必要なしに、ソフトウェアモジュールの1つ以上のグループを選択することが可能になる。
【0081】
1つの例示的適用例では、ユーザは自然言語を選択し、それによりその自然言語でメッセージが音読されるようにする。中央ユニットには、マン/マシン相互関係のための構成要素が含まれており、ユーザはそれを利用して、例えばキーを押したり画面に触れたりすることにより、規定されたメニューから選択肢を選ぶ。ユーザは、最初に、複数の可能なアプリケーションのうちの1つを選択する。例えば、ユーザは、「音声出力」、「音声入力」、および「中止」(前記選択肢)の中から選択する。「スタイルガイド」、すなわちメニューの外観を規定する情報は、例えば、中央ユニット自体に記憶される。このメニュー項目は、CDおよび/または中央ユニットに記憶される。例えば、メニュー項目「音声出力」および「音声入力」はCDに記憶され、標準メニュー項目の「中止」は中央ユニットに記憶される。
【0082】
選択肢「音声出力」は、CD上の情報にリンクされている。このリンクは、例えば、キーワード「T2S」(text−to−speech)を使用してセットアップされる。選択肢「音声出力」は、同様に、中央ユニットに記憶されている情報により「T2Sにリンクされ、CD上のメニューファイルは、T2Sというキーワードで開始される情報を記憶している。
メニューファイルには、例えば、以下の行が含まれている。
【0083】
「Auto−Menu」はキーワードである。次の2行は、選択メニューがターゲットユニットタイプHW−1001のバージョン001および002に適用され、アプリケーション「T2S」が選択された場合に表示されることを規定する。
【0084】
ユーザによる音声出力機能の選択の後までに、メニューファイルがCDから読み込まれ、T2Sの検索が行われる。品番HW−1001のタイプの、バージョン001または002のターゲットユニットが車両に搭載されているかどうかを判定するための確認が実行される。
【0085】
例えば、バージョン001のターゲットユニットが車両に搭載されている。その場合、選択肢「Deutsch」(ドイツ語)−「English(UK)」(イギリス英語)−「English(US)」(アメリカ英語)−「Francais」(フランス語)−「Italiano」(イタリア語)−「Espanol」(スペイン語)を含む選択メニューが構築され、中央ユニットに記憶されているメニュー項目”Cancel”(キャンセル)が追加されて、すべてのメニュー項目が、マン/マシン相互関係のための構成要素により表示される。ユーザの選択に応じて、選択された言語にメニューファイル内でリンクされたソフトウェアモジュールが取り込まれる。例えば、ユーザは、音声出力のための言語として「Deutsch」(ドイツ語)を選択する。次に、ソフトウェアモジュールSW−555−001がターゲットユニットHW−1001−001に対して承認されているかどうかについての情報、およびソフトウェアモジュールSW−555−001が記憶されているCD上の位置についての情報が、承認ファイルから取得される。
【0086】
自動スタートファイルは、構成管理システムによってソフトウェアモジュールの組が規定されておらず、かつ、ユーザが選択を行わない場合に、どのソフトウェアモジュールが転送されるかを規定する情報を記憶する。このファイルの構文の例を以下に示す。
【0087】
「Do−Flash」は、転送されるべきソフトウェアモジュールに関する情報を含むブロックを開始するキーワードである。このブロックの中では、次の2つが規定されている。
− 車両が、タイプHW−1001−001のターゲットユニットを含む場合、最初にソフトウェアモジュールSW−101−001が転送され、次にソフトウェアモジュールSW−111−001が転送される。
− 車両が、タイプHW−1001−002のターゲットユニットを含む場合、最初にソフトウェアモジュールSW−101−001が転送され、次にソフトウェアモジュールSW−111−001が転送される。ただしこれは、キーワードIFとTHENの間の論理条件が満足された場合のみである。条件が満足されるのは、次の場合である。
−タイプHW−1102の、バージョン001〜009のいずれかのターゲットユニットが装備されており、
−タイプHW−2102の、バージョン001または002のターゲットユニットが装備されており、
−かつ、タイプHW−2302の、バージョン001〜009のいずれかのターゲットユニットが装備されていない場合である。
このファイル内にある00nは、バージョン001〜009の省略指定である。
【0088】
各ソフトウェアモジュールについて、次の2つのファイルも作成され、記憶される。即ち、−ソフトウェアモジュールの一部となるファイルを規定し、それらのファイルの記憶位置と、それらのファイルの転送順序を規定する、構成ファイルと、
−転送エラーおよび不正操作を認識するために使用される、セキュリティファイルと、である。
【0089】
これらの2つのファイルは、ソフトウェアモジュール用に規定された記憶位置に記憶されることが好ましい。上の例で、品番SW−102,バージョン番号001のソフトウェアモジュールに対して、このパスは、/XY/USA/0S/V1である。これらのファイルの構造を、次の2つの例で説明する。
【0090】
ソフトウェアモジュールSW−102−001のための構成ファイルには、以下の行が含まれる。
【0091】
このファイル内の記憶位置の規定は、ソフトウェアモジュールの記憶位置(この例では、/XY/USA/OS/V1)に関連したパスの詳細を示している。この規定は自動的にコンパイルされ、完全なパスとファイル名が(例えば、/XY/USA/OS/V1/DATA/USER/USER.DATが)形成される。
【0092】
これらの行は、ソフトウェアモジュールSW−102−001の転送中に、ファイルSETUP.EXE、INFO.TXT、CONTROLER.EXE、DRIVER.DLL、CONFIG.INI、DATA.DB2、およびUSER.DATが、この順序で転送されることを規定する。
【0093】
品番SW−111、バージョン番号001のソフトウェアモジュールのためのセキュリティファイルの1つの例を、次に示す。このセキュリティファイルには、以下の行が含まれる。
【0094】
これらの詳細により、以下が規定される。ソフトウェアモジュールのすべてのファイルの合計サイズは6764Kバイトである。この記載は、例えば、転送中の進行状況を表示するために使用される。すでにいくらのKバイト数が転送されたかが確認済みであり、構成ファイル内のこの記載は、合計でいくらのKバイト数が転送される必要があるかを意味している。この割合は、作業の進行状況を示すものであり、例えば棒グラフなどで表示される。
【0095】
CRC値(この例では16進数4758A08C)は、特に、車両および車両に搭載されている記憶装置への転送中に、転送エラーが発生していないかどうかを確認するために検査される。
【0096】
この例では、ソフトウェアモジュールは、ターゲットユニットの2つのバージョン、つまり、タイプHW−1001のバージョン001および002に対して承認される。したがって、2つの異なる署名が作成されてファイルに保存される(つまり、バージョンごとに1つの署名が作成される)。バージョンについての署名は、そのバージョンをデータストリームとして処理し、ハッシュ値を作り出すことにより作成されることが好ましい。署名は、このハッシュ値から、秘密鍵を使用して作成される。従って、署名は、ソフトウェアモジュールおよび秘密鍵に依存する。署名を作成するには、例えば、リベスト−シャミア−アドルマン(Rivest−Shamir−Adleman)(RSA暗号化)のアルゴリズムに基づく1024ビットの暗号化が使用される。
【0097】
署名は、不正アクセスおよび不正操作から厳重に保護されているコンピュータ上で作成される。例えば、供給業者はこのコンピュータを操作して、2つのバージョンおよび2つの署名を、自動車の製造業者に提供する。他の実施形態では、供給業者は前記2つのバージョンのみを製造業者に提供し、署名は製造業者が作成する。例えば、製造業者はその署名を供給業者に送信し、供給業者はソフトウェアモジュールを自社のターゲットユニットに転送し、その際に、その署名を検査のために使用する。第3の実施形態には、署名を作成し、秘密鍵を管理する、認可された委託センターが含まれる。
【0098】
ターゲットユニット内の上書き不能な固定記憶装置には、公開鍵が記憶される。公開鍵は、読み出すことはできるが、上書き、破損、または消去については、不注意によるものと意図的なものの両方に対して保護されている。供給業者がターゲットユニットに公開鍵を提供することが好ましい。署名の検査は、ソフトウェアモジュールが転送された後、インストールされる前に、公開鍵を使用して行われる。この検査により、ソフトウェアモジュールが信頼できる情報源からのものであり、破損も不正操作も行われていないということが保証される。
【0099】
転送中に、ソフトウェアモジュールの承認が検査され、必要に応じて選択され、選択されたソフトウェアモジュールのうち承認が認識されたもののファイルが転送される。この例では、中央ユニット用およびドア制御ユニット用のソフトウェアモジュールが、CDから転送される。CDは中央ユニット内の読み取り装置の中にあらかじめ配置されている。中央ユニット、ドア制御ユニット、並びに、転送動作の調整および監視を行う制御装置は、1つ以上のデータバスにより相互に接続され、また、車両に搭載されているさらなるユニットにも接続されている。制御装置は、車両に装備されるのではなく、転送動作のために車両に搭載されているデータバスに接続される。中央構成管理システムまたはドキュメンテーションシステムは、転送される必要のあるソフトウェアモジュールを選択する際に考慮される一組のソフトウェアモジュールを規定する。
【0100】
転送中におけるユニット間の通信には、ISO 14230−1、ISO 15765−1〜15765−4、およびVDA 14230−1〜VDA−14230−3により標準化されている「キーワードプロトコル2000」(Keyword Protocol 2000)(KWP2000)を使用することが好ましく、この「キーワードプロトコル2000」KWP2000では、コマンドは16進数によりコード化され、例えば、コマンド「ReadEDUIdentification」(ターゲットユニットの一つのタイプの識別子を読み出す)は、$1A,86によりコード化される。その他の転送プロトコルも同様に適合している。
【0101】
以下の例では、転送中に車両は整備工場に置かれている。転送中に、以下の手順が実行される。
− 制御装置が車両に接続される。制御装置は、この車両を、製造業者による他のすべての車両から区別する自動車識別名を確認し、また、データバスを介した放送により、関連するメッセージを送信することにより、このデータバスに接続されている他のすべてのユニットを診断モードにする。この診断モードでは、ユニットを起動することはできない。
− 制御装置は、データバスに接続されている他のすべてのユニットの識別名を確認する。この識別名は、ユニットの品番、バージョン番号、および必要に応じて、シリアル番号を含む。この確認は、データバスを介して要求を送信し、各ユニットがその識別名をデータバス上にのせることにより実行される。
− 次に、制御装置は、車両に搭載されているターゲットユニット上にどのソフトウェアモジュールがすでに存在しているかを確認する。これも、データバスを介した要求と応答により実行される。
− 制御装置は、挿入されているCDの品番とバージョン番号を、中央ユニットへの要求によって確認する。中央ユニット内の読み取り装置は、CDが正しく挿入されているかどうかを確認する。中央ユニットは、承認ファイルを読み込む。中央ユニットにインストールされているパーサが、挿入されているCDの品番およびバージョン番号を確認し、この情報をデータバスを介して制御装置に送信する。
− 制御装置は、他のユニット上の診断モードを終了させる。
− 制御装置は、中央構成管理システムに接続される。例えばイントラネットを使用することにより、制御装置は中央システムに、挿入されているCDの品番とバージョン番号、および車両に搭載されていることが確認されたターゲットユニットとソフトウェアモジュールの、品番とバージョン番号を送信する。
− 本実施形態では、中央構成管理システムは、どのソフトウェアモジュールがCDに記憶されているか、およびそれらのソフトウェアモジュールのうちのどれが、どのターゲットユニットタイプに対して承認されているかについての情報への、読み出しアクセス権を有する。中央構成管理システムは、ソフトウェアモジュールの第2の組を、制御装置に送信する。この第2の組で指定されたソフトウェアモジュールが、それに続いて転送される。
− 制御装置は、中央構成管理システムから切り離され、車両に再び接続される。
− 制御装置は、中央ユニットへの要求によって、再び、挿入されているCDの品番とバージョン番号を確認する。この新たな確認により、以前に挿入されていたCDが、それまでの間に交換または削除された可能性も考慮に入れられる。異なる品番およびバージョン番号が確認された場合、またはCDが挿入されていないことが確認された場合は、正しいCDの挿入と読み込みを要求するための、関連するメッセージが出力される。
− 制御装置は、再び、データバス上の他のすべてのユニットを診断モードにする。
− 中央ユニットに、この中央ユニット用のソフトウェアモジュールの品番とバージョン番号が送信され、また、制御装置のシリアル番号と転送の時期も送信される。中央ユニットは、この情報をすべて記憶する。
− 本実施形態では、上記中央ユニットは「インテリジェントユニット」である。この中央ユニットは、この中央ユニット用のソフトウェアモジュール、およびそれらのソフトウェアモジュールのそれぞれに対する構成ファイルとセキュリティファイルとを、みずから取得する。この目的のために、中央ユニットは、制御装置が要求に応じてこの中央ユニットに追加送信する、記憶位置に関する情報を評価する。
− 所定のソフトウェアモジュールがCD上で検出されない場合、または読み取り不能な場合、制御装置は、関連するエラーメッセージを生成する。
− 対応する情報がドア制御ユニットに送信され、そこに記憶される。ドア制御ユニットは、同様に、このドア制御ユニット用のソフトウェアモジュール、および構成ファイルとセキュリティファイルとを、みずから取得する。
− 制御装置は、中央ユニット用のすべてのソフトウェアモジュールが実際にこの中央ユニットに記憶されたことを確認し、また、ドア制御ユニットについても同じことを実行する。
− 秘密鍵を使用し、公開鍵を援用して作成され、中央ユニットに記憶されている、セキュリティファイルの署名を確認するよう、制御装置は中央ユニットに要求する。中央ユニットは、確認の結果を折り返し報告する。
− 制御装置は中央ユニットに対して、CRC値を確認するよう要求する。中央ユニットは、この結果も折り返し報告する。
− ドア制御ユニットについても、署名およびCRC値が確認され、結果が制御装置に報告される。
− 中央ユニットおよびドア制御ユニットに信号が送られ、それによりそれらのユニットは、新しいソフトウェアモジュールが転送されたという事実、およびどのソフトウェアモジュールが転送されたかをメモリセルに記憶するよう要求される。最初の信号はリセットフラグ(reset flag)である。各モジュールについて、起動フラグ(activating flag)もセットされる。
− 前記診断モードが終了される。リセットフラグがセットされたユニットは、電源が切られ、再び電源が入れられる。本実施例では、これは前記中央ユニットおよび前記ドア制御ユニットである。データバス上のその他のユニットは、一時的に停止される。電源が入れられると、起動フラグにより識別される転送済みソフトウェアモジュールが、インストールされ、起動される。
− 制御装置は、中央構成管理システムに再び接続される。制御装置は、中央システムに、車両の識別名、車両に搭載されていることが確認されたターゲットユニットのタイプの品番とバージョン番号、および車両への転送に成功したソフトウェアモジュールの品番とバージョン番号を送信する。
【0102】
作業者は、読み取り装置内にCDを配置し、転送が完了したら再びCDを取り出す必要があり、また、制御装置を車両に接続し、中央構成管理システムに接続し、その後、再び車両に接続する必要がある。
【0103】
ターゲットユニットが、例えば、転送プロトコルKWP2000に基づくメモリアドレスユニットの場合、ソフトウェアモジュールは、複数のファイルにわたって分割されるだけでなく、複数のセグメントにわたって分割され得る。ソフトウェアモジュールが複数のセグメントにわたって分割される場合、CDは、ソフトウェアモジュールと最初のセグメントのメインヘッダ、およびそれに続く各セグメントのサブヘッダを含むことが好ましい。従って、3つのセグメントを有するソフトウェアモジュールに対しては、メインヘッダと2つのサブヘッダが作成される。メインヘッダは、好ましくは、以下の情報を含む。
−ターゲットユニット内の、最初のセグメントが記憶されているメモリ領域の開始アドレスと、
−最初のセグメントの圧縮された長さと、
−最初のセグメントの圧縮されていない長さと、
−ソフトウェアモジュールの品番と、
−ソフトウェアモジュールのバージョン番号と、
−セグメントの総数と、
−メインヘッダのバージョンと、
−ソフトウェアモジュールのタイプなどのその他の記載と、である。
【0104】
サブヘッダは、好ましくは、以下の情報を含む。
−ターゲットユニット内の、さらなるセグメントが記憶されているメモリ領域の開始アドレスと、
−さらなるセグメントの圧縮された長さと、
−さらなるセグメントの圧縮されていない長さと、
−このさらなるセグメントのセグメント番号と、である。
【図面の簡単な説明】
【0105】
【図1】CDを移動記憶装置として使用した、本発明の例示的実施形態を示す。
Claims (12)
- ターゲット装置(20.1、20.2)内に装備されたターゲットユニットのためのソフトウェアモジュールを転送する方法であって、
−ソフトウェアモジュールが、記憶装置(30.1、30.2)内に記憶され、
−ユニットタイプ識別子が、前記ターゲットユニットに対して規定され、
−ソフトウェアタイプ識別子が、前記ソフトウェアモジュールに対して規定され、
−前記記憶装置(30.1、30.2)と前記ターゲット装置(20.1、20.2)との間に、ソフトウェアモジュールの転送の目的のために、データリンク(60)が少なくとも一時的にセットアップされ、
−前記ソフトウェアモジュールのうちのどれが転送されるかを決定するために、前記ユニットタイプ識別子およびソフトウェアタイプ識別子が使用される
方法において、
−前記ターゲット装置(20.1、20.2)は、移動装置、特に車両または搬送手段であり、
−前記記憶装置(30.1、30.2)は、移動記憶装置であり、
−前記ユニットタイプ識別子およびソフトウェアタイプ識別子を使用して、どのソフトウェアモジュールがどのターゲットユニットタイプに対して承認されるかを規定する、承認規定が規定され、
−前記転送時に実際に装備されている、少なくとも1つのターゲットユニットの前記タイプが確認され、
−少なくとも1つの記憶されているソフトウェアモジュールについて、実際に装備されているターゲットユニットの前記タイプに対して前記ソフトウェアモジュールが承認されているかどうかを判定するための確認が実行され、
−承認されていると認識された前記ソフトウェアモジュールが、前記移動記憶装置(30.1、30.2)から前記移動装置(20.1、20.2)に転送されることを特徴とする方法。 - さまざまなターゲットユニットを有する複数の移動装置(20.1、20.2)にソフトウェアモジュールを転送するために、1つ以上の類似の移動記憶装置(30.1、30.2)が使用されることを特徴とする、請求項1に記載の方法。
- −第1の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第1の位置に記憶され、
−第2の製造業者によるターゲットユニットのためのソフトウェアモジュールは、前記移動記憶装置上の第2の位置に記憶され、
−前記第1の製造業者によるターゲットユニットのための前記ソフトウェアモジュールについての承認規定は、前記第2の製造業者によるターゲットユニットのための前記ソフトウェアモジュールについての承認規定と組み合わされ、
−組み合わされた前記承認規定は、前記移動記憶装置上に記憶されることを特徴とする、請求項1または2に記載の方法。 - 前記承認規定は、前記移動記憶装置(30.1、30.2)上に記憶されることを特徴とする、請求項1〜3のいずれか一項に記載の方法。
- −前記承認規定は、構成管理システム内またはドキュメンテーションシステム内に記憶され、
−前記転送は、制御装置により制御され、
−前記承認規定は、前記構成管理システムまたはドキュメンテーションシステムから前記制御装置に転送されることを特徴とする、請求項1〜3のいずれか一項に記載の方法。 - −前記承認規定は、ソフトウェアモジュールの前記承認のための、少なくとも1つの条件を含み、
−前記承認条件は、前記移動装置上に、所定のターゲットユニットタイプおよび/または所定のソフトウェアモジュールが存在すること、または存在しないことを含み、
−前記承認確認は、前記承認条件の有効性の確認を含むことを特徴とする、請求項1〜5のいずれか一項に記載の方法。 - −一組のソフトウェアモジュールが規定され、
−前記組の中の各ソフトウェアモジュールについて、承認確認が実行され、
−前記組の中の、承認されていると認識された各ソフトウェアモジュールが、前記移動記憶装置から前記移動装置に転送されることを特徴とする、請求項1〜6のいずれか一項に記載の方法。 - 前記移動記憶装置上で識別される所定のソフトウェアモジュールに基づいて、前記組が規定されることを特徴とする、請求項7に記載の方法。
- 前記組は、
−構成管理システムまたはドキュメンテーションシステム内で識別される、選択されたソフトウェアモジュールに基づいて規定され、
−前記ソフトウェアモジュールの前記転送は、制御装置により制御され、
−どのソフトウェアモジュールが前記組に属するかについての情報が、前記構成管理システムまたは前記ドキュメンテーションシステムから、前記制御装置に転送されることを特徴とする、請求項7に記載の方法。 - −少なくとも1つのターゲットユニットが、音声入力または音声出力システムに属し、
−前記移動記憶装置は、さまざまな言語のためのソフトウェアモジュールを記憶し、
−前記組は、選択される言語に基づいて規定されることを特徴とする、請求項7〜9のいずれか一項に記載の方法。 - −前記転送に続いて、どのソフトウェアモジュールがエラーなしに実際に転送されたかの確認が実行され、
−構成管理システムが、
−前記移動装置(20.1、20.2)の例示的識別子、および
−実際に存在しているターゲットユニットの、前記ユニットタイプ識別子、および/または
−エラーなしに転送されたソフトウェアモジュールの、前記ソフトウェアタイプ識別子を記憶することを特徴とする、請求項1〜10のいずれか一項に記載の方法。 - 請求項1〜11のいずれか一項に記載の方法を実行するための装置であって、
−移動記憶装置(30.1、30.2)からソフトウェアモジュールおよび承認規定を読み込むための読み取り装置であって、前記承認規定は、ターゲットユニットおよびソフトウェアモジュールのためのタイプ識別子を使用して、前記ソフトウェアモジュールのどれが、どのターゲットユニットタイプに対して承認されているかを規定する読み取り装置と、
−前記移動記憶装置(30.1、30.2)から前記移動装置(20.1、20.2)へのソフトウェアモジュールの前記転送を制御するための制御装置と、
−実際に装備されているターゲットユニットのユニットタイプ識別子を確認するための装置と、
−どのソフトウェアモジュールが、前記移動装置(20.1、20.2)上に実際に装備されているどのターゲットユニットに対して承認されているかを確認するための装置であって、前記承認規定を評価するための手段を含む確認装置と
を含む装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10131394A DE10131394A1 (de) | 2001-06-28 | 2001-06-28 | Verfahren zum Übertragen von Software-Modulen |
PCT/EP2002/006995 WO2003003201A2 (de) | 2001-06-28 | 2002-06-25 | Verfahren zum übertragen von software-modulen |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004535637A true JP2004535637A (ja) | 2004-11-25 |
Family
ID=7689903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003509310A Withdrawn JP2004535637A (ja) | 2001-06-28 | 2002-06-25 | ソフトウェアモジュールの転送方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20040260751A1 (ja) |
EP (1) | EP1399813A2 (ja) |
JP (1) | JP2004535637A (ja) |
DE (1) | DE10131394A1 (ja) |
WO (1) | WO2003003201A2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10313389A1 (de) | 2003-03-25 | 2004-10-07 | Endress + Hauser Process Solutions Ag | Verfahren zur Übertragung von Softwarecode von einer Steuereinheit zu einem Feldgerät der Prozessautomatisierungstechnik |
DE10354107A1 (de) * | 2003-07-04 | 2005-01-20 | Bayerische Motoren Werke Ag | Verfahren zur Authentifikation von insbesondere in ein Steuergerät eines Kraftfahrzeugs ladbaren Softwarekomponenten |
KR100974419B1 (ko) | 2003-07-04 | 2010-08-05 | 바이에리셰 모토렌 베르케 악티엔게젤샤프트 | 차량 제어 유닛에 로딩할 수 있는 소프트웨어 컴포넌트의인증 방법 |
DE10349153A1 (de) * | 2003-10-15 | 2005-05-12 | Volkswagen Ag | Schalteinrichtung mit Zünd-/Anlassschalter |
DE102004002911B3 (de) * | 2004-01-20 | 2005-11-17 | Siemens Ag | Verfahren und System zum Austauschen von Daten zwischen Steuergeräten |
US7506309B2 (en) * | 2004-03-23 | 2009-03-17 | General Motors Corporation | Method for managing vehicle software configuration updates |
WO2007013091A1 (en) * | 2005-07-25 | 2007-02-01 | Trinity Future-In Pvt. Ltd | An electro-mechanical system for non-duplication of software |
DE102006021358A1 (de) * | 2006-04-18 | 2007-10-25 | Daimlerchrysler Ag | Verfahren zur benutzerindividuellen Konfiguration eines Fahrzeugprodukts, Fahrzeugprodukt, Server und Server-Client-System |
DE102007010763A1 (de) | 2007-03-06 | 2008-09-11 | Zf Friedrichshafen Ag | Verfahren zur adaptiven Konfigurationserkennung |
DE102008035557A1 (de) * | 2008-07-30 | 2010-02-04 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Einbringen von Daten, insbesondere eine Ablaufsteuerung, in mindestens ein erstes und ein zweites Steuergerät eines Kraftfahrzeugs |
CN105187361B (zh) * | 2014-06-19 | 2019-06-07 | 腾讯科技(深圳)有限公司 | 一种应用内容的推送方法及相关设备、系统 |
DE102016209750A1 (de) | 2016-06-03 | 2017-12-07 | Robert Bosch Gmbh | Verfahren zur Aktualisierung von steuerungsrelevanten Daten in einem Speicher einer elektronischen Steuereinheit |
DE102016221108A1 (de) | 2016-10-26 | 2018-04-26 | Volkswagen Aktiengesellschaft | Verfahren zum Aktualisieren einer Software eines Steuergeräts eines Fahrzeugs |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0644242B2 (ja) * | 1988-03-17 | 1994-06-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ・システムにおける問題解決方法 |
DE3834962A1 (de) * | 1988-10-13 | 1990-04-19 | Siemens Ag | Digitales programmiergeraet fuer hoergeraete |
DE4218804A1 (de) * | 1992-06-06 | 1993-12-09 | Vdo Schindling | Einrichtung zur Darstellung, Aufbereitung und Speicherung von Informationen in einem Kraftfahrzeug |
US5894571A (en) * | 1995-08-14 | 1999-04-13 | Dell U.S.A., L.P. | Process for configuring software in a build-to-order computer system |
US5794164A (en) * | 1995-11-29 | 1998-08-11 | Microsoft Corporation | Vehicle computer system |
US6799037B1 (en) * | 1996-12-12 | 2004-09-28 | Verizon Airfone Inc. | Method and apparatus for communication with a mobile unit |
US6247128B1 (en) * | 1997-07-22 | 2001-06-12 | Compaq Computer Corporation | Computer manufacturing with smart configuration methods |
JPH11141394A (ja) * | 1997-11-07 | 1999-05-25 | Nissan Motor Co Ltd | 車両制御用メモリ書き換え装置 |
DE19750372C2 (de) * | 1997-11-14 | 2002-09-19 | Bosch Gmbh Robert | Verfahren zum Betreiben von datenverarbeitenden Geräten |
JP2000089822A (ja) * | 1998-09-16 | 2000-03-31 | Mitsubishi Electric Corp | 車両用電子制御システム |
US6488585B1 (en) * | 1998-10-14 | 2002-12-03 | International Game Technology | Gaming device identification method and apparatus |
US6219836B1 (en) * | 1998-10-14 | 2001-04-17 | International Game Technology | Program management method and apparatus for gaming device components |
JP2000194539A (ja) * | 1998-12-24 | 2000-07-14 | Nec Corp | ソフトウェアインストールシステムおよびソフトウェアインストール方法 |
GB2357600A (en) * | 1999-12-23 | 2001-06-27 | Ibm | Hardware dependent software installation |
US6918112B2 (en) * | 2000-11-29 | 2005-07-12 | Microsoft Corporation | System and method to facilitate installation of components across one or more computers |
US6981150B2 (en) * | 2001-01-04 | 2005-12-27 | Cummins, Inc. | Apparatus and method for authorizing transfer of software into one or more embedded systems |
-
2001
- 2001-06-28 DE DE10131394A patent/DE10131394A1/de not_active Withdrawn
-
2002
- 2002-06-25 JP JP2003509310A patent/JP2004535637A/ja not_active Withdrawn
- 2002-06-25 WO PCT/EP2002/006995 patent/WO2003003201A2/de not_active Application Discontinuation
- 2002-06-25 EP EP02743240A patent/EP1399813A2/de not_active Withdrawn
- 2002-06-25 US US10/482,588 patent/US20040260751A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
DE10131394A1 (de) | 2003-02-06 |
WO2003003201A3 (de) | 2003-12-24 |
US20040260751A1 (en) | 2004-12-23 |
EP1399813A2 (de) | 2004-03-24 |
WO2003003201A2 (de) | 2003-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284586B (zh) | 一种软件授权许可实现方法和装置 | |
US8290660B2 (en) | Data access to electronic control units | |
CN107924443B (zh) | 用于过程控制的控制装置的固件升级方法及其系统 | |
US7899558B2 (en) | Updating and/or expanding the functionality of sequence control of at least one control unit | |
US6681212B1 (en) | Internet-based automated system and a method for software copyright protection and sales | |
CN101281468B (zh) | 生成固件更新文件和更新固件的方法和设备 | |
US20020010864A1 (en) | Transaction verification | |
US20010056462A1 (en) | Method for starting application programs and software product for starting application programs | |
JP2004535637A (ja) | ソフトウェアモジュールの転送方法 | |
US20080320471A1 (en) | System-Program Download System | |
CN101156166A (zh) | 使用机器属性来制止企业环境中的软件盗版的系统和方法 | |
WO2002059894A1 (fr) | Support d'enregistrement, dispositif de traitement d'informations, serveur de distribution de contenu, procede, programme et son support d'enregistrement | |
JP2000293368A (ja) | ソフトウェアの不正使用防止方法 | |
US20190034637A1 (en) | In-vehicle apparatus for efficient reprogramming and controlling method thereof | |
US7050892B1 (en) | Diagnostic tool security key | |
CN112069471A (zh) | 基于国产cpu的应用系统授权方法、装置及介质 | |
US20090271875A1 (en) | Upgrade Module, Application Program, Server, and Upgrade Module Distribution System | |
US7188255B1 (en) | Software delivery system | |
CN114021081A (zh) | 产品软件的授权系统及方法 | |
US20070294543A1 (en) | Method for reading encrypted data on an optical storage medium | |
CN114281065A (zh) | 车辆的电子控制单元刷写方法、装置及诊断设备 | |
JP3930576B2 (ja) | ソフトウェア不正使用防止機能を備えたコンピュータシステム | |
CN102812470A (zh) | 在第一次访问时的内容绑定 | |
JPH10116189A (ja) | ソフトウェアのインストール方法及びその計算機システム | |
CN116880871A (zh) | 车用控制器的刷新方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |