JP2004280538A - Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure - Google Patents

Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure Download PDF

Info

Publication number
JP2004280538A
JP2004280538A JP2003072013A JP2003072013A JP2004280538A JP 2004280538 A JP2004280538 A JP 2004280538A JP 2003072013 A JP2003072013 A JP 2003072013A JP 2003072013 A JP2003072013 A JP 2003072013A JP 2004280538 A JP2004280538 A JP 2004280538A
Authority
JP
Japan
Prior art keywords
task
failure
interrupt
infinite loop
program
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
Application number
JP2003072013A
Other languages
Japanese (ja)
Inventor
Junichi Ogawara
淳一 大河原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
MX Mobiling Ltd
Original Assignee
NEC Corp
MX Mobiling Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp, MX Mobiling Ltd filed Critical NEC Corp
Priority to JP2003072013A priority Critical patent/JP2004280538A/en
Publication of JP2004280538A publication Critical patent/JP2004280538A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an efficient method and system for preventing a malfunction in failure in a radio base station system. <P>SOLUTION: A failure detection means 303 detects failure of its own device by interruption. An interruption prohibiting means 304 prohibits the interruption except a CPU internal interruption and a debugging external interruption when the failure of the own device is detected by the failure detection means 303. An endless loop generation means 305 is started by the interruption prohibiting means 304 to generate a predetermined top-level task 306. The top-level task 306 executes an endless loop processing when generated by the generation means 305. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明はコンピュータシステムにおける障害発生時の誤動作防止方法及び障害発生時の誤動作防止方式に関し、特に遠隔から操作されるコンピュータシステムにおける障害発生時の誤動作防止方法及び障害発生時の誤動作防止方式及び障害発生時の誤動作防止プログラムに関する。
【0002】
【従来の技術】
近年、コンピュータシステムは、スタンドアローンはいうに及ばず、ネットワークをルーティングする交換機や、ルーター、ゲートウエイ等のノード、そのネットワークを用いたオンライン情報処理装置、オンライン端末、無線基地局など、ありとあらゆる装置に利用されている。
【0003】
このように、有機的に結合されたコンピュータシステムは、その1つでも故障や障害が発生すると、他の装置に影響を及ぼす可能性があり、時として、ネットワークシステム全てに波及し、社会問題に発展する場合もある。
【0004】
従って、コンピュータシステムに障害が発生した場合に、いかにして、他のシステムに波及しないようにするかについては最重要課題として、様々な検討が成されてきたが、基本的には、以下のようにして対処している。
【0005】
即ち、CPUや、メモリなどの障害で暴走してしまった場合は、外部のウォッチドックタイマ等により、異常を検出し強制的に停止させるか、多重化している場合は予備系に切り替える。
【0006】
ソフトウエアで検出できる障害に対しては、他の装置に影響を及ぼす可能性がない軽微な障害か他の装置に影響を及ぼす可能性がある重大な障害かを切り分け、軽微な障害の場合は、相応の回復処理を図った後サービスを続行する。そして、重大な障害の場合は、サービス実行を予備系に切り替えた後、他のシステムに波及しないように割込を禁止し、コンピュータシステムを停止状態にするため、例えばデバッグモードとし、デバッガルーチンを起動する。(例えば、特許文献1参照。)。
【0007】
【特許文献1】
特開平1−159739
【0008】
【発明が解決しようとする課題】
上述したように、従来のコンピュータシステムにおける障害発生時の誤動作防止方法は、ソフトウエアで検出できる重大障害に対しては、他のシステムに波及しないように割込を禁止し、例えばデバッグモードとしてコンピュータシステムを停止状態にするため、遠隔からの割込による障害情報の収集が出来ない他、デバッグモードのためのデバッグプログラムをコンピュータシステムに常駐させる必要があり、サービスのための記憶領域を圧迫するという問題があった。
【0009】
本発明の目的は、無人無線基地局におけるようなコンピュータシステムにおいて、ソフトウエアで検出できる障害発生時、遠隔からの割込による障害情報の収集を可能にするとともに、サービスのための記憶領域を圧迫することのないように無限ループにすることによりコンピュータシステムを停止状態にするコンピュータシステムにおける障害発生時の誤動作防止方法及び誤動作防止方式を提供することにある。
【0010】
【課題を解決するための手段】
本願の第1の発明は、コンピュータシステムにおける障害発生時の誤動作防止方法において、割込により自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止し、次に予め定められた最上位タスクを生成し、前記最上位タスクで無限ループ処理を実行させることを特徴とする。
【0011】
本願の第2の発明は、第1の発明の前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする。
【0012】
本願の第3の発明は、第1の発明の前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする。
【0013】
本願の第4の発明は、第1の発明の前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする。
【0014】
本願の第5の発明は、コンピュータシステムにおける障害発生時の誤動作防止方式において、割込により自装置の障害を検出する障害検出手段と、前記障害検出手段により前記自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止する割り込み禁止手段と、前記割り込み禁止手段により起動され予め定められた最上位タスクを生成する無限ループ発生手段と、前記無限ループ発生手段により生成されると無限ループ処理を実行する前記最上位タスクを含んで構成されることを特徴とする。
【0015】
本願の第6の発明は、第5の発明の前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする。
【0016】
本願の第7の発明は、第5の発明の前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする。
【0017】
本願の第8の発明は、第5の発明の前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする。
【0018】
本願の第9の発明は、コンピュータシステムにおける障害発生時の誤動作防止プログラムにおいて、割込により自装置の障害を検出する障害検出プログラムと、前記障害検出プログラムにより前記自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止する割り込み禁止プログラムと、前記割り込み禁止プログラムにより起動され予め定められた最上位タスクを生成する無限ループ発生プログラムと、前記無限ループ発生プログラムにより生成されると無限ループ処理を実行する前記最上位タスクを含んで構成されることを特徴とする。
【0019】
本願の第10の発明は、第9の発明の前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする。
【0020】
本願の第11の発明は、第9の発明の前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする。
【0021】
本願の第12の発明は、第9の発明の前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする。
【0022】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0023】
図1は、本発明の一実施の形態を示すシステム構成図である。
、図1において、自装置100は、無線基地局装置の構成例であり、機能分散のため複数の機能部102−1〜102−3から構成されている(本例では3個で示しているが、これに限定されるものではない)。そして、各機能部102は、自系機能部と他系機能部の冗長構成をとっており、本実施例の機能部102−1の自系機能部103は、運用中に障害が検出されて予備系になり、他系機能部104はそれに伴い予備系から運用系に移行したものとする。
【0024】
他装置101は、自装置100をネットワークを介して制御する上位局ノードである。
【0025】
デバックパソコン105は、遠隔からネットワークを介して各機能部の障害を収集するための装置である。
【0026】
各機能部は、自系機能部103に示すように、他機能部と通信したり、ローカルスイッチである他装置101等との入出力を行う外部I/Fデバイス1と、デバックパソコン105と通信するためのデバック用外部I/Fデバイス2と、外部I/Fデバイス1とデバック用外部I/Fデバイス2の入出力制御を行うG/A3、全体機能処理を行うCPU4で構成される。
【0027】
障害が発生した自系機能部103は他装置101や他機能部(1022、102−3)や他系機能部104の動作に影響を与えないようにする必要がある。
【0028】
そのため障害を検出した自系機能部103は、CPU4で外部I/Fデバイス1の割り込みを禁止し、外部からの入力を受け付けないようにし、障害情報を遠隔のデバックパソコン105から取得出来るように、デバック用外部I/Fデバイス2の割り込みを許可する。
【0029】
図2は、本発明の一実施の形態を示す各機能部におけるCPU4の処理のブロック構成図である。
【0030】
外部割込み受付手段301は、外部I/Fデバイス1からの割り込みを受け付け、受け付けた内容を処理手段302に渡す。また、処理手段302からのデータを受け付け、外部I/Fデバイス1へ出力する。
【0031】
処理手段302は、外部割込み受付手段301で受け付けた内容に応じた動作を行う。実行結果などを外部割込み受付手段301へ渡す。
【0032】
外部割込み受付手段301や処理手段302により、通常運用している場合は、他機能部102−2、他機能部102−3や他装置101や他系機能部104との通信等を行う。
【0033】
障害検出手段303は、処理手段302の障害や外部I/Fデバイス1の障害を検出する。検出したときは割り込み禁止手段304へ処理を渡す。
【0034】
ここで、自系機能部の障害かどうかは、障害の内容によって判断できる。例えば、メモリの書込禁止領域への書込要求があった場合や、I/Oエラーが発生し、現用予備の切換を行っても尚、エラーが発生するような場合は、自系の障害と判断できる。
【0035】
割り込み禁止手段304は、外部割込み受付手段301の割り込み受付を禁止させ、無限ループ発生手段105へ処理を渡す。
【0036】
無限ループ発生手段305は、最上位タスク306を生成し、最上位タスク306に制御を渡す。
【0037】
最上位タスク306は、ウォッチドックをクリアしながら、無限ループを実行する。
【0038】
デバック割り込み受付手段307は、デバック用外部I/Fデバイス2からの割り込みを受け付け、受け付けた内容をターミナルコマンド受付実行手段308に渡す。また、ターミナルコマンド受付実行手段308からのデータを受け付け、デバック用外部I/Fデバイス2へ出力する。
【0039】
ターミナルコマンド受付実行手段308は、デバック割り込み受付手段307から受け付けた内容に応じて実行する。また、実行結果などをデバック割り込み受け付け手段307へ渡す。
【0040】
デバック割り込み受け付け手段307とターミナルコマンド受付実行手段308は最上位タスク306よりプライオリティの高いタスクで動作させる。
【0041】
また、最上位タスク306は処理手段302、障害検出手段303よりプライオリティの高いタスクで動作させる。
【0042】
図3は、本発明の一実施の形態を示す各機能部の動作フロー図である。
【0043】
上述の構成である自系機能部103を中心にして図1の装置構成、及び図2の機能ブロック図を参照して説明する。
【0044】
障害検出手段303は、割込により自装置の障害を検出したら、障害処理を行う(ステップ201)。障害が発生した機能部に障害が発生したことをLEDの点灯で保守者に示し(ステップ202)、制御監視機能部に障害が発生したことを通知する(ステップ203)。尚、LEDや制御監視機能部は、図1、及び図2では特に図示していない。
【0045】
その後、割り込み禁止手段304にて、CPU4内部の割り込み、及びデバック用外部割込み以外の割り込みを禁止(ステップ204)することで外部割込み受け付け手段301での割り込み受付を停止させる。そのことで外部要因により処理手段302が動作せず、誤動作防止となる。
【0046】
即ち、外部要因で動作する機能を停止させることにより、他装置101や他機能部102や他系機能部104からの命令やローカルスイッチ制御による外部要因トリガーで動作する機能を停止できる。
【0047】
次に、無限ループ発生手段305で最上位タスク(OSで起動するシステムタスク、ライブラリで起動するタスクの次のプライオリティ)を生成し(ステップ205)、最上位タスク306で無限ループ処理(ステップ206)へ移る。
【0048】
最上位タスク306の優先順位は、ターミナルコマンド受け付け実行手段308とデバック割り込み受け付け手段307の次の優先度とし、処理手段302より優先度は高くする。そのことにより、処理手段302を停止することができる。
【0049】
最上位タスク306での無限ループ処理(ステップ206)では、ハードがソフトウェアの暴走したことを検出するためのウォッチドックをクリアしながらループさせる。
【0050】
ウォッチドックをクリアする理由はハードウェアが保持する障害要因がソフトウェアが暴走したことによる障害にならないようにするためである。
【0051】
次に、ステップ205の最上位タスク306の生成処理の実施例を図4に示す。
【0052】
無線基地局装置の場合、OSにウインドリバー社製のVxWorsk(商標名)を用いる。最上位タスク生成処理(図4の401)にてVxWorskで用意されているタスクを生成する関数”taskSpawn()”を呼び、タスクを生成する。
taskSpawn()では、タスク名、タスクのプライオリティ、オプション、スタックサイズ、ルーチンのアドレスを指定する。タスク名は、無限ループさせるタスクの名前を定義する。タスクのプライオリティは、OSとライブラリのタスクのプライオリティのタスクより低い、かつソフトウェア固有のタスク(オンラインサービスタスク)より高いプライオリティにする。
【0053】
理由はOSとライブラリのタスクと同等またはそれ以上のタスクにすると、デバック機能が停止してしまう。なぜならば、既存のOSとライブラリの機能を用いてデバックを行うためである。また、ソフトウェア固有のタスクより低いプライオリティにするとソフト固有のタスクが動作し、誤動作の元となるためである。
【0054】
オプションは、特に指定を行わない。(特別な動作をさせる必要がないため。)
スタックサイズは最上位タスクとして起動できるサイズを指定する。
【0055】
ルーチンのアドレスはタスク生成した時に呼ぶルーチンのアドレスを指定する。(この場合、無限ループ処理(図4の402)を呼ぶ)
無限ループ処理(図4の402)の詳細を以下に説明する。
【0056】
無線基地局装置の場合、無限ループ処理は障害要因(故障要因)が変化しないよう、ウォッチドックをクリアしながら無限ループさせる。
【0057】
理由として、ハードウェアはソフトウェアが暴走していないか監視をウォッチドックにて行っているため、無限ループ処理を行っている場合でもウォッチドッククリアする。そうすることでハードウェアにてソフトウェアが暴走したと認識させないようにする。
【0058】
上述したように、割り込み禁止手段304にて、外部要因により処理手段302が動作しないようにし、無限ループ発生手段305で最上位タスクを生成し最上位タスク306で無限ループ処理へ移るようにしたことにより、他装置101や他機能部(102−2、102−3)や他系機能部104の動作に影響を与えないようにすることが出来る。
【0059】
【発明の効果】
以上説明したように、本発明は、割り込み禁止手段にて、CPU4内部の割り込み、及びデバック用外部割込み以外の外部要因により処理手段が動作しないようにし、無限ループ発生手段で最上位タスクを生成し最上位タスクで無限ループ処理へ移るようにしたことにより、遠隔からの割込による障害情報の収集を可能にするとともに、サービスのための記憶領域を圧迫することなしに他装置や他機能部や他系機能部の動作に影響を与えないようにすることが出来る効果がある。
【0060】
【図面の簡単な説明】
【図1】本発明の一実施の形態を示すシステム構成図である。
【図2】本発明の一実施の形態を示す各機能部におけるCPU4の処理のブロック構成図である。
【図3】本発明の一実施の形態を示す各機能部の動作フロー図である。
【図4】本発明の最上位タスクの生成処理の一実施例を示す図である。
【符号の説明】
1 外部I/Fデバイス
2 デバック用外部I/Fデバイス
3 G/A
4 CPU
100 自装置
101 他装置
102−1〜102−3 機能部
103 自系機能部
104 他系機能部
105 デバックパソコン
301 外部割込み受付手段
302 処理手段
303 障害検出手段
304 割り込み禁止手段
305 無限ループ発生手段
306 最上位タスク
307 デバック割り込み受付手段
308 ターミナルコマンド受付実行手段
401 最上位タスク生成処理
402 無限ループ処理
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a method for preventing a malfunction in a computer system when a fault occurs, and a method for preventing a malfunction in a faulty computer system. Related to a malfunction prevention program.
[0002]
[Prior art]
In recent years, computer systems have been used for all kinds of devices such as exchanges for routing networks, nodes such as routers and gateways, online information processing devices, online terminals, wireless base stations, etc. Have been.
[0003]
In this way, an organically coupled computer system may affect other devices if one or more failures or failures occur, and sometimes spread to all network systems, causing social problems. It may evolve.
[0004]
Therefore, in the event of a failure in a computer system, various studies have been made as the most important issue on how to prevent it from spreading to other systems. Is dealt with in this way.
[0005]
In other words, when a runaway occurs due to a failure in the CPU or memory, an external watchdog timer or the like detects an abnormality and forcibly stops the operation, or switches to a standby system when multiplexing is performed.
[0006]
For faults that can be detected by software, it is necessary to separate minor faults that may not affect other devices or serious faults that may affect other devices. After the appropriate recovery process, the service is continued. Then, in the case of a serious failure, after switching the service execution to the standby system, interrupts are prohibited so as not to spread to other systems, and the computer system is stopped, for example, the debug mode is set, and the debugger routine is executed. to start. (For example, refer to Patent Document 1).
[0007]
[Patent Document 1]
JP-A-1-159739
[0008]
[Problems to be solved by the invention]
As described above, the conventional method for preventing a malfunction in the event of a failure in a computer system prohibits an interrupt for a serious failure that can be detected by software so as not to spread to other systems. In order to bring the system to a halt state, it is not possible to collect fault information due to remote interrupts, and it is necessary to have a debug program for the debug mode resident in the computer system, and this will put pressure on the storage area for services. There was a problem.
[0009]
SUMMARY OF THE INVENTION It is an object of the present invention to provide a computer system such as an unmanned wireless base station that, when a failure that can be detected by software occurs, enables the collection of failure information by remote interruption and suppresses a storage area for a service. An object of the present invention is to provide a malfunction prevention method and a malfunction prevention method when a failure occurs in a computer system in which the computer system is brought into a halt state by forming an infinite loop so as not to perform the operation.
[0010]
[Means for Solving the Problems]
According to a first aspect of the present invention, in a method for preventing a malfunction in a computer system when a failure occurs, when a failure of its own device is detected by an interrupt, said interrupt other than a prepared internal CPU interrupt and a debug external interrupt is prohibited. Then, a predetermined uppermost task is generated, and an infinite loop process is executed by the uppermost task.
[0011]
The second invention of the present application is characterized in that the highest-level task of the first invention has a priority next to a system task started by the OS and a task started by the library.
[0012]
A third invention of the present application is characterized in that in the infinite loop processing in the highest task of the first invention, a loop is performed while clearing a watchdog prepared in advance.
[0013]
A fourth invention of the present application is characterized in that the top-level task of the first invention is generated using a function for generating a task prepared in advance in the OS.
[0014]
According to a fifth aspect of the present invention, there is provided a method for preventing malfunction of a computer system when a fault occurs in a computer system, wherein a fault detecting means for detecting a fault in the own apparatus by an interrupt and a fault in the own apparatus detected by the fault detecting means are prepared in advance. Interrupt prohibiting means for prohibiting the interrupts other than the interrupted CPU internal interrupt and external interrupt for debugging, an infinite loop generating means activated by the interrupt prohibiting means and generating a predetermined highest-order task, and the infinite loop generating It is characterized by including the top-level task that executes an infinite loop process when generated by the means.
[0015]
According to a sixth aspect of the present invention, the highest-level task of the fifth aspect has a priority next to a system task activated by the OS and a task activated by the library.
[0016]
The seventh invention of the present application is characterized in that in the infinite loop processing in the highest task of the fifth invention, a loop is performed while clearing a watchdog prepared in advance.
[0017]
The eighth invention of the present application is characterized in that the top-level task of the fifth invention is generated using a function for generating a task prepared in advance in the OS.
[0018]
According to a ninth aspect of the present invention, there is provided a program for preventing a malfunction in a computer system when a failure occurs in a computer system, wherein the failure detection program detects a failure of the own device by an interrupt, and the failure detection program detects the failure of the own device in advance. An interrupt prohibition program for prohibiting the interrupts other than the interrupted CPU internal interrupt and the external interrupt for debugging, an infinite loop generation program started by the interrupt prohibition program and generating a predetermined top-level task, and the infinite loop generation It is characterized by including the top-level task that executes an infinite loop process when generated by a program.
[0019]
A tenth aspect of the present invention is characterized in that the highest-level task of the ninth aspect has a priority next to a system task started by the OS and a task started by the library.
[0020]
An eleventh invention of the present application is characterized in that in the infinite loop processing in the highest task of the ninth invention, a loop is performed while clearing a watchdog prepared in advance.
[0021]
The twelfth invention of the present application is characterized in that the top-level task of the ninth invention is generated using a function for generating a task prepared in advance in the OS.
[0022]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[0023]
FIG. 1 is a system configuration diagram showing an embodiment of the present invention.
1, the own device 100 is an example of the configuration of a wireless base station device, and includes a plurality of functional units 102-1 to 102-3 for function distribution (in this example, three units are shown). But is not limited to this). Each functional unit 102 has a redundant configuration of its own function unit and another system function unit. The own system function unit 103 of the function unit 102-1 according to the present embodiment has a failure detected during operation. It is assumed that the standby system has been set and the other system function unit 104 has shifted from the standby system to the active system accordingly.
[0024]
The other device 101 is an upper node that controls the own device 100 via a network.
[0025]
The debug personal computer 105 is a device for remotely collecting the failure of each functional unit via a network.
[0026]
Each functional unit communicates with the external I / F device 1 that communicates with other functional units and performs input / output with the other device 101 or the like, which is a local switch, and the debug personal computer 105 as shown by the own system functional unit 103. And a G / A 3 for controlling input / output of the external I / F device 1 and the external I / F device 2 for debugging, and a CPU 4 for performing overall function processing.
[0027]
It is necessary that the faulty self-system function unit 103 does not affect the operation of the other device 101, the other function unit (1022, 102-3) or the other system function unit 104.
[0028]
Therefore, the self-system function unit 103 that has detected the failure prohibits the interrupt of the external I / F device 1 by the CPU 4 so as not to receive an input from the outside, and obtains the failure information from the remote debug personal computer 105. The interrupt of the external I / F device 2 for debugging is permitted.
[0029]
FIG. 2 is a block diagram of the processing of the CPU 4 in each functional unit according to the embodiment of the present invention.
[0030]
The external interrupt receiving unit 301 receives an interrupt from the external I / F device 1 and passes the received content to the processing unit 302. Further, it receives data from the processing unit 302 and outputs the data to the external I / F device 1.
[0031]
The processing unit 302 performs an operation according to the content received by the external interrupt receiving unit 301. The execution result and the like are passed to the external interrupt receiving unit 301.
[0032]
During normal operation by the external interrupt receiving unit 301 and the processing unit 302, communication with the other function unit 102-2, the other function unit 102-3, the other device 101, and the other system function unit 104 is performed.
[0033]
The failure detection unit 303 detects a failure of the processing unit 302 or a failure of the external I / F device 1. When it is detected, the process is passed to the interrupt prohibition unit 304.
[0034]
Here, whether or not the failure is in the self-system function unit can be determined based on the content of the failure. For example, if there is a write request to the write-protected area of the memory, or if an I / O error occurs and an error still occurs even when the active / standby switching is performed, the failure of the own system will occur. Can be determined.
[0035]
The interrupt prohibiting unit 304 prohibits the external interrupt receiving unit 301 from receiving an interrupt, and passes the process to the infinite loop generating unit 105.
[0036]
The infinite loop generation means 305 generates a top task 306 and transfers control to the top task 306.
[0037]
The top task 306 executes an infinite loop while clearing the watchdog.
[0038]
The debug interrupt receiving unit 307 receives an interrupt from the external I / F device 2 for debugging, and passes the received content to the terminal command reception executing unit 308. Also, it receives data from the terminal command reception execution unit 308 and outputs the data to the external I / F device 2 for debugging.
[0039]
The terminal command reception execution unit 308 executes according to the contents received from the debug interruption reception unit 307. Also, the execution result and the like are passed to the debug interrupt receiving unit 307.
[0040]
The debug interrupt receiving means 307 and the terminal command receiving and executing means 308 are operated by a task having a higher priority than the highest task 306.
[0041]
The highest-level task 306 is operated by a task having a higher priority than the processing unit 302 and the failure detection unit 303.
[0042]
FIG. 3 is an operation flowchart of each functional unit according to the embodiment of the present invention.
[0043]
A description will be given with reference to the device configuration of FIG. 1 and the functional block diagram of FIG. 2 focusing on the self-system function unit 103 having the above configuration.
[0044]
If the failure detecting means 303 detects a failure of the own device by interruption, it performs a failure process (step 201). The maintenance person is notified of the occurrence of the failure in the failed functional unit by turning on an LED (step 202), and is notified of the occurrence of the failure in the control monitoring function unit (step 203). Note that the LED and the control monitoring function unit are not particularly illustrated in FIGS. 1 and 2.
[0045]
Thereafter, the interrupt prohibition unit 304 prohibits the interrupts other than the internal interrupt of the CPU 4 and the external interrupt for debugging (step 204), thereby stopping the interrupt reception by the external interrupt reception unit 301. As a result, the processing means 302 does not operate due to an external factor, thereby preventing malfunction.
[0046]
In other words, by stopping the function that is operated by an external factor, it is possible to stop the function that is operated by an instruction from the other device 101, the other function unit 102, or the other system function unit 104 or an external factor trigger by local switch control.
[0047]
Next, the infinite loop generating means 305 generates the highest task (the system task started by the OS, the next priority of the task started by the library) (step 205), and the highest task 306 executes the infinite loop processing (step 206). Move to
[0048]
The priority of the highest task 306 is the next priority after the terminal command receiving and executing means 308 and the debug interrupt receiving means 307, and has a higher priority than the processing means 302. Thereby, the processing unit 302 can be stopped.
[0049]
In the infinite loop process (step 206) in the highest-order task 306, the hardware is looped while clearing the watchdog for detecting that the software has run away.
[0050]
The reason for clearing the watchdog is to prevent a failure factor held by hardware from becoming a failure due to runaway of software.
[0051]
Next, FIG. 4 shows an embodiment of the generation processing of the uppermost task 306 in step 205.
[0052]
In the case of a wireless base station device, VxWorsk (trade name) manufactured by Wind River is used for the OS. In the highest-level task generation process (401 in FIG. 4), a function “taskSpawn ()” for generating a task prepared by VxWorsk is called to generate a task.
In taskSpawn (), a task name, a task priority, an option, a stack size, and a routine address are specified. The task name defines the name of the task to be looped infinitely. The task priority is lower than the OS and library task priority tasks and higher than the software-specific tasks (online service tasks).
[0053]
The reason is that if the task is equal to or more than the task of the OS and the library, the debug function stops. This is because debugging is performed using the functions of the existing OS and the library. In addition, if the priority is set lower than the task unique to the software, the task unique to the software operates and causes a malfunction.
[0054]
The options are not specified. (Because there is no need to perform special operations.)
The stack size specifies the size that can be started as the top task.
[0055]
The address of the routine specifies the address of the routine to be called when the task is created. (In this case, the infinite loop processing (402 in FIG. 4) is called)
Details of the infinite loop processing (402 in FIG. 4) will be described below.
[0056]
In the case of the wireless base station apparatus, the infinite loop processing is performed in an infinite loop while clearing the watchdog so that the failure factor (failure factor) does not change.
[0057]
The reason is that the hardware monitors the software for runaway in the watchdog, so the watchdog is cleared even when performing infinite loop processing. This will prevent the hardware from recognizing that the software has runaway.
[0058]
As described above, the interrupt prohibiting means 304 prevents the processing means 302 from operating due to an external factor, the infinite loop generating means 305 generates a top task, and the top task 306 shifts to infinite loop processing. Accordingly, the operation of the other device 101, the other function units (102-2, 102-3), and the other system function unit 104 can be prevented from being affected.
[0059]
【The invention's effect】
As described above, according to the present invention, the interrupt disabling means prevents the processing means from operating due to an external factor other than the internal interrupt of the CPU 4 and the external interrupt for debugging, and generates the highest-level task by the infinite loop generating means. By moving to the infinite loop processing in the top-level task, it is possible to collect fault information by remote interrupt, and also to use other devices and other functional units and There is an effect that the operation of the other system function unit is not affected.
[0060]
[Brief description of the drawings]
FIG. 1 is a system configuration diagram showing an embodiment of the present invention.
FIG. 2 is a block diagram of a process of a CPU 4 in each functional unit according to the embodiment of the present invention.
FIG. 3 is an operation flowchart of each functional unit according to the embodiment of the present invention;
FIG. 4 is a diagram showing an embodiment of a process of generating a top-level task according to the present invention.
[Explanation of symbols]
1 External I / F device 2 External I / F device for debugging 3 G / A
4 CPU
REFERENCE SIGNS LIST 100 own device 101 other devices 102-1 to 102-3 function unit 103 own system function unit 104 other system function unit 105 debug personal computer 301 external interrupt accepting unit 302 processing unit 303 failure detecting unit 304 interrupt prohibiting unit 305 infinite loop generating unit 306 Top-level task 307 Debug interrupt reception unit 308 Terminal command reception execution unit 401 Top-level task generation processing 402 Infinite loop processing

Claims (12)

コンピュータシステムにおける障害発生時の誤動作防止方法において、割込により自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止し、次に予め定められた最上位タスクを生成し、前記最上位タスクで無限ループ処理を実行させることを特徴とする障害発生時の誤動作防止方法。In the method of preventing malfunction of a computer system when a fault occurs, when a fault of the own device is detected by an interrupt, the interrupt other than a prepared internal interrupt of the CPU and an external interrupt for debugging is prohibited, and then a predetermined predetermined A method for preventing a malfunction when a failure occurs, wherein a higher-level task is generated and an infinite loop process is executed by the highest-level task. 前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする請求項1記載の障害発生時の誤動作防止方法。2. The method according to claim 1, wherein the highest-level task has a priority next to a system task started by an OS and a task started by a library. 前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする請求項1記載の障害発生時の誤動作防止方法。2. The method according to claim 1, wherein in the infinite loop processing in the highest-level task, the loop is performed while clearing a watchdog prepared in advance. 前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする請求項1記載の障害発生時の誤動作防止方法。2. The method according to claim 1, wherein the highest-level task is generated using a function that generates a task prepared in advance in the OS. コンピュータシステムにおける障害発生時の誤動作防止方式において、割込により自装置の障害を検出する障害検出手段と、前記障害検出手段により前記自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止する割り込み禁止手段と、前記割り込み禁止手段により起動され予め定められた最上位タスクを生成する無限ループ発生手段と、前記無限ループ発生手段により生成されると無限ループ処理を実行する前記最上位タスクを含んで構成されることを特徴とする障害発生時の誤動作防止方式。In a malfunction prevention method in the event of a failure in a computer system, a failure detecting means for detecting a failure of the own apparatus by an interrupt, and an interrupt and debug inside a CPU prepared when a failure of the own apparatus is detected by the failure detecting means. Interrupt prohibiting means for prohibiting the interrupts other than external interrupts for use, an infinite loop generating means activated by the interrupt prohibiting means and generating a predetermined top-level task, and an infinite loop generated by the infinite loop generating means. A malfunction prevention method at the time of occurrence of a fault, characterized in that the malfunction prevention method is configured to include the top-level task for executing processing. 前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする請求項5記載の障害発生時の誤動作防止方式。6. The system according to claim 5, wherein the highest-level task has a priority next to a system task started by an OS and a task started by a library. 前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする請求項5記載の障害発生時の誤動作防止方式。6. The malfunction preventing method according to claim 5, wherein the infinite loop processing in the highest-level task loops while clearing a watchdog prepared in advance. 前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする請求項5記載の障害発生時の誤動作防止方式。6. The system according to claim 5, wherein the highest-level task is generated using a function that generates a task prepared in advance in the OS. コンピュータシステムにおける障害発生時の誤動作防止プログラムにおいて、割込により自装置の障害を検出する障害検出プログラムと、前記障害検出プログラムにより前記自装置の障害を検出すると予め用意されたCPU内部の割り込み及びデバック用外部割込み以外の前記割り込みを禁止する割り込み禁止プログラムと、前記割り込み禁止プログラムにより起動され予め定められた最上位タスクを生成する無限ループ発生プログラムと、前記無限ループ発生プログラムにより生成されると無限ループ処理を実行する前記最上位タスクを含んで構成されることを特徴とする障害発生時の誤動作防止プログラム。In a malfunction prevention program in the event of a failure in a computer system, a failure detection program for detecting a failure of the own device by an interrupt, and an interrupt and debug inside the CPU prepared when a failure of the own device is detected by the failure detection program An interrupt-inhibiting program for inhibiting the interrupts other than external interrupts for use, an infinite loop generating program activated by the interrupt-inhibiting program to generate a predetermined top-level task, and an infinite loop generated by the infinite loop generating program. A malfunction prevention program at the time of occurrence of a fault, the program including the top-level task for executing processing. 前記最上位タスクは、OSで起動するシステムタスク及びライブラリで起動するタスクの次のプライオリティであることを特徴とする請求項9記載の障害発生時の誤動作防止プログラム。10. The program according to claim 9, wherein the top-level task has a priority next to a system task started by an OS and a task started by a library. 前記最上位タスクでの前記無限ループ処理では、予め用意されたウォッチドックをクリアしながらループさせることを特徴とする請求項9記載の障害発生時の誤動作防止プログラム。10. The computer-readable storage medium according to claim 9, wherein in the infinite loop processing in the top task, the loop is performed while clearing a watchdog prepared in advance. 前記最上位タスクは、前記OSに予め用意されているタスクを生成する関数を用いて生成することを特徴とする請求項9記載の障害発生時の誤動作防止プログラム。10. The program according to claim 9, wherein the top-level task is generated using a function that generates a task prepared in advance in the OS.
JP2003072013A 2003-03-17 2003-03-17 Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure Pending JP2004280538A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003072013A JP2004280538A (en) 2003-03-17 2003-03-17 Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003072013A JP2004280538A (en) 2003-03-17 2003-03-17 Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure

Publications (1)

Publication Number Publication Date
JP2004280538A true JP2004280538A (en) 2004-10-07

Family

ID=33288317

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003072013A Pending JP2004280538A (en) 2003-03-17 2003-03-17 Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure

Country Status (1)

Country Link
JP (1) JP2004280538A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489932B2 (en) 2009-07-06 2013-07-16 Nec Corporation Server system and crash dump collection method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489932B2 (en) 2009-07-06 2013-07-16 Nec Corporation Server system and crash dump collection method

Similar Documents

Publication Publication Date Title
US10601657B2 (en) Instance node management method and management device
CN102141947B (en) Method and system for processing abnormal task in computer application system adopting embedded operating system
US6934880B2 (en) Functional fail-over apparatus and method of operation thereof
KR101470712B1 (en) Method and system for minimizing loss in a computer application
CN104486100B (en) Fault treating apparatus and method
RU2007149553A (en) METHODS AND SYSTEMS FOR CORRECTING APPLICATIONS
CN104113428B (en) A kind of equipment management device and method
CN101923508A (en) Exception handling method and device in embedded system
EP2637102B1 (en) Cluster system with network node failover
CN101542444A (en) Security features in interconnect centric architectures
CN102541686A (en) Method for achieving backup and disaster recovery of system by utilizing virtual machine
CN100538647C (en) The processing method for service stream of polycaryon processor and polycaryon processor
CN105790825A (en) Method and apparatus for carrying out hot backup on controllers in distributed protection
JP4655718B2 (en) Computer system and control method thereof
CN103931139B (en) Method and device for redundancy protection, and device and system
CN103890713A (en) Apparatus and method for managing register information in a processing system
CN111078454A (en) Cloud platform configuration recovery method and device
JP2004280538A (en) Method for preventing malfunction in failure, system for preventing malfunction in failure, and program for prevneting malfunction in failure
CN103036778B (en) The ossified apparatus and method of equipment are prevented in a kind of family gateway equipment
CN110489294B (en) Real-time single-step debugging method and device based on log
JP2006285453A (en) Information processor, information processing method, and information processing program
CN107665158A (en) A kind of storage cluster restoration methods and equipment
JP6654662B2 (en) Server device and server system
JP3325785B2 (en) Computer failure detection and recovery method
JP2003173265A (en) System having redundant function card and obstruction countermeasure method

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050304

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060216

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060410

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080606

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081104