JP3698938B2 - Deadlock detection method - Google Patents
Deadlock detection method Download PDFInfo
- Publication number
- JP3698938B2 JP3698938B2 JP34694399A JP34694399A JP3698938B2 JP 3698938 B2 JP3698938 B2 JP 3698938B2 JP 34694399 A JP34694399 A JP 34694399A JP 34694399 A JP34694399 A JP 34694399A JP 3698938 B2 JP3698938 B2 JP 3698938B2
- Authority
- JP
- Japan
- Prior art keywords
- task
- memory block
- message
- detection method
- assigned
- 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.)
- Expired - Fee Related
Links
- 238000001514 detection method Methods 0.000 title claims description 85
- 238000000034 method Methods 0.000 claims description 40
- 230000005856 abnormality Effects 0.000 claims description 33
- 238000005259 measurement Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、デッドロック検出方法及びデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
一般に、OSを使用したシステムにおいて、タスク間でメッセージ通信を行う場合はOSが管理する動的メモリブロックを使用する。
OSが管理する動的メモリブロックを使用して、タスク間でメッセージ通信を行う場合の一例を図11及び図12を参照して説明する。
図11及び図12は、タスクA及びタスクB間におけるメッセージ通信の動作を示す図である。
【0003】
図11及び図12によれば、タスクAがメモリブロックを獲得した場合、タスクAからタスクBにメッセージを送信する。タスクBは前記メッセージを受信し、タスクAが獲得したメモリブロックを解放させる。
また、タスクBがメモリブロックを獲得した場合、タスクBからタスクAにメッセージを送信し、タスクAがメッセージを受信すると、タスクAはタスクBが獲得したメモリブロックを解放させる。
即ち、タスクAにて獲得したメモリブロックはメッセージ送信先である(メッセージを受け取る)タスクBによって解放され、同様にタスクBで獲得したメモリブロックはタスクAによって解放される。
以上説明した動作によりタスク間のメッセージ通信は行われる。
【0004】
また、特開平09−026888号公報には、OSが管理している資源毎にタイマを保持し、各タスクの資源獲得時からタイマカウントを行うことで1タスクが1資源を占有している時間の計測によって正否判定を行う排他制御装置が開示されている。係る排他制御装置によれば、獲得から解放までの時間と共有資源占有に要する1つのタスクの所定時間との比較で動作の正常/異常が判断される。
また、タイムアウト(所定時間経過)した際は、下記(a)又は(b)の処理を行っている。
【0005】
(a)他タスクからの資源要求をチェックし、要求がなければタイマをリスタートさせて処理を続行する。要求があれば使用中のタスクから資源を強制解放し、資源要求を行っているタスクに資源を割り当てる。
(b)使用中のタスクから資源を強制解放し、他タスクからの資源要求をチェックする。要求があれば要求を行っているタスクに資源を割り当てる。
【0006】
【発明が解決しようとする課題】
以上説明した従来技術にあっては、メモリブロック獲得/解放処理のタイミングによっては、図11にT90領域として示すように、空きメモリブロックが存在しなくなり、その結果として何れのタスクも待ち状態となる。
従って、何れのタスクの処理も行われなくなり(メモリブロック獲得によるデッドロック)、プログラムの異常動作(デッドロック)が発生してしまうという問題があった。
この様な現象は、メモリブロック獲得/解放処理の記述に論理的な誤りがある場合のみならず、論理的な誤りがない場合であっても発生する。
【0007】
また、特開平09−026888号公報に開示された排他制御装置にあっては、エラー検出時のリカバリ処理として、タスクコンテキストの待機/復帰の処理を行っている。
しかし、獲得タスクと解放タスクが異なる場合、待避するコンテキストは獲得側タスクのものである。即ち、デッドロックから復帰させねばならない解放側タスクとは関係のない情報であるため、リカバリ処理が正常動作しない。
【0008】
また、特開平09−026888号公報に開示された排他制御装置にあっては、必ずタスク毎又は資源毎にタイマを保持する必要がある。従って、1メモリブロック毎にタイマを用意する必要が生じる。
しかし、そのために多数のタイマをハードウエアとして用意することは困難であり、ソフトウエアによるタイマを用いた場合には多量のメモリを必要とするという問題があった。
従って、少量の内蔵RAMしか持たないMCU(Micro Controller Unit)などに応用することは困難である。
また、前記ソフトウエアによるタイマは、カウント用のメモリを用意し、一定時間毎のハードウエア生起によりソフトウエアで複数タイマをカウントするタイマである。
【0009】
更に、特開平09−026888号公報に開示された排他制御装置にあっては、処理の節目毎の判断処理とタイムアウト毎の判断処理を頻繁に必要としていた為にCPUに多大な負荷を与えていた。
【0010】
また、特開昭62−229342号公報に開示されたデータ処理装置にあっては、アイドルタスク実行時に必ずタイマのリスタートを行い、タイマが一定時間を経過することで異常検出を行っている。
しかし、タイマのオーバーフロー時間内に必ずアイドルタスクが実行されることが前提となっているため、アイドルタスクが実行されないほど繁忙なシステムではタイマがリスタートされず、システムが正常動作であっても異常と検出される。
また、実行すべきタスクが待ち状態のまま実行されなくなっても、アイドルタスクでタイマがリスタートされるため、異常が発生しても、異常と判断されないという問題があった。
【0011】
本発明は以上の従来技術における問題に鑑みてなされたものであって、メモリブロック獲得状態及びメモリブロック獲得状態以外のデッドロックを確実に検出することができ、メモリ使用量を低減させ且つCPUに与える負荷を軽減せしめるデッドロック検出方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
前記課題を解決する本出願第1の発明は、オペレーションシステムがメモリブロック群の中から所定のメモリブロックに一のタスクを割り当てた後、メモリブロックが割り当てられた一のタスクから他のタスクにメッセージを送信し、メッセージを受信した他のタスクによってメモリブロックを解放させてソフトウェアの処理を実行するシステムの異常検出を行うデッドロック検出方法であって、メモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することを特徴とするデッドロック検出方法である。
前記課題を解決する本出願第2の発明は、オペレーションシステムがメモリブロック群の中から所定のメモリブロックに一のタスクを割り当てた後、メモリブロックが割り当てられた一のタスクから他のタスクにメッセージを送信し、メッセージを受信した他のタスクによってメモリブロックを解放させてソフトウェアの処理を実行するシステムの異常検出を行うデッドロック検出方法であって、最後の空きメモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することを特徴とするデッドロック検出方法である。
前記課題を解決する本出願第3の発明は、本出願第1又は第2の発明のデッドロック検出方法において、前記計測手段は、メモリブロック群に割り当てられている一のタスクがメッセージを送信するタイミングで計測を開始し、他のタスクがメッセージを送信するタイミングで計測を停止することで継続時間を計測することを特徴とする。
前記課題を解決する本出願第4の発明は、本出願第1又は第2の発明のデッドロック検出方法において、前記計測手段は、メモリブロック群に割り当てられている一のタスクがメッセージを送信するタイミングでセットし、他のタスクがメッセージを受信するタイミングで計測をリセットすることで継続時間を計測することを特徴とする。
【0013】
したがって、本願発明のデッドロック検出方法によれば、最後の空きメモリブロックにタスクが割り当てられた後に、メモリブロック群に割り当てられている各タスクがメモリブロック群を占有している継続時間を計測手段により計測することでソフトウェアの異常検出を行うことから、メモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。また、計測個所が限定されており、一の計測手段でデッドロックを確実に検出することができるため、メモリの使用量を低減させることができると共に、判断個所が低減するためCPUの負荷を軽減させることができる。
また、タスク数に依存することなくデッドロックを検出することができるため、タスク数に変更が生じた場合の異常検出に関する設定を変更する必要がない利点がある。
更に、計測個所が限定されており、一の計測手段でデッドロックを確実に検出することができるため、メモリの使用量を低減させることができる。
更に加えて、判断個所が低減するためCPUの負荷を軽減させることができる。
【0015】
したがって、本願発明のデッドロック検出方法によれば、最後の空きメモリブロックに一のタスクが割り当てられた後に、メモリブロック群に割り当てられている一のタスクがメッセージを送信し、他のタスクがメッセージを受信するまでの継続時間を計測手段により計測することで異常検出を行うことから、メッセージの受信が正常に行われているか否かを判断することができ、メモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。
【0017】
したがって、本願発明の発明のデッドロック検出方法によれば、計測手段をタスクのメモリブロック獲得時、タスクのメモリブロック解放時及び空きメモリブロック存在下のアイドルタスク実行時にリスタートさせ、再びリスタートするまでの時間を連続して計測することから、システムの処理状態に依存することなくメモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。
【0018】
前記課題を解決する本出願第5の発明は、オペレーションシステムがメモリブロック群の中から所定のメモリブロックに一のタスクを割り当てた後、メモリブロックが割り当てられた一のタスクから他のタスクにメッセージを送信し、メッセージを受信した他のタスクによってメモリブロックを解放させてソフトウェアの処理を実行するシステムの異常検出を行うデッドロック検出方法であって、メモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することで異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
前記課題を解決する本出願第6の発明は、オペレーションシステムがメモリブロック群の中から所定のメモリブロックに一のタスクを割り当てた後、メモリブロックが割り当てられた一のタスクから他のタスクにメッセージを送信し、メッセージを受信した他のタスクによってメモリブロックを解放させてソフトウェアの処理を実行するシステムの異常検出を行うデッドロック検出方法であって、最後の空きメモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することで異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
前記課題を解決する本出願第7の発明は、本出願第5又は第6の発明のコンピュータ読み取り可能な記録媒体において、前記計測手段は、メモリブロック群に割り当てられている一のタスクがメッセージを送信するタイミングで計測を開始し、他のタスクがメッセージを送信するタイミングで計測を停止することで継続時間を計測して異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したものである。
前記課題を解決する本出願第8の発明は、本出願第5又は第6の発明のコンピュータ読み取り可能な記録媒体において、前記計測手段は、メモリブロック群に割り当てられている一のタスクがメッセージを送信するタイミングでセットし、他のタスクがメッセージを受信するタイミングで計測をリセットすることで継続時間を計測して異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したものである。
【0019】
したがって、本願発明のデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、最後の空きメモリブロックにタスクが割り当てられた後に、メモリブロック群に割り当てられている各タスクがメモリブロック群を占有している継続時間を計測手段により計測することから、メモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。また、計測個所が限定されているため、メモリの使用量を低減させることができると共に、判断個所が低減するためCPUの負荷を軽減させることができる。
また、記録媒体とは、CD−ROM、DVD−ROM及びフレキシブルディスク等の補助記憶媒体又はハードディスク等の主記憶媒体を含むメディアを指す。
【0021】
したがって、本願発明のデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、最後の空きメモリブロックに一のタスクが割り当てられた後に、メモリブロック群に割り当てられている一のタスクがメッセージを送信し、他のタスクがメッセージを受信するまでの継続時間を計測手段により計測することから、メッセージの受信が正常に行われているか否かを判断することができ、メモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。また、計測個所が限定されているため、メモリの使用量を低減させることができると共に、判断個所が低減するためCPUの負荷を軽減させることができる。
【0023】
したがって、本願発明のデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、計測手段をタスクのメモリブロック獲得時、タスクのメモリブロック解放時及びアイドルタスク実行時にリスタートさせ、再びリスタートする時間を連続して計測することから、システム全体の処理状態が繁忙又は閑散であっても、メモリブロック獲得待ち状態又はメモリブロック獲得待ち状態以外のデッドロックを確実に検出することができる。また、計測個所が限定されているため、メモリの使用量を低減させることができると共に、判断個所が低減するためCPUの負荷を軽減させることができる。
【0024】
【発明の実施の形態】
以下に本発明の実施の形態のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体につき図面を参照して説明する。
【0025】
(実施の形態1)
図1は本発明の実施の形態1のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体を実現するシステムの構成を示す概略図、図2は本発明の実施の形態1のデッドロック検出方法を実現するシステムのOS使用時のメモリブロック獲得/解放処理の動作説明図、図3(a)、図3(b)及び図3(c)は本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート、図4は本発明の実施の形態1の動作を示すフローチャートである。
【0026】
図1に示すように、計測手段であるタイマ1、オペレーティングシステム(以下、OS2)、メモリブロック3及びタスク群4から本発明の実施の形態1のデッドロック検出方法を実現するシステムは構成される。
【0027】
タスク群4は、複数のタスク(タスクA、タスクB、…)からなり、OS2はタスクスケジューリングを行って、タスク群4の中から1つのタスクを選択し、実行させる。
また、前記複数のタスクのうち、タスク4aはメモリブロック群3からOS2の割り当てによって獲得した1つのメモリブロックを使用して、タスク群中のタスク4bとメッセージ通信を行って処理を進めていく(メッセージ通信1回につき、1メモリブロックを使用)。
メッセージ通信に使用されるメモリブロックは、メッセージを送信するタスク4aによって獲得される(メモリブロック獲得処理)。また、メッセージを受信するタスク4bによってメモリブロックが解放される(メモリブロック解放処理)。
【0028】
メモリブロック獲得/解放処理は全てタスク4a及びタスク4bからOS2が用意しているメモリブロック獲得処理のシステムコール5a及びメモリブロック解法処理のシステムコール5bが呼び出されることにより実行される(図2)。
OS2は、メモリブロック獲得処理のシステムコール5aが呼び出されると、メモリブロック群3に空きがある場合のみ、メモリブロック獲得処理のシステムコール5aを呼び出したタスク4aにメモリブロックの割り当てを行う。
メモリブロック群3に空きがなかった場合は、OS2は獲得処理のシステムコール5aを呼び出したタスク4aを待ち状態に切り替える。
また、OS2はメモリブロック解放処理のシステムコール5bが呼び出されると、指定されたメモリブロックを解放する。
【0029】
次に、以上説明した本発明の実施の形態1のデッドロック検出方法を実現するシステムの動作につき説明する。
先ず、タスク群中のタスク4aからメモリブロック獲得処理のシステムコール5aが呼び出されることで、メモリブロック獲得要求がOS2に伝達される。
次に、メモリブロック獲得処理が呼び出されるタイミングで、実際にメモリブロックにタスク4aが割り当てられた後、タスク4aからタスク群中のタスク4bにメッセージが送信される。また、タスク4aからタスク4bにメッセージが送信されるタイミングで、メモリブロック群3に空きがなければタイマ1をスタートさせる。
その後、タスク4bがメッセージを受信し、係る受信によりタスク4bからメモリブロック解放処理のシステムコール5bが呼び出されることで、メモリブロック解放要求がOS2に伝達される。
ここで、タスク4bからメモリブロック解放要求がOS2に伝達されるタイミングでタイマ1をストップさせる。最後の空きメモリブロック獲得時からメモリブロック群3に空きの無い状態(メモリブロックを獲得している各タスクがメモリブロック群3を占有している状態)の継続時間を計測し、前記継続時間が一定期間経過(タイムアウト)した場合は異常発生と判断する。また、一定期間は予め設定される設定値である。
最後に、システムの異常発生と判断された場合はエラー処理を行う。
【0030】
次に本発明の実施の形態1のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体につき図3(a)、図3(b)、図3(c)及び図4を参照して更に詳細に説明する。
先ず、タスク4a及びタスク4bでメモリブロック群3を使用してメッセージ通信を行っている際の動作を以下に説明する。
【0031】
(1)メモリブロック獲得処理後、残りの空きメモリブロックの数が0でない場合(図3(a)及び図4を参照)。
メモリブロック獲得処理(S11)の後、残りの空きメモリブロックの数をチェックする(S12)。この際、タイマ1は停止状態を継続する。
【0032】
(2)メモリブロック獲得処理後の残りの空きメモリブロックの数が0であり、且つ一定期間以内に解放される場合(図3(b)及び図4を参照)。
メモリブロック獲得処理(S11)の後、タイマ1をスタートさせる(S13)。
メモリブロック解放処理(S31)の後、タイマ1をストップさせる(S32)。
【0033】
(3)メモリブロック獲得処理後の残りの空きメモリブロックの数が0であり、且つ一定期間以内に解放されない場合(図3(c)及び図4を参照)。
メモリブロック獲得処理(S11)の後、タイマ1をスタートさせる(S13)。
タイマ1が一定期間経過する迄にメモリブロックが解放されないため、エラー処理を行う(S6)。
【0034】
メッセージ通信が正常に行われている場合(メッセージの送信/メッセージの受信が滞ることなく進められる場合)は、必ず空きメモリブロックが存在する期間が生じるために、タイマ1のタイムアウトが発生することはない。
逆に、メッセージ通信が正常に行われなくなる(即ち、メッセージが受信されることがなくなる)と、メモリブロックが解放されなくなる。従って、徐々にメモリブロック群3の空きが減少し、最終的には全てのメモリブロック群3が使用中(=メモリブロックに空きがない状態)となる。
メモリブロック群3に空きがなくなった状態を継続すると、タイマ1のタイムアウトが発生して異常を検出することができる。
【0035】
次に、本発明の実施の形態1のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の別態様につき図面を参照して説明する。
図5は本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート、図6は本発明の実施の形態1のデッドロック検出方法の動作を示すフローチャートである。
【0036】
図5及び図6に示すように、メッセージが送信されるタイミング毎にタイマ1をリスタートさせ(S72)、メッセージが受信されるタイミングでタイマ1をストップさせる(S82)。即ち、最後にメッセージが送信されてから、メッセージが受信されるまでに一定時間が経過した場合を異常発生と判断する。
【0037】
また、メッセージ通信はメモリブロックを使用して行われるため、メッセージの送信とメモリブロック獲得処理は必ず対となって行われる。更に、メッセージの受信とメモリブロック解放処理も同様である。
従って、メモリブロック群3に空きが無い場合、メッセージを送信することはできない。
【0038】
また、メッセージが受信されると必ずメモリブロックが解放される。
従って、受信処理が正常に行われている場合は、メモリブロック群3に空きが存在する期間が必ず生じる。
【0039】
(実施の形態2)
次に本発明の実施の形態2のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体につき図面を参照して説明する。
図7は本発明の実施の形態2のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の構成を示すシステム構成図、図8(a)、図8(b)及び図8(c)は本発明の実施の形態2のデッドロック検出方法の動作を示すタイミングチャート、図9は本発明の実施の形態2のデッドロック検出方法の動作を示すフローチャートである。
【0040】
マイコンが保持するウォッチドッグ・タイマ(以下、WDT6)を利用して異常検査を行う方法につき説明する。
図7に示すように本発明の実施の形態2のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体は、図1で使用しているタイマ1をWDT6とした構成からなる。また、係るWDT6は一度スタートさせるとストップさせることができない。
【0041】
先ず、図8(a)、図8(b)、図8(c)及び図9を参照して、WDT6のリスタート(リセット)を行うタイミングにつき分類して説明する。
【0042】
(1)メモリブロック獲得時(図8(a)及び図9を参照)。
メモリブロック獲得処理(S11)の後、残りの空きメモリブロックの数に関係なく必ずWDT6のリスタートを行う(S13’)。
【0043】
(2)メモリブロック解放時(図8(b)及び図9を参照)。
メモリブロック解放処理(S31)の後、必ずWDT6のリスタートを行う(S32’)。
【0044】
(3)アイドルタスク実行時(図8(c)及び図9を参照)。
アイドルタスク実行時、残りの空きメモリブロックの数が0でなければ、WDT6のリスタートを行う(S9)。
【0045】
以上説明した(1)、(2)及び(3)のタイミングでWDT6をリスタートすることで、全体の処理状態(繁忙、閑散)に関わらず異常の検出を行うことができる。
【0046】
次に、システム全体の処理状態が繁忙期である場合の異常(デッドロック)の検出について、更に図10を参照して説明する。
各タスク間は、メッセージ通信を行いながら処理を進めているため、全体の処理が繁忙である場合は、必ずメッセージ通信に伴うメモリブロックの獲得/解放処理が絶えず行われる。
従って、メッセージ通信が正常に行われている場合(メッセージの送受信が滞ることなく進められる場合)は、同時にメモリブロックの獲得/解放処理が行われるため、上記(1)及び(2)におけるWDT6のリスタートによりWDT6のタイムアウトは発生しない(図8(a)及び図8(b))。
逆に、メッセージ通信が正常に行われなくなると、メモリブロックの獲得/解放処理が行われなくなり、WDT6がリスタートされずタイムアウトを発生するため、異常を検出することができる。
また、前記タイムアウトは、WDT6がスタートしてからリスタートされるまでの予め設定した設定値を基準とする一定時間を経過することをいう。
【0047】
最後にシステム全体の処理が閑散期である場合の異常(デッドロック)の検出を説明する。
閑散期においては、各タスク間におけるメッセージ通信は行われていない。従って、メッセージ通信に伴うメモリブロック獲得/解放処理も行われない。
ここで、上記(3)におけるWDT6のリスタートによって、システム全体の処理が閑散期である場合でも、WDT6がタイムアウトを発生することはない(図8(c))。
しかし、各タスクがメモリブロック獲得待ち状態に陥ったがためにアイドルタスクが実行されている場合は、残りの空きメモリブロックの数の条件によってWDTはリスタートされない。
従って、WDT6のタイムアウトが発生し、異常を検出することができる。
【0048】
【発明の効果】
以上説明した本発明のデッドロック検出方法及びその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、メモリブロック群3に空きがない状態の継続期間を計測する。
従って、メモリブロック解放処理が滞っている場合のみタイマ1がタイムアウトを発生するため、メモリブロック獲得待ち状態によるデッドロック(異常)を確実に検出することができる。
また、CPUの負荷を軽減させることができると共に、タイマ1が使用するメモリの使用量を低減させることができる。
【0049】
また、何れかのタスクがデッドロックすると、当該タスクが解放処理を行わないため、空きメモリブロックの数が徐々に減少し、その結果としてメモリブロック群3に空きがない状態となる。空きのない状態が所定時間以上継続されるとタイマ1がタイムアウトを発生するため、メモリブロック獲得待ち状態によるデッドロックを確実に検出することができる。
【0050】
更に、タイマ1のスタート及びストップがメモリブロックの獲得時及び解放時に限られているため、アプリケーション側の処理に依存することがない。
従って、異常検出処理(デッドロック検出処理)をOS2内に組み込むことができる。
【0051】
更に加えて、異常検出処理をOS2内に組み込んだ場合、アプリケーション側では異常検出処理を考慮する必要はないため、OS2とリンクさせるだけで異常検出機能が付加される。
従って、異常検出を考慮しないソフトを容易に異常検出対応に変更することができる。
【0052】
また、タイマ1のスタート及びストップがアプリケーション側に依存しないため、タスクの数に変更が生じた場合も、異常検出処理を考慮又は変更する必要がない。即ち、タスクの数に依存しないため、タスクの数に変更が生じた場合も異常検出に関する変更は不要となる利点がある。
【図面の簡単な説明】
【図1】本発明の実施の形態1のデッドロック検出方法の構成を示す構成図
【図2】本発明の実施の形態1のデッドロック検出方法のOS使用時のメモリブロック獲得/解放処理の動作を示す図
【図3】(a)本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート
(b)本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート
(c)本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート
【図4】本発明の実施の形態1のデッドロック検出方法の動作を示すフローチャート
【図5】本発明の実施の形態1のデッドロック検出方法の動作を示すタイミングチャート
【図6】本発明の実施の形態1のデッドロック検出方法の動作を示すフローチャート
【図7】本発明の実施の形態2のデッドロック検出方法を実現するシステム構成図
【図8】(a)本発明の実施の形態2のデッドロック検出方法の動作を示すタイミングチャート
(b)本発明の実施の形態2のデッドロック検出方法の動作を示すタイミングチャート
(c)本発明の実施の形態2のデッドロック検出方法の動作を示すタイミングチャート
【図9】本発明の実施の形態2のデッドロック検出方法の動作を示すフローチャート
【図10】本発明の実施の形態2のデッドロック検出方法の動作を示す図
【図11】従来のデッドロック検出方法の動作を示す説明図
【図12】従来のデッドロック検出方法の動作を示す説明図
【符号の説明】
1 タイマ
2 OS
3 メモリブロック群
4 タスク群
4a タスク
4b タスク
5a システムコール
5b システムコール
6 WDT[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a deadlock detection method and a computer-readable recording medium on which a program for causing a computer to execute the deadlock detection method is recorded.
[0002]
[Prior art]
In general, in a system using an OS, when performing message communication between tasks, a dynamic memory block managed by the OS is used.
An example of message communication between tasks using a dynamic memory block managed by the OS will be described with reference to FIGS.
11 and 12 are diagrams illustrating message communication operations between task A and task B. FIG.
[0003]
According to FIG. 11 and FIG. 12, when task A acquires a memory block, a message is transmitted from task A to task B. Task B receives the message and releases the memory block acquired by task A.
When task B acquires a memory block, task B transmits a message to task A. When task A receives the message, task A releases the memory block acquired by task B.
That is, the memory block acquired by task A is released by task B, which is a message transmission destination (receives a message), and the memory block acquired by task B is released by task A.
Message communication between tasks is performed by the operation described above.
[0004]
Japanese Patent Application Laid-Open No. 09-026888 discloses a time in which one task occupies one resource by holding a timer for each resource managed by the OS and counting the timer from the time when each resource is acquired. An exclusive control device that makes a correct / incorrect determination by measuring the above is disclosed. According to such an exclusive control device, the normality / abnormality of the operation is determined by comparing the time from acquisition to release with a predetermined time of one task required to occupy the shared resource.
Further, when time-out (predetermined time elapses), the following processing (a) or (b) is performed.
[0005]
(A) The resource request from another task is checked. If there is no request, the timer is restarted and the processing is continued. If requested, the resource is forcibly released from the task in use, and the resource is allocated to the task making the resource request.
(B) The resource is forcibly released from the task in use, and a resource request from another task is checked. If requested, allocate resources to the requesting task.
[0006]
[Problems to be solved by the invention]
In the conventional technology described above, depending on the timing of the memory block acquisition / release processing, there is no free memory block as shown as T90 area in FIG. 11, and as a result, any task is in a wait state. .
Accordingly, there is a problem in that any task processing is not performed (deadlock due to acquisition of a memory block), and an abnormal program operation (deadlock) occurs.
Such a phenomenon occurs not only when there is a logical error in the description of the memory block acquisition / release process, but also when there is no logical error.
[0007]
In the exclusive control device disclosed in Japanese Patent Application Laid-Open No. 09-026888, task context standby / return processing is performed as recovery processing upon error detection.
However, if the acquired task and the released task are different, the context to be saved is that of the acquiring task. That is, the recovery process does not operate normally because the information is not related to the release-side task that must be recovered from the deadlock.
[0008]
In the exclusive control device disclosed in Japanese Patent Application Laid-Open No. 09-026888, a timer must be held for each task or each resource. Therefore, it is necessary to prepare a timer for each memory block.
However, it is difficult to prepare a large number of timers as hardware for that purpose, and there is a problem that a large amount of memory is required when a timer using software is used.
Therefore, it is difficult to apply to an MCU (Micro Controller Unit) having a small amount of built-in RAM.
The software timer is a timer which prepares a memory for counting and counts a plurality of timers by software when hardware is generated at regular intervals.
[0009]
Furthermore, in the exclusive control device disclosed in Japanese Patent Application Laid-Open No. 09-026888, a determination process for each process node and a determination process for each timeout are frequently required, so that a large load is applied to the CPU. It was.
[0010]
In the data processing apparatus disclosed in Japanese Patent Application Laid-Open No. 62-229342, the timer is always restarted when the idle task is executed, and the abnormality is detected when the timer passes a certain time.
However, since it is assumed that the idle task is always executed within the timer overflow time, the timer is not restarted in a system that is so busy that the idle task is not executed. Is detected.
In addition, even if a task to be executed is not executed in a waiting state, the timer is restarted in an idle task, so that even if an abnormality occurs, it is not determined as abnormal.
[0011]
The present invention has been made in view of the above problems in the prior art, and can reliably detect a memory block acquisition state and a deadlock other than the memory block acquisition state, thereby reducing the amount of memory used and reducing the CPU usage. An object of the present invention is to provide a deadlock detection method capable of reducing the applied load.
[0012]
[Means for Solving the Problems]
In the first invention of the present application for solving the above-mentioned problem, after the operation system assigns one task to a predetermined memory block from the memory block group, a message is sent from one task to which the memory block is assigned to another task. A deadlock detection method for detecting an abnormality in a system that executes a software process by releasing a memory block by another task that has received a message,Until one task assigned to a memory block sends a message to another task, and the other task sends a memory block release request messageA deadlock detection method characterized in that the duration is measured by a measuring means.
In the second invention of the present application for solving the above-mentioned problem, after the operation system assigns one task to a predetermined memory block from the memory block group, a message is sent from one task to which the memory block is assigned to another task. Is a deadlock detection method that detects anomalies in a system that executes a software process by releasing a memory block by another task that has received a message, and is one task assigned to the last free memory block Is a deadlock detection method characterized in that a measurement unit measures a duration until a message is sent to another task and the other task sends a memory block release request message.
According to a third invention of the present application for solving the above-mentioned problem, in the deadlock detection method of the first or second invention of the present application, the measuring means transmits a message by one task assigned to the memory block group. The measurement is started at the timing, and the duration is measured by stopping the measurement at the timing when another task transmits a message.
According to a fourth invention of the present application for solving the above-mentioned problem, in the deadlock detection method of the first or second invention of the present application, the measuring means transmits a message by one task assigned to the memory block group. It is set at the timing, and the duration is measured by resetting the measurement at the timing when another task receives the message.
[0013]
Therefore,Of the present inventionAccording to the deadlock detection method, after a task is assigned to the last free memory block, the duration during which each task assigned to the memory block group occupies the memory block group is measured by the measuring means. Since software abnormality detection is performed, a deadlock other than a memory block acquisition waiting state or a memory block acquisition waiting state can be reliably detected. In addition, the number of measurement points is limited, and the deadlock can be reliably detected with one measurement means, so that the amount of memory used can be reduced and the load on the CPU is reduced because the number of determination points is reduced. Can be made.
Further, since the deadlock can be detected without depending on the number of tasks, there is an advantage that it is not necessary to change the setting related to abnormality detection when the number of tasks changes.
Furthermore, the measurement location is limited, and the deadlock can be reliably detected with one measurement means, so that the amount of memory used can be reduced.
In addition, since the number of determination points is reduced, the load on the CPU can be reduced.
[0015]
Therefore,Of the present inventionAccording to the deadlock detection method, after one task is assigned to the last free memory block, one task assigned to the memory block group sends a message and another task receives the message. Since anomaly detection is performed by measuring the duration using the measurement means, it is possible to determine whether the message has been received normally. Locks can be reliably detected.
[0017]
Therefore,Of the present inventionAccording to the deadlock detection method of the invention, the measuring means is restarted when the memory block of the task is acquired, when the memory block of the task is released, or when the idle task is executed in the presence of an empty memory block, and the time until restarting is continued. Therefore, the deadlock other than the memory block acquisition waiting state or the memory block acquisition waiting state can be reliably detected without depending on the processing state of the system.
[0018]
The fifth invention of the present application for solving the above-mentioned problem isAfter the operation system assigns one task to a predetermined memory block from the memory block group, it sends a message from one task to which the memory block is assigned to another task, and the other task that received the message receives the memory. A deadlock detection method for detecting an abnormality in a system that releases a block and executes software processing,Until one task assigned to a memory block sends a message to another task, and the other task sends a memory block release request messageA computer-readable recording medium recording a program for causing a computer to execute a deadlock detection method characterized in that abnormality detection is performed by measuring a duration time by a measuring means.
In the sixth invention of the present application for solving the above-mentioned problem, after the operation system assigns one task to a predetermined memory block from the memory block group, a message is sent from one task to which the memory block is assigned to another task. Is a deadlock detection method that detects anomalies in a system that executes a software process by releasing a memory block by another task that has received a message, and is one task assigned to the last free memory block Sends a message to another task, and the abnormality detection is performed by measuring the duration until the other task sends a memory block release request message by measuring means. A computer-readable recording of a program that causes a computer to execute Which is a recording medium.
The seventh invention of the present application that solves the above-mentioned problems is the computer-readable recording medium of the fifth or sixth invention of the present application, wherein the measuring means has a message assigned to one task assigned to the memory block group as a message. A program that causes a computer to execute a deadlock detection method that starts measurement at the timing of transmission and detects anomalies by measuring the duration by stopping the measurement at the timing when another task transmits a message. Is recorded.
According to an eighth aspect of the present invention for solving the above-mentioned problem, in the computer-readable recording medium of the fifth or sixth aspect of the present application, the measuring means is characterized in that a task assigned to a memory block group is a message. Records a program that causes a computer to execute a deadlock detection method that is set at the time of transmission and detects the anomaly by measuring the duration by resetting the measurement when another task receives the message. It is a thing.
[0019]
Therefore,Of the present inventionAccording to the computer-readable recording medium recording the program for causing the computer to execute the deadlock detection method, each task assigned to the memory block group is assigned to the memory block group after the task is assigned to the last free memory block. Since the duration of occupying the memory block is measured by the measuring means, a deadlock other than the memory block acquisition waiting state or the memory block acquisition waiting state can be reliably detected. In addition, since the measurement locations are limited, the amount of memory used can be reduced, and the number of determination locations can be reduced, thereby reducing the load on the CPU.
The recording medium refers to a medium including an auxiliary storage medium such as a CD-ROM, a DVD-ROM, and a flexible disk, or a main storage medium such as a hard disk.
[0021]
Therefore,Of the present inventionAccording to the computer-readable recording medium recording the program for causing the computer to execute the deadlock detection method, after one task is assigned to the last free memory block, one task assigned to the memory block group is Since the message is sent and the duration until the other task receives the message is measured by the measuring means, it can be judged whether the message is received normally, and the memory block acquisition waiting state Alternatively, it is possible to reliably detect a deadlock other than the memory block acquisition waiting state. In addition, since the measurement locations are limited, the amount of memory used can be reduced, and the number of determination locations can be reduced, thereby reducing the load on the CPU.
[0023]
Therefore,Of the present inventionAccording to a computer-readable recording medium that records a program for causing a computer to execute the deadlock detection method, the measuring means is restarted when the memory block of the task is acquired, when the memory block of the task is released, and when the idle task is executed. Since the start time is continuously measured, a deadlock other than the memory block acquisition waiting state or the memory block acquisition waiting state can be reliably detected even when the processing state of the entire system is busy or quiet. In addition, since the measurement locations are limited, the amount of memory used can be reduced, and the number of determination locations can be reduced, thereby reducing the load on the CPU.
[0024]
DETAILED DESCRIPTION OF THE INVENTION
A deadlock detection method according to an embodiment of the present invention and a computer-readable recording medium recording a program for causing a computer to execute the method will be described below with reference to the drawings.
[0025]
(Embodiment 1)
FIG. 1 is a schematic diagram showing the configuration of a system for realizing a deadlock detection method according to
[0026]
As shown in FIG. 1, a system that realizes the deadlock detection method according to the first embodiment of the present invention is constituted by a
[0027]
The
Among the plurality of tasks, the
The memory block used for message communication is acquired by the
[0028]
All the memory block acquisition / release processes are executed by calling the
When the
If there is no free space in the
Further, when the
[0029]
Next, the operation of the system that realizes the deadlock detection method of the first embodiment of the present invention described above will be described.
First, a memory block acquisition request is transmitted to the
Next, after the
Thereafter, the
Here, the
Finally, if it is determined that a system abnormality has occurred, error processing is performed.
[0030]
Next, FIG. 3A, FIG. 3B, and FIG. 3C show a deadlock detection method according to the first embodiment of the present invention and a computer-readable recording medium on which a program for causing the computer to execute the method is recorded. This will be described in more detail with reference to FIG.
First, the operation when message communication is performed using the
[0031]
(1) After the memory block acquisition process, the number of remaining free memory blocks is not 0 (see FIGS. 3A and 4).
After the memory block acquisition process (S11), the number of remaining free memory blocks is checked (S12). At this time, the
[0032]
(2) When the number of remaining free memory blocks after the memory block acquisition processing is 0 and is released within a certain period (see FIGS. 3B and 4).
After the memory block acquisition process (S11), the
After the memory block release process (S31), the
[0033]
(3) The number of remaining free memory blocks after the memory block acquisition processing is 0 and is not released within a certain period (see FIGS. 3C and 4).
After the memory block acquisition process (S11), the
Since the memory block is not released before the
[0034]
When message communication is normally performed (when message transmission / message reception proceeds without delay), a period in which an empty memory block exists is always generated, so that a timeout of
On the contrary, if the message communication is not normally performed (that is, the message is not received), the memory block is not released. Accordingly, the vacancy in the
If the state in which the
[0035]
Next, another embodiment of the deadlock detection method according to the first embodiment of the present invention and a computer-readable recording medium recording a program for causing a computer to execute the method will be described with reference to the drawings.
FIG. 5 is a timing chart showing the operation of the deadlock detection method according to the first embodiment of the present invention, and FIG. 6 is a flowchart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
[0036]
As shown in FIGS. 5 and 6, the
[0037]
Since message communication is performed using a memory block, message transmission and memory block acquisition processing are always performed in pairs. The same applies to message reception and memory block release processing.
Therefore, when there is no space in the
[0038]
Also, the memory block is released whenever a message is received.
Therefore, when the reception process is normally performed, a period in which there is a vacancy in the
[0039]
(Embodiment 2)
Next, a deadlock detection method according to a second embodiment of the present invention and a computer-readable recording medium on which a program for causing a computer to execute the method will be described with reference to the drawings.
FIG. 7 is a system configuration diagram showing the configuration of a deadlock detection method according to the second embodiment of the present invention and a computer-readable recording medium on which a program for causing the computer to execute the method is recorded. FIG. 8 (a) and FIG. b) and FIG. 8C are timing charts showing the operation of the deadlock detection method according to the second embodiment of the present invention, and FIG. 9 is a flowchart showing the operation of the deadlock detection method according to the second embodiment of the present invention. .
[0040]
A method of performing an abnormality inspection using a watchdog timer (hereinafter referred to as WDT 6) held by the microcomputer will be described.
As shown in FIG. 7, the deadlock detection method according to the second embodiment of the present invention and the computer-readable recording medium on which the program for causing the computer to execute the method is recorded, the
[0041]
First, with reference to FIG. 8A, FIG. 8B, FIG. 8C, and FIG. 9, the timings at which the
[0042]
(1) When acquiring a memory block (see FIGS. 8A and 9).
After the memory block acquisition process (S11), the
[0043]
(2) When a memory block is released (see FIGS. 8B and 9).
After the memory block release process (S31), the
[0044]
(3) During idle task execution (see FIGS. 8C and 9).
If the number of remaining free memory blocks is not 0 when the idle task is executed,
[0045]
By restarting the
[0046]
Next, detection of an abnormality (deadlock) when the processing state of the entire system is a busy period will be further described with reference to FIG.
Since the processing is proceeding while performing message communication between the tasks, the acquisition / release processing of the memory block accompanying the message communication is always performed when the entire processing is busy.
Therefore, when message communication is performed normally (when message transmission / reception proceeds without delay), memory block acquisition / release processing is performed at the same time, so the
Conversely, when message communication is not normally performed, the acquisition / release process of the memory block is not performed, and the
Further, the time-out means that a certain time elapses with reference to a preset setting value from when the
[0047]
Finally, detection of an abnormality (deadlock) when the processing of the entire system is in a quiet period will be described.
In the off-season, there is no message communication between tasks. Therefore, the memory block acquisition / release process associated with the message communication is not performed.
Here, due to the restart of
However, when an idle task is executed because each task is in a memory block acquisition waiting state, WDT is not restarted depending on the condition of the number of remaining free memory blocks.
Therefore, a timeout of
[0048]
【The invention's effect】
According to the above-described deadlock detection method of the present invention and the computer-readable recording medium on which the program for causing the computer to execute the method is recorded, the duration of the state in which the
Therefore, since the
In addition, the load on the CPU can be reduced and the amount of memory used by the
[0049]
When any task deadlocks, the task does not perform the release process, so the number of free memory blocks gradually decreases, and as a result, the
[0050]
Furthermore, since the start and stop of the
Therefore, an abnormality detection process (deadlock detection process) can be incorporated in the
[0051]
In addition, when the abnormality detection process is incorporated in the
Therefore, software that does not consider abnormality detection can be easily changed to support abnormality detection.
[0052]
In addition, since the start and stop of the
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing a configuration of a deadlock detection method according to a first embodiment of the present invention.
FIG. 2 is a diagram showing an operation of memory block acquisition / release processing when the OS is used in the deadlock detection method according to the first embodiment of the present invention;
FIG. 3A is a timing chart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
(B) Timing chart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
(C) Timing chart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
FIG. 4 is a flowchart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
FIG. 5 is a timing chart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
FIG. 6 is a flowchart showing the operation of the deadlock detection method according to the first embodiment of the present invention.
FIG. 7 is a system configuration diagram for realizing the deadlock detection method according to the second embodiment of the present invention;
FIG. 8A is a timing chart showing the operation of the deadlock detection method according to the second embodiment of the present invention.
(B) Timing chart showing the operation of the deadlock detection method according to the second embodiment of the present invention.
(C) Timing chart showing the operation of the deadlock detection method according to the second embodiment of the present invention.
FIG. 9 is a flowchart showing the operation of the deadlock detection method according to the second embodiment of the present invention.
FIG. 10 is a diagram showing the operation of the deadlock detection method according to the second embodiment of the present invention.
FIG. 11 is an explanatory diagram showing the operation of a conventional deadlock detection method.
FIG. 12 is an explanatory diagram showing the operation of a conventional deadlock detection method.
[Explanation of symbols]
1 timer
2 OS
3 Memory block group
4 Task group
4a task
4b task
5a System call
5b System call
6 WDT
Claims (8)
メモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することを特徴とするデッドロック検出方法。After the operation system assigns one task to a predetermined memory block from the memory block group, it sends a message from one task to which the memory block is assigned to another task, and the other task that received the message receives the memory. A deadlock detection method for detecting an abnormality in a system that releases a block and executes software processing,
One task assigned to a memory block sends a message to another task, and the duration until the other task sends a memory block release request message is measured by a measuring means. Lock detection method.
最後の空きメモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することを特徴とするデッドロック検出方法。After the operation system assigns one task to a predetermined memory block from the memory block group, it sends a message from one task to which the memory block is assigned to another task, and the other task that received the message receives the memory. A deadlock detection method for detecting an abnormality in a system that releases a block and executes software processing,
One task assigned to the last free memory block transmits a message to another task, and the duration until the other task sends a memory block release request message is measured by the measuring means. Deadlock detection method.
メモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することで異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。After the operation system assigns one task to a predetermined memory block from the memory block group, it sends a message from one task to which the memory block is assigned to another task, and the other task that received the message receives the memory. A deadlock detection method for detecting an abnormality in a system that releases a block and executes software processing,
One task assigned to a memory block sends a message to another task, and anomaly detection is performed by measuring the duration until the other task sends a memory block release request message by the measuring means. A computer-readable recording medium on which a program for causing a computer to execute the deadlock detection method is recorded.
最後の空きメモリブロックに割り当てられた一のタスクが他のタスクにメッセージを送信し、当該他のタスクがメモリブロックの解放要求のメッセージを送信するまでの継続時間を計測手段により計測することで異常検出を行うことを特徴とするデッドロック検出方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。After the operation system assigns one task to a predetermined memory block from the memory block group, it sends a message from one task to which the memory block is assigned to another task, and the other task that received the message receives the memory. A deadlock detection method for detecting an abnormality in a system that releases a block and executes software processing,
One task assigned to the last free memory block sends a message to another task, and the measurement means measures the duration until the other task sends a memory block release request message. A computer-readable recording medium having recorded thereon a program for causing a computer to execute a deadlock detection method characterized by performing detection.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP34694399A JP3698938B2 (en) | 1999-12-06 | 1999-12-06 | Deadlock detection method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP34694399A JP3698938B2 (en) | 1999-12-06 | 1999-12-06 | Deadlock detection method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001166953A JP2001166953A (en) | 2001-06-22 |
| JP3698938B2 true JP3698938B2 (en) | 2005-09-21 |
Family
ID=18386877
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP34694399A Expired - Fee Related JP3698938B2 (en) | 1999-12-06 | 1999-12-06 | Deadlock detection method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3698938B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2502123C1 (en) * | 2012-07-20 | 2013-12-20 | Федеральное государственное унитарное предприятие "Центральный научно-исследовательский институт машиностроения" (ФГУП ЦНИИмаш) | Method for dynamic control of dead-end situations in information and communication system and apparatus for realising said method |
| WO2014112066A1 (en) * | 2013-01-17 | 2014-07-24 | 富士通株式会社 | Information processing device, memory management method, and program |
| JP6263940B2 (en) * | 2013-10-08 | 2018-01-24 | 株式会社リコー | Exclusive control program, information processing apparatus, exclusive control method |
-
1999
- 1999-12-06 JP JP34694399A patent/JP3698938B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001166953A (en) | 2001-06-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5918049A (en) | Method for managing resources allocated in a computer | |
| US8245236B2 (en) | Lock based moving of threads in a shared processor partitioning environment | |
| US7418627B2 (en) | Cluster system wherein failover reset signals are sent from nodes according to their priority | |
| JP2000353103A (en) | Method and device for controlling number of servers in multiple-system cluster | |
| CN106959895B (en) | Resource scheduling method and system for quickly releasing threads | |
| JP2001101033A (en) | Fault monitoring method for operating system and application program | |
| JP2007115246A (en) | Method and apparatus for dynamically allocating resource used by software | |
| WO2016000298A1 (en) | System exception capturing method, main system, shadow system and intelligent device | |
| CN102222036B (en) | Automatic testing method and equipment | |
| US20030018682A1 (en) | Computer system and computer-readable record medium | |
| JP3698938B2 (en) | Deadlock detection method | |
| WO2015180111A1 (en) | Method, apparatus and device for managing system resource | |
| WO2011104812A1 (en) | Multi-core processor system, interrupt program, and interrupt method | |
| JP5625379B2 (en) | Lock contention management device, lock contention management method, and program | |
| JP2012517057A (en) | Apparatus, method, and computer program for maintaining data integrity (apparatus for maintaining data consistency) | |
| CN112363828B (en) | Memory fragmentation management method, device, vehicle-mounted system and vehicle | |
| JPWO2018211865A1 (en) | Vehicle control device | |
| CN115080247B (en) | High-availability thread pool switching method and device | |
| CN119806762B (en) | Distributed task scheduling method, system and program product | |
| JPH10116261A (en) | Checkpoint restart method for parallel computer system | |
| JP4773715B2 (en) | How to get checkpoint | |
| JP5867630B2 (en) | Multi-core processor system, multi-core processor system control method, and multi-core processor system control program | |
| CN115495239B (en) | Test resource multiplexing method and device, storage medium and computer equipment | |
| CN104714924B (en) | A kind of resource control method and device | |
| JPH0527993A (en) | Deadlock detection processing method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041005 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041021 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041220 |
|
| 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: 20050614 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050706 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090715 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100715 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100715 Year of fee payment: 5 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100715 Year of fee payment: 5 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110715 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120715 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120715 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130715 Year of fee payment: 8 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |