JP2019194848A - 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 - Google Patents
分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 Download PDFInfo
- Publication number
- JP2019194848A JP2019194848A JP2019073938A JP2019073938A JP2019194848A JP 2019194848 A JP2019194848 A JP 2019194848A JP 2019073938 A JP2019073938 A JP 2019073938A JP 2019073938 A JP2019073938 A JP 2019073938A JP 2019194848 A JP2019194848 A JP 2019194848A
- Authority
- JP
- Japan
- Prior art keywords
- task
- interval
- execution
- communication
- time
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000005540 biological transmission Effects 0.000 claims abstract description 77
- 238000013500 data storage Methods 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 8
- 230000001960 triggered effect Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 2
- 239000000872 buffer Substances 0.000 description 32
- 238000001994 activation Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000000725 suspension Substances 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0715—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
通信におけるエラー処理のための方法であって、通信すべきデータが、データ伝送間隔内で、一時的なデータ記憶のための第1のデータ領域からの読み取りおよび一時的なデータ記憶のための第2のデータ領域内での読み取られたデータの記憶により、第1のタスクと第2のタスクとの間で通信される、方法に関して、第1のタスクを実行するための時間間隔および第2のタスクを実行するための通信間隔が設定され、これに関し、
a)第1の通信間隔内のデータ伝送間隔の実行は、以下の場合にはスキップされ、すなわち、第1のタスクが第1の通信間隔の時間的に直前に、この通信間隔のすぐ前の通信間隔の最後の時間間隔内で開始されており、この最後の時間間隔の終了時点を過ぎても続いており、かつ第1の通信間隔の第2のタスクの実行が既に開始されている場合には、スキップされ、または
b)第1の通信間隔内のデータ伝送間隔の実行は、以下の場合にはスキップされ、すなわち、第2のタスクが第1の通信間隔の時間的にすぐ前の第2の通信間隔内で開始されており、すぐ前の第2の通信間隔の終了時点を過ぎても続いており、かつ第1の通信間隔内の第1のタスクの実行が既に開始されている場合には、スキップされる。
さらなる有利な形態は、以下の説明および図面から明らかである。
a)スケジュールが不完全であるかまたは決定論的でない。
b)タスクがアクティブになっていない(スキップされた)。
c)タスクが自発的にアクティブになっている。
d)チャネルのバッファがそれらの初期化前に使用される。
a)タスクの完了が超える(複数回のタスクアクティブ化の際)。
b)通信が最後のデータ伝送間隔内で完了しなかった。
c)通信が最後のデータ伝送間隔内で実行されなかった。
a)チャネル状態が損傷している。
スケジューリングエラーa)〜c)は、外部の時刻基準、例えば時計またはカウンタによってしか認識できない。
「Concurrency Level」のあり得るカテゴリーは、
Cooperative Core Local
通信に関与するタスクが、専ら協調スケジューリングを有しており、かつ同じ計算コア上で実行される。
通信に関与するタスクが、プリエンプティブスケジューリングを有しており、かつ同じ計算コア上で実行される。
タスクが、少なくとも2つの計算コア上で実行される。
Sequential Core Local
タスクが、順次的に同じ計算コア上で実行される。
タスクが、順次的に少なくとも2つの計算コア上で実行される。
カテゴリー「Cooperative Core Local」における通信のための通信方法を、図1に基づいて説明する。
関与するタスクの少なくとも1つが、バッファ内に準備されたデータを使用している。読み取りバッファの上書きは、整合性の理由から許可されない。
すべてのタスクが、1つの論理間隔内で(場合によってはあり得るエラーシナリオを考慮して)必要な数のアクティブ化を完了しており、準備されたデータはこの論理間隔内ではもう必要なくなっている。
個々のタスクの読み取りバッファを更新している。内包されているデータを用いた計算は、整合性の理由から許可されない。
バッファの更新が完了している。データを計算のために使用できる。ただしタスクはアクティブになっていない。
Tnは、タスクnの間隔を表している。論理間隔は、個々のタスクの周期に時間的に同期して動作するよう定義されている。タスクはスケジューラによってアクティブにされる。通信間隔l2の終了までに、すべてのタスクおよびデータ伝送間隔Kが動作していることが望ましい。タスクにはそれぞれデッドラインが割り当てられており、これらのデッドラインまでにタスクが完了していなければならない。タスクをアクティブ化した後、このタスクに割り当てられたデッドラインの前に適時にこのタスクの計算を完了できない場合、スケジューラによるこのタスクのその後のアクティブ化は行われない。タスクをアクティブ化した後、このタスクに割り当てられたデッドラインの前に適時にこのタスクの計算を完了はするが、この通信間隔l2内に規定されているデータ伝送間隔Kは終了しない場合、この通信のためのエラー処理が必要である。
l2=KGV(10ms、5ms)=10ms
が適用されている。
以下では図1に基づき、ステータス変数Sのフェーズがどのように順次進んでいくのかを説明する。ステータス変数Sは、第1のタスクの実行の第1の状態および第2のタスクの実行の第2の状態に応じて決定される。
ステータス変数Sは、例えば、第1の状態用の第1の状態カウンタZ1の第1のカウントおよび第2の状態用の第2の状態カウンタZ2の第2のカウントによって決定される。第1の状態カウンタは、図1に示したように状態2、1、0をとることができる。第2の状態カウンタは、図1に示したように状態1、0をとることができる。
第1の論理間隔l1の2番目および3番目の繰り返しも図1に示されている。2番目の繰り返しでは第1のタスクT1の3番目の実行が、第1の論理間隔l1の2番目の繰り返しと同期して時点t6で開始され、時点t7で完了する。第1のカウントが時点t7で2から1にセットされる。
ステータス変数Sは、第1の状態カウンタZ1も第1の状態値0を有し、第2の状態カウンタZ2も第2の状態値0を有する時点t4とt5との間では状態TRANS_ACTIVEを有している。
ステータス変数Sは、時点t6とt11との間では状態PROC_ACTIVEを有している。
通信はタスクのコンテキスト内で行われるので、このシナリオでのPROC_COMPLETEは、純粋な論理ステータスであり、PROC_ACTIVEからTRANS_ACTIVEに直接移行する場合は省略される。
それぞれの実行の抑制、つまりスキップにより、計算システムが決定的に負荷軽減される。実行中のタスクが論理間隔の境界を超えることを、以下にタスクデッドライン違反と言う。このようなタスクデッドライン違反への反応として、通信インフラにより、次の周期のタスク実行が中止される。
形式1
デッドライン違反が、タスクの最後の実行の際にデータ伝送間隔内で起こっている。
形式1A
デッドライン違反が、トランザクションのスタート前に既に起こっている。関与するタスクの1つが、新たな間隔内で既に計算を開始していた。PROC_ACTIVEからのステータス移行が、新たなデータ伝送間隔へ移行する。バッファの更新が省略される。
ここでは図2に示したように、バッファの更新が既に行われている。ステータスTRANS_ACTIVEがセットされており、その一方でデッドライン違反が起こっている。協調スケジューリングにより、新たな間隔内での最初のタスク実行が行われる前に通信が完全に完了していることが保証される。
デッドライン違反が、タスクの最後の実行の際にデータ伝送間隔内で起こっているのではない。
図4では、カテゴリー「Parallel Cross Core」に相当する通信のための通信方法を示している。符号が一致する要素に関しては、図1についての説明も参照されたい。
前述の例とは異なり、第2のタスクT2の最初の実行は、時点t31ではなく、時点t31の前で時点t30の後にある時点t61で既に続行される。これに加え、第2のタスクT2の最初の実行が時点t6で中断されない。これは、第1のタスクと第2のタスクがこの例では少なくとも一時的に並行して計算されることを意味している。
通信のための装置1000を図10に示している。装置1000は、プロセッサ1001および少なくとも1つの一時的なデータメモリ1002を含んでおり、これらは、通信すべきデータを、データ伝送間隔K内で、少なくとも1つの一時的なデータメモリ1002の第1のデータ領域B51、B52からの読み取りおよび少なくとも1つの一時的なデータメモリ1002の第2のデータ領域B101、B102内での読み取られたデータの記憶により、第1のタスクT1と第2のタスクT2との間で前述の方法に基づいて通信するように形成されている。
Claims (12)
- 通信におけるエラー処理のための方法であって、通信すべきデータが、データ伝送間隔(K)内で、一時的なデータ記憶のための第1のデータ領域からの読み取りおよび一時的なデータ記憶のための第2のデータ領域内での読み取られた前記データの記憶により、第1のタスク(T1)と第2のタスク(T2)との間で通信される、方法において、前記第1のタスク(T1)を実行するための時間間隔(l1)および前記第2のタスク(T2)を実行するための通信間隔(l2)が設定され、
a)1つの通信間隔(l2)内の前記データ伝送間隔(K)の実行は、以下の場合にはスキップされ、すなわち、第1のタスク(T1)が前記通信間隔(l2)の時間的に直前に、前記通信間隔(l2)のすぐ前の通信間隔(l2)の前記時間間隔(l1)の最後の時間間隔(l1)内で開始されており、前記最後の時間間隔(l1)の終了時点(t6)を過ぎても続いており、かつ前記通信間隔(l2)の第2のタスク(T2)の実行が既に開始されている場合には、スキップされ、または
b)1つの通信間隔(l2)内の前記データ伝送間隔(K)の実行は、以下の場合にはスキップされ、すなわち、第2のタスク(T2)が前記通信間隔(l2)の時間的にすぐ前の通信間隔(l2)内で開始されており、前記すぐ前の通信間隔(l2)の終了時点(t6)を過ぎても続いており、かつ前記通信間隔(l2)内の前記第1のタスク(T1)の実行が既に開始されている場合には、スキップされることを特徴とする、方法。 - 前記第1のタスク(T1)の実行が前記第2のタスク(T2)の実行より遅く完了する場合は、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動され(301、501)、または前記第2のタスク(T2)の実行が前記第1のタスク(T1)の実行より遅く完了する場合は、前記データ伝送間隔(K)の前記開始が前記第2のタスク(T2)の前記実行の前記完了によって起動される(302、601)ことを特徴とする、請求項1に記載の方法。
- 前記第1のタスク(T1)の実行が、前記第1のタスク(T1)の前記実行が開始された前記通信間隔(l2)の終了を過ぎても継続している場合で、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動される(501)場合、前記第1のタスク(T1)の前記実行のすぐ後の前記第2のタスク(T2)の実行が、前記データ伝送間隔(K)の終了まで延期されることを特徴とする、請求項2に記載の方法。
- 前記第2のタスク(T2)の実行が、前記第2のタスク(T2)の前記実行が開始された前記通信間隔(l2)の終了を過ぎても継続している場合で、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動される(601)場合、前記通信間隔内では前記データ伝送間隔(K)の起動がもはや起こらないことを特徴とする、請求項2に記載の方法。
- 前記通信すべきデータが、前記データ伝送間隔(K)内で、1つまたは複数のインスタンスにより、前記第1のタスク(T1)および前記第2のタスク(T2)を実行するためのハードウェアの外部で通信されることを特徴とする、請求項2〜4のいずれか一項に記載の方法。
- 前記通信間隔(l2)の期間が、前記時間間隔(l1)のための期間の整数倍であり、これに関し、1つの通信間隔(l2)が1つまたは複数の時間間隔(l1)を含んでおり、前記時間間隔(l1)の一番早い時間間隔(l1)が、前記通信間隔(l2)と同時に始まることを特徴とする、請求項1〜5のいずれか一項に記載の方法。
- 1つの通信間隔(l2)中に少なくとも1つの時間間隔(l1)が始まり、これに関し、時間間隔(l1)が時間的に重なり合っておらず、前記データ伝送間隔(K)が、前記時間間隔(l1)の一番早い時間間隔(l1)内の前記第1のタスク(T1)の最初の実行の前に終了しているか、または前記時間間隔(l1)の一番遅い時間間隔(l1)内の前記第1のタスク(T1)の最後の実行の完了後に開始されるかのいずれかであることを特徴とする、請求項1〜6のいずれか一項に記載の方法。
- ステータス変数(S)が、前記第1のタスク(T1)の前記実行の第1の状態および前記第2のタスク(T2)の前記実行の第2の状態に応じて決定され、これに関し、前記データ伝送間隔(K)が前記ステータス変数(S)の値に応じてスタートすることを特徴とする、請求項1〜7のいずれか一項に記載の方法。
- 1つの通信間隔(l2)内の前記第1のタスク(T1)の1つが中止される場合に、詳しくは、前記通信間隔(l2)中に動作すべき前記第1のプロセス(T1)の最後の前記第1のプロセス(T1)を除く、前記通信間隔(l2)中に動作すべき前記第1のタスク(T1)の1つが、前記通信間隔(l2)に割り当てられた最初の前記時間間隔(l1)の終了時に完了していないので、1つの第1のタスク(T1)の実行が中止される場合に、第1の状態カウンタ(Z1)が訂正され、その際、前記第1の状態カウンタ(Z1)が、前記中止された第1のタスク(T1)が実行された場合に前記第1の状態カウンタ(Z1)が有するであろう状態に訂正されることを特徴とする、請求項8に記載の方法。
- ステータス変数(S)が、前記第1のタスク(T1)および前記第2のタスク(T2)に割り当てられた優先度に応じて決定され、これに関し、一番低い優先度を割り当てられた前記タスクが、前記通信間隔(l2)の1つ内の最後のタスクとして実行される場合、前記一番低い優先度をもつ前記タスクが完了するすぐ後のデータ伝送間隔(K)の開始が、すぐ後に続く通信間隔(l2)内にずらされることを特徴とする、請求項1〜9のいずれか一項に記載の方法。
- プロセッサ(1001)および少なくとも1つの一時的なデータメモリ(1002)であって、通信すべきデータを、データ伝送間隔(K)内で、前記少なくとも1つの一時的なデータメモリ(1002)の第1のデータ領域(B51、B52)からの読み取りおよび前記少なくとも1つの一時的なデータメモリ(1002)の第2のデータ領域(B101、B102)内での読み取られた前記データの記憶により、第1のタスク(T1)と第2のタスク(T2)との間で請求項1〜10のいずれか一項に記載の方法に基づいて通信するように形成されている、プロセッサ(1001)および少なくとも1つの一時的なデータメモリ(1002)を特徴とする、通信におけるエラー処理のための装置(1000)。
- 前記装置が、前記通信すべきデータをダイレクトメモリアクセス、DMAまたは割り込みサービスルーチンで通信するためのモジュール(1003)を含んでいることを特徴とする請求項11に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018205392.8 | 2018-04-10 | ||
DE102018205392.8A DE102018205392A1 (de) | 2018-04-10 | 2018-04-10 | Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019194848A true JP2019194848A (ja) | 2019-11-07 |
Family
ID=67991259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019073938A Pending JP2019194848A (ja) | 2018-04-10 | 2019-04-09 | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11048575B2 (ja) |
JP (1) | JP2019194848A (ja) |
KR (1) | KR20190118522A (ja) |
CN (1) | CN110362413A (ja) |
DE (1) | DE102018205392A1 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002544621A (ja) * | 1999-05-14 | 2002-12-24 | ハネウェル・インコーポレーテッド | タスクスケジューリングおよびメッセージ受け渡し |
JP2005301812A (ja) * | 2004-04-14 | 2005-10-27 | Hitachi Ltd | デジタル制御装置およびこれを用いたエンジン制御装置 |
JP2011170619A (ja) * | 2010-02-18 | 2011-09-01 | Toyota Motor Corp | マルチスレッド処理装置 |
JP2016013782A (ja) * | 2014-07-02 | 2016-01-28 | 株式会社デンソー | 車載電子制御装置 |
WO2017140504A1 (de) * | 2016-02-16 | 2017-08-24 | Robert Bosch Gmbh | Verfahren und vorrichtung zum betreiben eines steuergeräts |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7020877B2 (en) * | 2002-05-20 | 2006-03-28 | Dell Products L.P. | Method to distribute periodic task workload |
EP1870806A1 (en) * | 2006-06-19 | 2007-12-26 | Wolfgang Pree GmbH | System for executing distributed sofware |
JP2008046857A (ja) * | 2006-08-16 | 2008-02-28 | Seiko Epson Corp | 情報処理装置、情報処理方法及びそのプログラム |
US8607247B2 (en) * | 2011-11-03 | 2013-12-10 | Advanced Micro Devices, Inc. | Method and system for workitem synchronization |
US9176872B2 (en) * | 2013-02-25 | 2015-11-03 | Barco N.V. | Wait-free algorithm for inter-core, inter-process, or inter-task communication |
US9519490B2 (en) * | 2013-03-07 | 2016-12-13 | Microsoft Technology Licensing, Llc | Adaptive data synchronization |
US10133602B2 (en) * | 2015-02-19 | 2018-11-20 | Oracle International Corporation | Adaptive contention-aware thread placement for parallel runtime systems |
US10157092B2 (en) * | 2015-04-27 | 2018-12-18 | Oracle International Corporation | Automatic targeted system suspension based upon downstream system failure detection |
US10776167B2 (en) * | 2016-09-19 | 2020-09-15 | Texas Instruments Incorporated | Bandwidth controlled data synchronization for image and vision processor |
US10360118B2 (en) * | 2016-10-17 | 2019-07-23 | Cboe Exchange, Inc. | Low latency system having high availability computer architecture |
DE102017200669A1 (de) * | 2017-01-17 | 2018-07-19 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Betreiben eines Steuergeräts, Computerprogramm und Verfahren zum Generieren des Computerprogramms |
CN110998529B (zh) * | 2017-07-31 | 2021-08-20 | 三菱电机株式会社 | 信息处理装置以及信息处理方法 |
US10552215B1 (en) * | 2017-08-05 | 2020-02-04 | Jia Xu | System and method of handling real-time process overruns on a multiprocessor |
GB2569269B (en) * | 2017-10-20 | 2020-07-15 | Graphcore Ltd | Synchronization in a multi-tile processing arrangement |
GB2569273B (en) * | 2017-10-20 | 2020-01-01 | Graphcore Ltd | Synchronization in a multi-tile processing arrangement |
-
2018
- 2018-04-10 DE DE102018205392.8A patent/DE102018205392A1/de active Pending
-
2019
- 2019-04-08 KR KR1020190040563A patent/KR20190118522A/ko active Search and Examination
- 2019-04-09 US US16/379,218 patent/US11048575B2/en active Active
- 2019-04-09 CN CN201910280268.8A patent/CN110362413A/zh active Pending
- 2019-04-09 JP JP2019073938A patent/JP2019194848A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002544621A (ja) * | 1999-05-14 | 2002-12-24 | ハネウェル・インコーポレーテッド | タスクスケジューリングおよびメッセージ受け渡し |
JP2005301812A (ja) * | 2004-04-14 | 2005-10-27 | Hitachi Ltd | デジタル制御装置およびこれを用いたエンジン制御装置 |
JP2011170619A (ja) * | 2010-02-18 | 2011-09-01 | Toyota Motor Corp | マルチスレッド処理装置 |
JP2016013782A (ja) * | 2014-07-02 | 2016-01-28 | 株式会社デンソー | 車載電子制御装置 |
WO2017140504A1 (de) * | 2016-02-16 | 2017-08-24 | Robert Bosch Gmbh | Verfahren und vorrichtung zum betreiben eines steuergeräts |
Also Published As
Publication number | Publication date |
---|---|
CN110362413A (zh) | 2019-10-22 |
DE102018205392A1 (de) | 2019-10-10 |
US20190310909A1 (en) | 2019-10-10 |
KR20190118522A (ko) | 2019-10-18 |
US11048575B2 (en) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9477521B2 (en) | Method and system for scheduling repetitive tasks in O(1) | |
CN109697082B (zh) | 指令组 | |
WO2021000758A1 (zh) | 机器人资源任务周期管控方法及装置 | |
EP2839370B1 (en) | Time slack pipeline balancing for multicore programmable logic controllers (plc) | |
CN103870327A (zh) | 一种实时多任务调度方法和装置 | |
US20130145373A1 (en) | Information processing apparatus, information processing method, and storage medium | |
KR102685982B1 (ko) | 제어기를 작동시키기 위한 방법 및 장치 | |
CA2433379A1 (en) | Modulo scheduling of multiple instruction chains | |
Henzinger et al. | Schedule-carrying code | |
CN104008005B (zh) | 用于控制处理器的装置、方法和系统 | |
US9152454B2 (en) | Method for enabling sequential, non-blocking processing of statements in concurrent tasks in a control device | |
CN118295778A (zh) | 一种任务调度方法、装置、电子设备及存储介质 | |
CN109656868B (zh) | 一种cpu与gpu之间的内存数据转移方法 | |
JP7312002B2 (ja) | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 | |
US20240036921A1 (en) | Cascading of Graph Streaming Processors | |
CN109960571B (zh) | 一种多模块调度方法、装置及系统 | |
CN108958903B (zh) | 嵌入式多核中央处理器任务调度方法与装置 | |
JP5195408B2 (ja) | マルチコアシステム | |
US20100325635A1 (en) | Method for correct-by-construction development of real-time-systems | |
Ogawa et al. | Efficient approach to ensure temporal determinism in automotive control systems | |
JP2019194848A (ja) | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 | |
CN104142802A (zh) | 存储器控制设备和方法 | |
JP6368452B2 (ja) | 非同期のデバイスによって実行されるタスクのスケジューリングの向上 | |
CN108958904B (zh) | 嵌入式多核中央处理器的轻量级操作系统的驱动程序框架 | |
CN108958905B (zh) | 嵌入式多核中央处理器的轻量级操作系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230307 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230606 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20231027 |