(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-12
(45)【発行日】2024-03-21
(54)【発明の名称】オペレーティングシステムでタスクを起動するための方法及び装置
(51)【国際特許分類】
G06F 9/48 20060101AFI20240313BHJP
【FI】
G06F9/48 300H
G06F9/48 300A
【外国語出願】
(21)【出願番号】P 2019087342
(22)【出願日】2019-05-07
【審査請求日】2022-04-25
(31)【優先権主張番号】10 2018 207 175.6
(32)【優先日】2018-05-08
(33)【優先権主張国・地域又は機関】DE
(73)【特許権者】
【識別番号】591245473
【氏名又は名称】ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
(74)【代理人】
【識別番号】100118902
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100196508
【氏名又は名称】松尾 淳一
(74)【代理人】
【氏名又は名称】中西 基晴
(74)【代理人】
【識別番号】100147991
【氏名又は名称】鳥居 健一
(72)【発明者】
【氏名】ライナー・バウムゲルトナー
【審査官】坂東 博司
(56)【参考文献】
【文献】米国特許出願公開第2018/0150529(US,A1)
【文献】特開平10-161905(JP,A)
【文献】特開平07-210400(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/48
(57)【特許請求の範囲】
【請求項1】
オペレーティングシステム
上でタスク(21)を起動する方法(10)において、
いくつかの起動方式(20)のうちのそれぞれ1つにタスク(21)を割り当て(11)、
起動方式(20)にトリガイベント(22,23)を割り当て(12)、
起動方式(20)のうちの1つの起動方式(20)に割り当てられたトリガイベントが発生した場合に、起動方式(20)に割り当てられたタスク(21)を起動方式(20)にしたがって起動する(13)
、
ことを特徴とする、オペレーティングシステム
上でタスク(21)を起動する方法(10)。
【請求項2】
請求項
1に記載の方法(10)を実施するように構成された、コンピュータプログラム。
【請求項3】
請求項
2に記載のコンピュータプログラムが記憶されている、機械可読記憶媒体。
【請求項4】
請求項
1に記載の方法(10)を実施するように構成された、装置(40)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オペレーティングシステムでタスクを起動する方法に関する。さらに本発明は、対応する装置、対応するコンピュータプログラム、及び対応する記憶媒体に関する。
【背景技術】
【0002】
情報科学では、「サイバー物理システム(CPS)」とは、フィールドバス又は別のコンピュータネットワークなどのデータインフラストラクチャを介して通信する機械部品又は電子部品と情報科学ソフトウェア技術部品の任意の組合せを表す。サイバー物理システムの構成は、有線又は無線通信ネットワークに基づいて、組み込まれたシステムのネットワークを形成することにより生じる。従来技術によるサイバー物理システムは極めて複雑であることを特徴とする。
【0003】
CPSの一般的な使用分野には、信頼性の高い医療機器及びシステム、年齢に応じた支援システム、IT交通管制システム及び交通ロジスティクスシステム、自動車用のネットワーク化された安全及び運転者支援システム、産業プロセス制御及び自動化システム、持続可能な環境制御及び監視システム、エネルギー供給管理システム、軍事システムネットワーキングシステム、並びに通信及び文化インフラストラクチャシステムが含まれる。
【0004】
例えば、国際公開第2016023767号パンフレットは、部分的な自動化及び運転者との協働によって車両ガイドを行うように構成された車両用の運転者支援システムを開示している。この運転者支援システムは、特定の運転状況が発生した場合に運転者によって作動されなければならない少なくとも1つの操作要素を含み、したがって、部分的に自動化された運転の実施時には運転者の覚醒及び注意が確保されている。操作要素の作動に応じて、現在実施されている部分的に自動化された運転操作又は部分的に自動化された運転と、操作要素の作動時又は作動後に実施される部分的に自動化された運転操作とが継続されるか、実施時に適合されるか、又は終了される。
【発明の概要】
【0005】
本発明は、独立請求項に記載のオペレーティングシステムでタスクを起動する方法、対応する装置、対応するコンピュータプログラム、及び対応する記憶媒体を提供する。
【0006】
提案したアプローチは、高度自動運転のための運転者支援システムが現在開発段階にあるという知識に基づいている。このようなソフトウェアの複雑性は、今日の自動車技術的な(自動車)システムの複雑性を数桁上回ることもある。
【0007】
さらに、以下に提示する方法は、高度自動運転のためのシステムは技術的に手間がかかるという洞察に基づいている。同じことが、将来のロボットシステムにも当てはまる。これらは、高い計算能力及び大きいメモリを必要とし、高い安全要求を満たさなければならない。機能安全要求を考慮することにより、システムの複雑性はさらに増大する。
【0008】
自動車分野における今日のシステムは、多くの場合、直接に通信するアプリケーション又はコンポーネントとして設計されている。データは利用可能になった時点ですぐに他のアプリケーションにも提供される。個々のアプリケーションの正確な時間的関係は技術的な理由により正確に設定することはできない。なぜならば、例えば、提供されている独立したプロセッサコアは、そこで実行されるべきアプリケーションよりもはるかに少数だからである。したがって、データが正確にはいつ送信されるかを予測することは困難である。受信したアプリケーションの視点からは、実際の実行時間に依存したデータの新しさの予測が不可能になる。
【0009】
この問題を解決するための提案では、タイムスライス又はタスクのすべてのアプリケーション又はコンポーネントの出力が、次のタイムスライスの開始時にはじめて可視化され、タイムスライス又はタスク内の全てのアプリケーション又はコンポーネントの入力がタスクの開始時にいわば凍結される。
【0010】
このようにして達成可能な決定論は開発を極めて容易にする。なぜならば、入力データが与えられている場合には、複雑なタイムスライスシステムの枠内であっても、出力データ及び出力データの受信機は一義的に確定しているからである。
【0011】
これにより、開発が容易になるだけではなく、最終的に一義的なポストシミュレーションも可能である。この場合、任意のタスク構造を表示することができ、データの一貫性が常に確保されている。
【0012】
さらに以下に説明する解決策は、ポストシミュレーションを行い、タイミングの複雑性を低減するためには、上述の機構に基づいて、共通の起動方式の基礎をなすいくつかのタスクからタスクシステムを組み立てることが有意義であるという事情を考慮している。
【0013】
本発明による解決策の利点は、起動の基礎として外部のイベントを使用する可能性が開かれていることである。共通の起動方式にもかかわらず、これにより、ポストシミュレーション能力を保持し、以下に提示する方法によりタイミングの複雑性を低減することが可能になる。
【0014】
このアプローチの基本思想は、いくつかの起動方式を使用することである。これにより、それぞれ1つの起動方式をイベントソースに同期するか、又はイベントソースで起動し、しかもこれを使用される全ての起動方式に対して独立して個別に行うことが可能である。イベントソースは、例えば(バス、イーサネット(登録商標)、CAN、フレックスレイ、LVDSなどを介した)データ、ハードウェア信号又はソフトウェア信号の到着であってもよい。
【0015】
したがって起動方式内では決定論、特にポストシミュレーションの可能性が保持される。それにもかかわらず、いくつかの起動方式を使用することによって、異なるイベントに柔軟に同期することができる。
【0016】
従属請求項に記載の手段により、独立請求項に記載の基本思想の有利な構成及び改良が可能である。したがって、個々の起動方式が固有のパーティションに割り当てられるように設定してもよい。パーティションとして、専門家は、オペレーティングシステム又はインフラストラクチャ(例えば、いわゆる「ハイパーバイザ」)によって提供される分離の可能性を説明している。ここでは動的(ランタイム保護)又は静的(メモリ保護)影響に関して、個々のパーティションの相互干渉がないことが保証される。この場合には静的パーティションを使用することが特に有利である。この場合、パーティションは物理的計算ユニットの1対1の割当てによって実現される。これにより動的分離が促進される。
【0017】
個々の起動方式がパーティションに一義的に割り当てられることによって、明確に分離された起動方式がもたらされ、これらの起動方式は動的及び静的特性に関して最大限に独立している。これにより決定論がさらに促進される。
【0018】
本発明の一実施形態は、動作信頼性のために様々な関連性を有するソフトウェアコンポーネントを統合することを可能にする(クリティカリティ)。さらにイベントソースへの同期とは無関係にこのアプローチに従うことが有利な場合もある。対応する実施形態ではいくつかの起動方式を互いに同期して使用することができる。したがって、動作信頼性のために分離された起動方式を、ポストシミュレーションを行うことができるように組み合わせることが可能である。
【0019】
これにより、全体として、例えば設けられたハードウェアにおいて、安全要求を満たし、開発の手間を低減するための解決策、又は状態を再現する場合の効率を上げるための解決策がもたらされる。
【0020】
本発明の実施形態を図面に示し、以下に詳細に説明する。
【図面の簡単な説明】
【0021】
【
図4】第2の実施形態による制御器を示す概略図である。
【発明を実施するための形態】
【0022】
図1は、本発明による方法10の基本的なフロー図を示す。このフロー図によれば、実行されるべきタスクはいくつかの起動方式のうちのそれぞれ1つに割り当てられ(プロセス11)、これらの起動方式にはトリガイベントが割り当てられる(プロセス12)。これらのイベントのうちの1つが発生するとすぐに、対応する起動方式に割り当てられたタスクが起動方式にしたがって起動される(プロセス13)。
【0023】
例として、
図2は、タイムスライス及びタスク21内に編成されたアプリケーション又はコンポーネントからなるシステムを示す。アプリケーション又はコンポーネントはデータを出力し、同様にデータを受信することができる。データ出力はそれぞれのコンポーネントの右側に、データ入力はそれぞれのコンポーネントの左側に示されており、入力データはタスク21の起動時にいわば「凍結される」(24)。図では、時間は左から右に進む。
【0024】
図3は、いくつかの起動方式の使用法を示す。これにより、それぞれ1つの起動方式をイベントソースに同期するか、又はイベントソースで起動することが可能になる。さらに、例えば適切なタイマーによっていくつかの起動方式を同期的にトリガすることも可能である。図示のパーティション26,27に対して、約200msの周期が考慮される。図の最下部のパーティション28の場合にトリガされる個々のイベント23を認識することができる。
【0025】
パーティション26,27,28を上述のように1対1で起動方式に割り当てることにより、異なる安全関連の起動方式を決定論的に統合する可能性によって使用範囲が拡大される。例えばパーティション26,27,28が車両技術的な安全性要求レベル(ASIL)ASIL-Dに対応し、第2のパーティション26,27,28がASIL-Cに対応し、第3のパーティション26,27,28が再びASIL-Dに対応する場合もある。
【0026】
この方法10は、
図4の概略図に示すように、例えばソフトウェアもしくはハードウェアで、又はソフトウェアとハードウェアの混合形態で、例えば、制御器(40)で実施することができる。
【符号の説明】
【0027】
21 タスク
22,23 イベント
26,27,28 パーティション