JP2007527562A - 埋め込みシステムの中に統合されるソフトウェアコンポーネントを管理する方法 - Google Patents
埋め込みシステムの中に統合されるソフトウェアコンポーネントを管理する方法 Download PDFInfo
- Publication number
- JP2007527562A JP2007527562A JP2006518306A JP2006518306A JP2007527562A JP 2007527562 A JP2007527562 A JP 2007527562A JP 2006518306 A JP2006518306 A JP 2006518306A JP 2006518306 A JP2006518306 A JP 2006518306A JP 2007527562 A JP2007527562 A JP 2007527562A
- Authority
- JP
- Japan
- Prior art keywords
- embedded system
- managing
- component
- function
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
本発明は、特にコンポーネント相互の呼び出し及び会話を含む、コンポーネントを管理する方法に関する。
好ましくは、前記コンポーネントは前記埋め込まれたコードによってダウンロードされる。
この場合は、該方法は、前記コンポーネントを復号化するステップも含む。
有利なことに、前記コンポーネントは、同じ関数を履行する別のコンポーネントで置換される。
有利なことに、前記実行メモリ領域は前記プロセッサがアクセス可能であり、実行の速度、消費に関して特殊な特性と、アクセス権実行に関してアクセスしやすさを有する。
さらに、前記PLUGスイッチング関数は、関連パラメータで処理される多様な呼び出しを記録する関数を実現する。
好ましくは、コンポーネントに関する呼び出しの前記記録は、内蔵式で前記コンポーネントをシミュレーションするために使用される。
この場合には、前記エラー検出記録は、いったんエラーが検出されるとエラーを分析することに責任のある別のコンピュータリソースに送信される。
有利なことに、それは実現されなかったターゲット関数のパラメータをコピーする動作を備えない。
別の実施形態によれば、ターゲット関数は前記埋め込みシステム以外の別のコンピュータリソースで実現される。
有利なことに、前記PLUGスイッチング関数は、ターゲット関数が使用できない関数識別子に対応する場合に、特殊なアクションを生成するステップも実行する。
好ましくは、前記PLUGスイッチング関数は、ターゲット関数を呼び出すためにコンポーネントの権利を検証するステップも実行する。
有利なことに、前記アクセス権テーブルは最終ユーザによって修正可能である。
有利なことに、前記PLUGスイッチング関数は、オリジナル関数識別子に対応する前記ターゲット関数が使用できない場合には、同等な関数を検索し、同じ機能であるが、ターゲット関数のフォーマットとは異なるフォーマットで実行し、及び前記同等な関数を実行するアクションも要求する。
さらに、前記対応のテーブルは前記ターゲット関数を実現するソフトウェアコンポーネントに対応する情報の前記項目の第1の対応のテーブルと、前記コンポーネントのそれぞれについて、前記関数の数と対応するコンポーネントでの前記ターゲット関数のアドレスとの間の第2の対応のテーブルに再分割される。
有利なことに、前記第2のテーブルは読取専用メモリに記録される。
好ましくは、前記第1のテーブルがランダムアクセスメモリに記録されることを特徴とする。
有利なことは、前記コンポーネントの実行は事前の許可に依存する。
さらに、事前の許可は埋め込みシステムによって保持されるキー(システムキー)と実行されるコンポーネントによって保持されるキー(コンポーネントキー)との間の一致に依存し、システムキーは前記埋め込みシステムを一意に指定する情報の項目から計算可能である。
さらに、別のコンピュータリソースによって送信される許可は、埋め込みシステムでの前記コンポーネントの実行を許可するためにコンポーネントキーとシステムキーとに結合されるキー(外部キー)を含む。
有利なことに、前記外部キーは、金銭上の取引きに続き、その商業的な配備の前に埋め込みシステムに保存される。
さらに、前記コンポーネントは、サービス品質情報のうちの少なくとも1つの項目を含む。
有利なことに、前記サービス品質情報は、最小要件情報、平均要件情報及びそれが機能するための最適要件情報、前記コンポーネントがそれが機能するために必要とする別のコンポーネント(関連コンポーネント)のリスト、及び関連コンポーネントによって必要とされるバージョン番号情報を含む、それが機能するためのコンポーネントのランダムアクセスメモリ要件である。
別の実施形態によれば、埋め込みシステムは、関連コンポーネントが前記コンポーネントによって示されるバージョン番号より大きいバージョン番号に応答しない場合にコンポーネントの実行に着手しない。
さらに、埋め込みシステムは、前記処理能力要件に従って埋め込み機能のプロセッサの周波数を修正する。
本発明は、前記方法のステップを実行するエンジンを備える点を特徴とし、少なくとも1つのエンジンを備える埋め込みシステムをシミュレーションする非埋め込みシステムにも関する。
本発明は、添付図に関して本発明の実施形態の、純粋に説明によって以下に示される説明の助けを借りてさらによく理解されるであろう。
34:コンポーネントの間の多様な通信(PLUG)の切り替えと制御を担当するエンティティ
35:多様なコンポーネントに関する情報を含むデータベース
36:多様なコンポーネントの活性化及び非活性化を担当するマネージャ
37:ソフトウェアエンジンのPLUGにリダイレクトされる手続き呼び出し
この図に関して、本発明の基本的な原則は以下の通りである。
−(内蔵式でコンパイル可能な)標準的な初期コードは、この初期コードの外部のリソースの全ての使用が以下により置換されるように自動的に作り直される(前処理)。
−PROXYまたはPLUGのどちらかと呼ばれる、コンポーネント単位のコードの単一のエントリへのプロセッサのリダイレクト
この単一のエンティティの値は、コンポーネントが埋め込みシステムで活性化されるその後修正できる。
−このリダイレクトの前のプロセッサとの関連での情報の追加であって、情報は要求される外部リソースを知る事を可能にする(例えば要求されるコンポーネントの数及び関連サービス)。
−エンジンは埋め込みシステムに位置付けられ、コンポーネントが実現するサービスに関する情報を保持することによってそれらを活性化することを可能にし、特にPLUGとのその通信を可能にする。PLUGは、標準モードで、いくつかのプロセッサ命令の中で、コンポーネントによって要求されるターゲット関数の情報を回復し、この関数(サービス)が位置付けられるコードの場所にプロセッサを直接的に「スキップ」させるソフトウェアエンドである。
この機構によって、ソフトウェアエンティティはPLUGを介してシステムの残りから完全に隔離される。PLUGは、システムの構成及び関連する制約に従って、通信フロー制御、(多様なプロセッサの間、またはさまざまな性質のコンポーネントまたはさまざまな特権の間の)リダイレクト、コンポーネントの置換、ある言語から別の言語への変換、別の実行エンティティへのゲートウェイ(プロセッサの別のタスク、別のメモリ領域、別のプロセッサ、チップカード、ネットワーク、付属品)の機能を追加できる。
例えば、サービス「ALARM(警報)」はいかなる瞬間でも前もってプログラムされた特定のアクションを生じさせる。警報コンポーネントのインターフェースにより、クライアントは、
−警報によりどのアクションをトリガするのかを定めることができる。
−このアクションがトリガされなければならない瞬間を定めることができる。
−コンポーネントのタイプ((Cで符号化された)バイナリ、JAVA(登録商標)等)
−提供されるサービスの説明
−コンポーネントの実行に必要なサービスとリソースのリスト
−特権、アクセス権
−(発呼者に関連して、コンポーネントに関連して等)アクセスされる方法
等の情報を含むことがある。
−最小要件、平均要件及び最適要件の形での、それが機能するためのコンポーネントのランダムアクセスメモリ要件であり得る。
−コンポーネントが、それが機能するために必要とする別のコンポーネント(関連コンポーネント)のリスト及びこれらの関連コンポーネントのバージョン番号であり得る。関連コンポーネントがコンポーネントによって示されるバージョン番号より高い、または等しいバージョン番号に対応しない場合、埋め込みシステムがコンポーネントの実行に着手しないことに留意しなければならない。
−コンポーネントの処理力に関しての要件であり得る。埋め込みシステムは特にコンポーネントまたは関連コンポーネントの能力に関して、要件に従って埋め込みシステムのプロセッサの周波数を修正する可能性があることに留意しなければならない。それは、リソースの処理可用性に従ってそのコンピュータリソースの一方または他方でコンポーネントを実行させることを決定する可能性がある。一般論としては、埋め込みシステムはその電力消費を最小限に抑えるために実行時にリソースを決定してよい。
ステップ51は、コンポーネントがシステム内でダウンロードできるダウンロードステップである。
次にステップ52の間にコンポーネントがインストールされる。その後、容易にコンポ−年を活性化できるようにするために、特定数のアクションが実行される。おそらく、コンポーネントのこのインストールの間、あるいはそのダウンロードの時点では、それはおそらくセキュリティの理由から暗号化された形式となる可能性がある。コンポーネントの実行のステップは、この場合には、さらに復号化ステップを備える。
さらに正確には、コンポーネントのインストールまたは実行は過去の許可に依存する可能性がある。この場合には、許可は埋め込みシステムにより保持されるキー(システムキー)と実行されるコンポーネントにより保持されるキー(コンポーネントキー)が一致する場合に付与される。システムキーは、例えば、埋め込みシステムを一意に指定する情報から計算されてよい。
ステップ55の間、コンポーネントをアンインストールする、あるいは交換することもできる。交換は静的に(つまり、コンポーネントがアクティブではなかった間に)または動的に(活性化中に)発生することがある。
コンテナはコンポーネントの実行に関与し、同コンテナは同じタイプのすべてのコンポーネントによって共用できる。
プロビジョナは、システム内でダウンロードできるためにコンポーネントの特定数のパラメータを検証することに関与する。
図6に描かれている、本発明によるエンジンは4つの別々のパーツで構築される(architectured)。
−それらが何であれシステムのトランスポート層と、
−ダウンロードを受け入れるまたは拒絶するプロビジョナと、
−システムで利用できる1つまたは複数の記憶システム
と対話する。
−インストーラ:ソフトウェアコンポーネントのインストール及びアンインストールに関与すること、
−アクティベータ:コンポーネントを活性化するまたは非活性化することに関与すること、
を含む。
最後に、PLUGは多様なコンポーネント間の通信に関与する。このインプリメンテーションは、以下にさらに広範に説明される。
最初に、コンポーネントがメモリにインストールされる。システムのメモリの一部はエンジン用に確保される。エンジンのマネージャは、この確保された領域にコンポーネントをインストールすることに関与する。コンポーネントは次々に記憶される。
その結果、コンポーネントはPLUGに接続される。コンポーネントが生成されたとき、このコンポーネントのすべての外部アクセスが(0xFFFFFFFなどの)単純な意味のないアドレスにリダイレクトされた。インストール時、コンポーネントは、意味のないアドレスに代入するPLUG内の入力アドレスを割り当てられる。したがって、コンポーネントの外部呼び出しは、事実上、コンポーネント専用のPLUGへの入力アドレスの呼び出しに変換される。
コンポーネントが作成されると、コンポーネントの初期コードのDrawLine関数の呼び出しは、あたかもDrawLineが呼び出されたのかのように同じパラメータを用いてPLUGの呼び出しにより置換される。さらに、必要とされるコンポーネント(2Dグラフィックコンポーネント)と必要とされるサービス(DrawLineサービス)の情報が追加される。実行時、DrawLine関数に対する呼び出しは、事実上、最初に、コンポーネント数とサービスに基づいてDrawLine関数にプロセッサをリダイレクトするであろうPLUGへの切り替えにより置換される。
−あるコンポーネントから別のコンポーネントへ通信ストリームをリダイレクトする、
−あるコンポーネントを(デバッグされた、または更新された、あるいは別のインプリメンテーションに対応する)別のコンポーネントで置換する、
−ある言語から別の言語にサービス要求を変換する(前記の例では、PLUGはDrawLine機能に対する要求を、別の言語に変換し、変換されたこの要求を適切なコンポーネントに送信できるであろう)。
−埋め込みシステム内、または埋め込みシステム外で要求を別のプロセッサにリダイレクトする(例えば、DrawLine関数は専用のグラフィックプロセッサで実現できるであろう。この瞬間に、PLUGは輸送を介してグラフィックプロセッサに常駐する別のPLUGに接続され、2つのPLUGは要求とサービス応答をトランスペアレントに互いに渡すことができる)ことが可能となる。
さらに、PLUGによって呼び出されるコンポーネントが使用できない場合、後者は、使用できないコンポーネントの識別子によって決定される特殊なアクションを生じさせる。これらのアクションは、警報メッセージの作成、または同じ機能を、同じフォーマットに、または初期ターゲット関数のうちの1つより別のフォーマットで達成するコンポーネントの検索である場合がある。
−個人領域ネットワークを管理する(例えば、画面はブルーツース型無線リンクを介して電話に接続される別の装置に位置する)、
−多様なコンポーネント間でアクセス権を制御する、
−システムの開発の理由から、PLUGを介して発生するすべての通信を説明することによって可視性を追加する、
−PC型エミュレータで関連サービスをエミュレートするために通信のいくつかをリダイレクトする、
−あるいは、コンポーネントとシステムの残りの間を通過する通信ストリーム全体がPLUGで非常に容易に操作できるという事実を使用して任意の別のアプリケーション
を可能にするブルーツース、WiFiのリンクである場合がある。
本発明は例によってのみ前述された。当然、当業者はそれでも特許の範囲から逸脱することなく本発明のさまざまな変形を生じさせる立場にある。
Claims (79)
- 埋め込みシステムを管理する方法であって、
コンピュータ装置の項目と関連付けられた少なくとも1つのオリジナルコードと、
前記埋め込みシステムと関連付けられた少なくとも1つの埋め込みコードと、
前記埋め込みシステムと関連付けられた少なくとも1台のプロセッサと、
を備え、
該方法が、
前記オリジナルコードによって呼び出されるとともに、前記オリジナルコードの中で実現されないターゲット関数を識別するために前記オリジナルコードを分析すること、
実現されない前記関数のそれぞれについて、対応する関数識別子を決定すること、
実現されない前記関数の呼び出しを、前記埋め込みコードで実現される少なくとも1つのPLUGスイッチング関数の呼び出しで置換すること、
からなる少なくとも1つの内蔵ソフトウェアコンポーネントの作成と、
前記埋め込みシステム上での前記コンポーネントの実行であって、前記PLUGスイッチング関数が前記関数識別子に対応する実現されない前記ターゲット関数のアドレスへの前記プロセッサのリダイレクトを制御する実行と、
からなるステップを含むことを特徴とする方法。 - 請求項1に記載の埋め込みシステムを管理する方法であって、さらに、
内蔵ソフトウェアコンポーネントの作成時に、
コンポーネント内で定められるオリジナル関数のアドレスをパラメータとして有するターゲット関数呼び出しを識別するために前記オリジナルコードを分析するステップと、
特殊な関数の呼び出しで、前記コールバックパラメータを置換するステップと、
前記関連付けられた特殊な関数を自動的に生成するステップであって、関数は、前記オリジナル関数の識別子を供給し、前記埋め込みコードによって実現される少なくとも1つのPLUGスイッチング関数を呼び出す、生成するステップと、
を備える方法。 - 請求項1に記載の埋め込みシステムを管理する方法であって、さらに、
内蔵ソフトウェアコンポーネントの作成時に、
オリジナルコードでは定められていない、前記コンポーネントが実行できるために必要とする情報を識別するために前記オリジナルコードを分析するステップと、
この欠けている情報のリストを、それが生成されるときに前記コンポーネントに追加するステップと、
前記コンポーネントの実行時に、前記埋め込みシステムで前記コンポーネントを実行可能にするために、初期に欠けていた情報の1つまたは複数の項目がいったんシステムによって供給される、前記コンポーネントのコードを修正するステップと、
を備える方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが前記埋め込みシステムに常駐することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが前記埋め込みコードによってダウンロードされることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが、それが作成されるときに暗号化された形式であることを特徴とする、方法。 - 請求項6に記載の埋め込みシステムを管理する方法であって、さらに、
前記コンポーネントを復号化するステップを備えることを特徴とする方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが同じ機能を履行する別のコンポーネントで置換される、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが、実行のために、それが当初位置していたメモリ領域とは異なる領域であるいわゆる実行メモリ領域を含む埋め込みシステムのメモリ領域に入れられることを特徴とする、方法。 - 請求項9に記載の埋め込みシステムを管理する方法において、
前記実行メモリ領域が前記プロセッサによりアクセス可能であり、前記実行メモリ領域が、実行速度、消費またはアクセス可能性に関する特定の特性、あるいはアクセス権に関する特定の特性を所有することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が関連パラメータを用いて処理される多様な呼び出しを表示する関数を実現することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が関連パラメータを用いて処理される多様な呼び出しを記録する関数を実現することを特徴とする、方法。 - 請求項12に記載の埋め込みシステムを管理する方法において、
前記呼び出しの前記記録が前記呼び出しのそれぞれに少なくとも1つの追加の情報の項目を備えることを特徴とする、方法。 - 請求項13に記載の埋め込みシステムを管理する方法において、
前記追加の情報が時間情報であることを特徴とする、方法。 - 請求項13に記載の埋め込みシステムを管理する方法において、
前記追加の情報が実行コンテキスト情報であることを特徴とする、方法。 - 請求項13に記載の埋め込みシステムを管理する方法において、
前記追加の情報がメモリ使用情報であることを特徴とする、方法。 - 請求項12に記載の埋め込みシステムを管理する方法において、
前記コンポーネントに関する呼び出しの前記記録が、内蔵式で前記コンポーネントをシミュレーションするために使用されることを特徴とする、方法。 - 請求項12に記載の埋め込みシステムを管理する方法において、
前記コンポーネントに関する呼び出しの前記記録が埋め込みコードの中のエラーの検出に使用されることを特徴とする、方法。 - 請求項18に記載の埋め込みシステムを管理する方法において、
前記エラー検出記録が、いったんエラーが検出されるとエラーを分析することに関与する別のコンピュータリソースに送信されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
実現されないターゲット関数の識別子がPLUGスイッチング関数のパラメータを構成することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法であって、
実現されないターゲット関数パラメータをコピーする動作を備えないことを特徴とする方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
実現されない関数の識別子が、PLUSスイッチング関数の呼び出しの前にプロセッサのスタックに記憶され、記憶された識別子が次に前記識別子に対応する関数への前記リダイレクトの前記制御を実現するために前記スイッチング関数によって使用されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数の呼び出しの前に、前記実現されない関数の前記識別子が前記プロセッサのレジスタに記憶され、記憶された識別子が次に、前記識別子に対応する前記関数へのリダイレクトの前記制御を実現するために、前記スイッチング関数により使用されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記ターゲット関数が前記埋め込み装置の別のプロセッサで実現されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記ターゲット関数が前記埋め込みシステム以外の別のコンピュータリソースで実現されることを特徴とする方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、呼び出された前記ターゲット関数と関連付けられた特殊なアクションの集合を実行し、ターゲット関数によるすべてのアクションが以前に前記埋め込みシステムで定められ、記憶されていることを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合がプロセッサの1つのコンテキストから別のコンテキストまでの通過を備えることを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合が別のコンポーネントのインストール及び実行を含むことを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合が、前記ターゲット関数の前記呼び出しの1つまたは複数のコンポーネントの通知を含むことを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合が、前記埋め込みシステムのユーザの通知を含むことを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合が、別のコンピュータリソースの通知を含むことを特徴とする、方法。 - 請求項26に記載の埋め込みシステムを管理する方法において、
特殊なアクションの前記集合が、動的に修正可能であることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、また、前記ターゲット関数が使用できない関数識別子に対応する場合に、特殊なアクションを生成するステップを実行することを特徴とする、方法。 - 請求項33に記載の埋め込みシステムを管理する方法において、
前記特殊なアクションが、前記使用できない関数の前記識別子の属性により決定されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、また、前記ターゲット関数を呼び出すために前記コンポーネントの権利を検証するステップを実行することを特徴とする、方法。 - 請求項35に記載の埋め込みシステムを管理する方法において、
前記検証が、どのコンポーネントがどの関数を呼び出すことができるのかを示すアクセス権テーブルから実行されることを特徴とする、方法。 - 請求項36に記載の埋め込みシステムを管理する方法において、
前記アクセス権テーブルが最終ユーザによって修正可能であることを特徴とする、方法。 - 請求項36に記載の埋め込みシステムを管理する方法において、
前記アクセス権テーブルが別のコンピュータリソースによって遠隔に修正可能であることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、また、オリジナル関数識別子に対応する前記ターゲット関数が使用できない場合には、同等な関数を検索し、前記ターゲット関数のフォーマットと異なるフォーマットであるが同じ機能を実行し、前記同等な関数を実行するアクションを制御することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、また、識別子の関数に対応する前記関数が使用できない場合には、前記使用できない関数に対応するコンピュータリソースの位置を決め、前記検索から生じる前記関数を実行するアクションを制御することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記ターゲット関数識別子が、前記ターゲット関数を実現する前記ソフトウェアコンポーネントに対応する第1の情報の項目と、前記コンポーネントの中の前記ターゲット関数の数に対応する第2の情報の項目とを備えることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記PLUGスイッチング関数が、前記ターゲット関数識別子と前記ターゲット関数のアドレスとの間の対応の少なくとも1つのテーブルを使用して実行されることを特徴とする、方法。 - 請求項41および42に記載の埋め込みシステムを管理する方法において、
前記対応のテーブルが、前記ソフトウェアコンポーネントに対応する前記情報と、前記ターゲット関数を実現する前記コンポーネントとの間の第1の対応のテーブル、及び前記コンポーネントのそれぞれについて、前記関数の前記数と、前記対応するコンポーネントでの前記ターゲット関数の前記アドレスとの間の第2の対応のテーブルに再分割されることを特徴とする、方法。 - 請求項43に記載の埋め込みシステムを管理する方法において、
前記第2のテーブルが、コンポーネント作成時に生成されることを特徴とする、方法。 - 請求項43に記載の埋め込みシステムを管理する方法において、
前記第2のテーブルが読取専用メモリに記録されることを特徴とする、方法。 - 請求項43に記載の埋め込みシステムを管理する方法において、
前記第1のテーブルがランダムアクセスメモリに記録されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントのインストールが事前の許可に依存することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントの実行が事前の許可に依存することを特徴とする、方法。 - 請求項48または47に記載の埋め込みシステムを管理する方法において、
前記事前の許可が、前記埋め込みシステムによって保持されるキー(システムキー)と、実行されるコンポーネントにより保持されるキー(コンポーネントキー)との間の一致に依存し、前記システムキーが前記埋め込みシステムを一意に指定する情報から計算可能であることを特徴とする、方法。 - 請求項48または47に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが前記埋め込みシステムによって実行されなければならないときに、別のコンピュータリソースに通知が供給されること、及びこの別のコンピュータリソースが、この通知に続いて、前記コンポーネントを実行する許可または拒絶を前記埋め込みシステムに送信することを特徴とする、方法。 - 請求項50に記載の埋め込みシステムを管理する方法において、
前記別のコンピュータリソースが、前記通知に続いて、前記コンポーネントを実行する許可または拒絶を前記埋め込みシステムに送信することを特徴とする、方法。 - 請求項48または47に記載の埋め込みシステムを管理する方法において、
前記別のコンピュータリソースにより送信される前記許可が、埋め込みシステム上の前記コンポーネントの実行を許可するために、前記コンポーネントキーと前記システムキーとに結合されるキー(外部キー)を含むことを特徴とする、方法。 - 請求項48または47に記載の埋め込みシステムを管理する方法において、
前記別のコンピュータリソースにより送信される前記許可が、前記別のコンピュータリソースでの金銭上の取引きの正確な実行に関連付けられていることを特徴とする、方法。 - 請求項52に記載の埋め込みシステムを管理する方法において、
前記外部キーが、金銭上の取引きに続き、その商業的な配備の前に埋め込みシステム内に保存されることを特徴とする、方法。 - 請求項52に記載の埋め込みシステムを管理する方法において、
前記外部キーが、金銭上の取引きに続いて、埋め込みシステムに保存されることを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントがサービス品質情報のうちの少なくとも1つの項目を含むことを特徴とする、方法。 - 請求項56に記載の埋め込みシステムを管理する方法において、
前記サービス品質情報が、前記コンポーネントの実行前にリソースを割り当てるために前記埋め込みシステムによって使用されることを特徴とする、方法。 - 請求項56に記載の埋め込みシステムを管理する方法において、
前記サービス品質情報が、前記コンポーネントがそれが機能するためのランダムアクセスメモリ要件であることを特徴とする、方法。 - 請求項58に記載の埋め込みシステムを管理する方法において、
前記コンポーネントの前記ランダムアクセスメモリ要件が、それが機能するための最小要件情報、平均要件情報、及び最適要件情報を含むことを特徴とする、方法。 - 請求項56に記載の埋め込みシステムを管理する方法において、
前記サービス品質情報が、前記コンポーネントがそれが機能するために必要とする別のコンポーネント(関連コンポーネント)のリストであることを特徴とする、方法。 - 請求項60に記載の埋め込みシステムを管理する方法において、
関連コンポーネントの前記リストが前記関連コンポーネントによって必要とされるバージョン番号情報を含むことを特徴とする、方法。 - 請求項61に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムが、前記関連コンポーネントが前記コンポーネントによって示される前記バージョン番号に応答しない場合に、前記コンポーネントの前記実行に着手しないことを特徴とする、方法。 - 請求項61に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムが、前記関連コンポーネントが前記コンポーネントにより示されるバージョン番号より大きいバージョン番号に応答しない場合に、前記コンポーネントの前記実行に着手しないことを特徴とする、方法。 - 請求項56に記載の埋め込みシステムを管理する方法において、
前記サービス品質情報が、前記コンポーネントの処理能力要件であることを特徴とする、方法。 - 請求項64に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムが、前記処理能力要件に応じて前記埋め込みシステムのプロセッサの周波数を修正することを特徴とする、方法。 - 請求項64に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムが、前記使用可能なリソースと前記多様なコンピュータリソースの処理可用性に従って前記コンポーネントを前記埋め込みシステムのどのコンピュータリソースで実行するのかを決定することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムの電力消費を最小限に抑えるために、前記埋め込みシステムが前記コンポーネントをそのコンピュータリソースの一方または他方で実行させることを決定することを特徴とする、方法。 - 請求項56に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムがサービス品質情報のうちの少なくとも1つの項目で前記コンポーネントにより表される要件を保証できない場合に、前記埋め込みシステムが前記コンポーネントの実行を拒絶することを特徴とする、方法。 - 請求項1に記載の埋め込みシステムを管理する方法において、
前記コンポーネントが、前記コンポーネントにより実行される機能を指定するための少なくとも1つの情報の項目を含むことを特徴とする、方法。 - 請求項69に記載の埋め込みシステムを管理する方法において、
前記情報が前記コンポーネントの名前であることを特徴とする、方法。 - 請求項69に記載の埋め込みシステムを管理する方法において、
前記情報が前記コンポーネントのバージョン番号であることを特徴とする、方法。 - 請求項69に記載の埋め込みシステムを管理する方法において、
前記情報が、前記コンポーネントにより実現される関数のリストであることを特徴とする、方法。 - 請求項69に記載の埋め込みシステムを管理する方法において、
前記埋め込みシステムが、以前に要求を行った別のコンピュータリソースに、前記埋め込みシステム上で利用可能なコンポーネントのリスト、及び関連コンポーネント情報を供給できることを特徴とする、方法。 - 前記埋め込みシステムにより実行される完全なコードが請求項1に記載の方法に従って得られるコンポーネントに分割されることを特徴とする埋め込みシステムを管理する方法。
- 請求項74に記載の埋め込みシステムを管理する方法において、
初期システムのコンポーネントへの分割が、前記コンポーネントにより実現されないターゲット関数の数を最小限に抑えるために行われることを特徴とする、方法。 - 請求項75に記載の埋め込みシステムを管理する方法において、
初期システムのコンポーネントへの分割が、その後に修正される確率で前記コンポーネントのサイズを相関付けることにより行われることを特徴とする、方法。 - 少なくとも1つのエンジンを備える埋め込みシステムであって、
前記エンジンが請求項1に記載の方法のステップを実行することを特徴とするシステム。 - 少なくとも1つのエンジンを備える埋め込みシステムをシミュレーションする非埋め込みシステムであって、
前記エンジンが請求項1に記載の方法のステップを実行することを特徴とする、システム。 - 埋め込みエンジンであって、
請求項1に記載の方法のステップを実行することを特徴とする埋め込みエンジン。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0308489A FR2857476B1 (fr) | 2003-07-10 | 2003-07-10 | Systeme permettant d'optimiser la gestion des composants logiciels integres dans un systeme embarque, notamment dans un telephone mobile |
FR03/08489 | 2003-07-10 | ||
FR04/03174 | 2004-03-26 | ||
FR0403174A FR2857471B1 (fr) | 2003-07-10 | 2004-03-26 | Procede de gestion des composants logiciels integres dans un systeme embarque |
PCT/FR2004/001820 WO2005008509A2 (fr) | 2003-07-10 | 2004-07-09 | Procede de gestion des composants logiciels integres dans un systeme embarque |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007527562A true JP2007527562A (ja) | 2007-09-27 |
JP2007527562A5 JP2007527562A5 (ja) | 2010-09-16 |
JP4724660B2 JP4724660B2 (ja) | 2011-07-13 |
Family
ID=33542632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006518306A Expired - Fee Related JP4724660B2 (ja) | 2003-07-10 | 2004-07-09 | 組み込みシステムの中に統合されるソフトウェアコンポーネントを管理する方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7757296B2 (ja) |
EP (1) | EP1649363B1 (ja) |
JP (1) | JP4724660B2 (ja) |
FR (1) | FR2857471B1 (ja) |
RU (1) | RU2359316C2 (ja) |
WO (1) | WO2005008509A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100119961A (ko) * | 2009-05-04 | 2010-11-12 | 삼성전자주식회사 | 함수를 이용한 시뮬레이션 수행 방법 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7853925B2 (en) * | 2006-12-13 | 2010-12-14 | Sap Ag | System and method for managing hierarchical software development |
FR2919084A1 (fr) * | 2007-07-17 | 2009-01-23 | Open Plug Sa | Procede de gestion de ressources partagees d'un systeme informatique et module superviseur de mise en oeuvre,ainsi que le systeme informatique muni d'un tel module |
US8487225B2 (en) | 2007-10-15 | 2013-07-16 | E I Du Pont De Nemours And Company | Microwave field director structure having metal vanes |
US8676714B2 (en) * | 2009-06-11 | 2014-03-18 | Microsoft Corporation | Hardware specific product license validation |
US8561035B2 (en) * | 2009-09-03 | 2013-10-15 | International Business Machines Corporation | Method and system to discover possible program variable values by connecting program value extraction with external data sources |
US8910133B2 (en) * | 2010-06-07 | 2014-12-09 | Microsoft Corporation | Library conformity checker |
RU2628176C2 (ru) * | 2012-12-14 | 2017-08-15 | Телефонактиеболагет Л М Эрикссон (Пабл) | Системы, способы и компьютерные программные продукты для процесса сборки и загрузки программного обеспечения с использованием службы компиляции и развертывания |
US9354849B2 (en) * | 2013-03-14 | 2016-05-31 | Apperian, Inc. | Modification of compiled applications and application management using retrievable policies |
RU2653984C2 (ru) * | 2013-12-05 | 2018-05-15 | Закрытое акционерное общество "Лаборатория Касперского" | Способ и система ассоциирования агентов управления устройством с пользователем устройства |
US10698671B2 (en) | 2015-03-30 | 2020-06-30 | Arxan Technologies, Inc. | Processing, modification, distribution of custom software installation packages |
US11424931B2 (en) | 2016-01-27 | 2022-08-23 | Blackberry Limited | Trusted execution environment |
US10599409B2 (en) | 2016-02-02 | 2020-03-24 | Blackberry Limited | Application lifecycle operation queueing |
CN105760195A (zh) * | 2016-02-17 | 2016-07-13 | 吴伟民 | 车辆电子设备的功能加载方法及系统 |
RU2724639C2 (ru) * | 2016-06-24 | 2020-06-25 | Акционерное общество "Лаборатория Касперского" | Способ связывания незарегистрированного агента управления устройством с пользователем |
EP4066446A1 (en) * | 2019-11-25 | 2022-10-05 | Telefonaktiebolaget LM Ericsson (publ) | Technique for replacing vnfms in a vnf based environment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0949747A1 (fr) * | 1996-10-21 | 1999-10-13 | Sonceboz S.A. | Moteur polyphasé, notamment pour l'entraínement d'une aiguille d'un afficheur |
JP2001527234A (ja) * | 1997-12-19 | 2001-12-25 | ハネウェル・インコーポレーテッド | 異種開発ツール・セットを使用したオブジェクト指向コントローラ内のスタティック・リンクおよびダイナミック・リンクした機能に対するコール機構 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870588A (en) * | 1995-10-23 | 1999-02-09 | Interuniversitair Micro-Elektronica Centrum(Imec Vzw) | Design environment and a design method for hardware/software co-design |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
SE9800696D0 (sv) * | 1998-03-05 | 1998-03-05 | Nokia Satellite Systems Ab | Sätt vid datorsystem |
US6188975B1 (en) * | 1998-03-31 | 2001-02-13 | Synopsys, Inc. | Programmatic use of software debugging to redirect hardware related operations to a hardware simulator |
-
2004
- 2004-03-26 FR FR0403174A patent/FR2857471B1/fr not_active Expired - Fee Related
- 2004-07-09 JP JP2006518306A patent/JP4724660B2/ja not_active Expired - Fee Related
- 2004-07-09 WO PCT/FR2004/001820 patent/WO2005008509A2/fr active Application Filing
- 2004-07-09 EP EP04767651.5A patent/EP1649363B1/fr active Active
- 2004-07-09 RU RU2006103986/09A patent/RU2359316C2/ru not_active IP Right Cessation
-
2006
- 2006-01-10 US US11/328,725 patent/US7757296B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0949747A1 (fr) * | 1996-10-21 | 1999-10-13 | Sonceboz S.A. | Moteur polyphasé, notamment pour l'entraínement d'une aiguille d'un afficheur |
JP2001527234A (ja) * | 1997-12-19 | 2001-12-25 | ハネウェル・インコーポレーテッド | 異種開発ツール・セットを使用したオブジェクト指向コントローラ内のスタティック・リンクおよびダイナミック・リンクした機能に対するコール機構 |
Non-Patent Citations (1)
Title |
---|
JPN5006008521, "DYNAMIC LOADING USING AN EXTENDED ROUTER LINKAGE MECHANISM", IBM Technical Disclosure Bulletin, 198802, Vol.30, No.9, pp.373−374, US, IBM Corp. * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100119961A (ko) * | 2009-05-04 | 2010-11-12 | 삼성전자주식회사 | 함수를 이용한 시뮬레이션 수행 방법 |
KR101628774B1 (ko) | 2009-05-04 | 2016-06-10 | 삼성전자주식회사 | 함수를 이용한 시뮬레이션 수행 방법 |
Also Published As
Publication number | Publication date |
---|---|
RU2359316C2 (ru) | 2009-06-20 |
RU2006103986A (ru) | 2006-07-27 |
EP1649363B1 (fr) | 2019-06-12 |
EP1649363A2 (fr) | 2006-04-26 |
JP4724660B2 (ja) | 2011-07-13 |
US20060161768A1 (en) | 2006-07-20 |
FR2857471A1 (fr) | 2005-01-14 |
WO2005008509A2 (fr) | 2005-01-27 |
FR2857471B1 (fr) | 2008-09-26 |
WO2005008509A3 (fr) | 2005-09-01 |
US7757296B2 (en) | 2010-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7757296B2 (en) | Method of managing software components that are integrated into an embedded system | |
US8893222B2 (en) | Security system and method for the android operating system | |
CN102460382B (zh) | 标注虚拟应用进程 | |
KR101031409B1 (ko) | 동적으로 가상 머신을 생성하기 위한 방법, 제조물품 및 시스템 | |
US20080222160A1 (en) | Method and system for providing a program for execution without requiring installation | |
US8307058B2 (en) | Apparatus, method, and computer program product for processing information | |
JP2007527562A5 (ja) | ||
US20060184931A1 (en) | System Including Run-Time Software To Enable A Software Application To Execute On An Incompatible Computer Platform | |
KR100871778B1 (ko) | 중앙집중형 동적 어드레싱 매니저를 이용한 동적 어드레싱방법 및 장치 | |
EA006814B1 (ru) | Система и способ использования множества приложений | |
CN106066803B (zh) | 应用程序运行控制的方法及装置 | |
CN114721719B (zh) | 一种在集群中容器化部署异构应用的方法和系统 | |
CN105765533A (zh) | 用于固件虚拟化的方法和装置 | |
JP2004503866A (ja) | モジュラーコンピュータシステムおよび関連方法 | |
CN104699503A (zh) | 一种替换安卓系统中函数的执行逻辑的方法及装置 | |
CN105094791A (zh) | 状态栏通知的存储方法及装置 | |
CN107368339B (zh) | 容器入口程序运行方法、系统、设备及存储介质 | |
JP2017142791A (ja) | コード保護方法およびコンピュータプログラム | |
KR20210144045A (ko) | 마이크로서비스 아키텍처 애플리케이션 실행 시스템과 방법 및 이를 위한 컴퓨터 프로그램 | |
CN112395096A (zh) | 远程函数调用的处理方法、装置、电子设备及存储介质 | |
CN115994004A (zh) | 一种应用程序接口调用方法及装置 | |
US20060143715A1 (en) | Method and apparatus for providing security policy enforcement | |
CN113553068B (zh) | 一种下载应用包的方法、装置和电子设备 | |
JP4063573B2 (ja) | デバイスドライバの組み込み・実行方式、組み込み・実行方法、及びプログラム | |
CN114816445A (zh) | 系统平台架构、函数发布方法及装置、平台及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100413 |
|
A524 | Written submission of copy of amendment under section 19 (pct) |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20100628 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110311 |
|
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: 20110405 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110411 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140415 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4724660 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |