JP2008003945A - Monitoring control system and computer management method and program thereof - Google Patents
Monitoring control system and computer management method and program thereof Download PDFInfo
- Publication number
- JP2008003945A JP2008003945A JP2006174381A JP2006174381A JP2008003945A JP 2008003945 A JP2008003945 A JP 2008003945A JP 2006174381 A JP2006174381 A JP 2006174381A JP 2006174381 A JP2006174381 A JP 2006174381A JP 2008003945 A JP2008003945 A JP 2008003945A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- computer
- main body
- capacity
- control system
- 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
Images
Landscapes
- Debugging And Monitoring (AREA)
- Memory System (AREA)
Abstract
【課題】システム稼動時におけるメモリリーク発生を確実に検出可能とすることにより、システムの安定稼動を実現する。
【解決手段】コンピュータ本体の現在の空きメモリ容量を読み出し(S201)、現在の空きメモリ容量が、前回値以下であり(S202のNO、S203のNO)、変化カウンタのカウント値が予め設定された規定値より多い場合(S204のNO)には、メモリリーク検出と判定し、メモリリーク検出を示すアラーム信号を出力する(S205)。変化カウンタのカウント値が規定値以下である場合(S204のNO)には、変化カウンタをカウントアップし(S206)、現在の空きメモリ容量が前回値より多い場合(S202のNO)には、変化カウンタをクリアする(S207)。現在の空きメモリ容量を前回値として記録して(S208)、24時間処理を停止した(S209)後、翌日の同時刻にメモリリーク検出処理を再開する。
【選択図】図2The present invention realizes stable operation of a system by reliably detecting occurrence of a memory leak during system operation.
A current free memory capacity of a computer main body is read (S201), the current free memory capacity is equal to or less than the previous value (NO in S202, NO in S203), and a count value of a change counter is set in advance. If it is greater than the specified value (NO in S204), it is determined that memory leak has been detected, and an alarm signal indicating memory leak detection is output (S205). When the count value of the change counter is less than or equal to the specified value (NO in S204), the change counter is counted up (S206), and when the current free memory capacity is larger than the previous value (NO in S202), the change The counter is cleared (S207). The current free memory capacity is recorded as the previous value (S208), the processing is stopped for 24 hours (S209), and then the memory leak detection process is resumed at the same time on the next day.
[Selection] Figure 2
Description
本発明は、対象システムの監視制御を行う監視制御システムにおいて、システムの安定稼動を確保するための技術に関するものである。 The present invention relates to a technique for ensuring stable operation of a system in a monitoring control system that performs monitoring control of a target system.
従来、各種システムの監視制御を行う監視制御システムにおいては、主制御装置をコンピュータにより構成し、対象システムに応じたプログラムを用いて各種の処理を実現している。このような監視制御システムにおいては、監視制御システム自体の信頼性を高める観点から、主制御装置を構成するコンピュータに、コンピュータ本体の内部異常をハードウェアにより検出する異常監視装置を内蔵させたものが存在している(例えば、特許文献1参照)。 2. Description of the Related Art Conventionally, in a monitoring control system that performs monitoring control of various systems, a main control device is configured by a computer, and various processes are realized using programs according to the target system. In such a supervisory control system, from the viewpoint of enhancing the reliability of the supervisory control system itself, a computer constituting the main controller incorporates an abnormality monitoring device that detects internal abnormality of the computer main body by hardware. Exists (see, for example, Patent Document 1).
具体的に、産業用の監視制御システムに使用される近年の産業用コンピュータにおいては、コンピュータ本体の内部異常を検出するために、RAS機能と総称される異常監視装置が装備されている。ここで、RAS機能とは、コンピュータシステムの信頼性(Reliability)、可用性(Availability)、保守性(Serviceability)の向上を目的とした機能の総称である。このようなRAS機能としては、例えば、プログラム動作不可状態を検知するためのウォッチドッグタイマー(WDT)機能等が知られている。
ところで、コンピュータに実装されている一次記憶領域(以下メモリ)を利用してプログラムは動作するが、プログラム上の不備や想定外の動作により動的に確保したメモリの開放を行わず、利用可能なメモリ容量が不足してしまうことがある。この現象は、一般的に、メモリリークと呼ばれている。 By the way, although the program operates using the primary storage area (hereinafter referred to as memory) mounted on the computer, it can be used without releasing the memory dynamically reserved due to inadequacies in the program or unexpected operations. Memory capacity may be insufficient. This phenomenon is generally called a memory leak.
このメモリリークが発生した場合、特定のプログラムの動作が停止するのみでなく、OSを含めたコンピュータシステム全体のプログラムの動作が停止してしまう場合がある。そのため、監視制御システムに使用されるコンピュータにおいてこのメモリリークが発生すると、本来の目的であるシステム監視制御が実施できなくなる可能性がある。 When this memory leak occurs, not only the operation of a specific program stops, but also the operation of the program of the entire computer system including the OS may stop. For this reason, if this memory leak occurs in the computer used in the supervisory control system, there is a possibility that the original system supervisory control cannot be performed.
これに対し、コンピュータ制御システムのプログラミングの分野においては、従来、プログラム毎にメモリリークを発生させない仕組みやロジックの組み方およびデバッグ方法等が、コンパイラメーカや各種デバッガプログラム開発メーカ等により発表されている。しかし、メモリリークを発生させないように注意して作成したプログラムであっても、プログラム検証ではメモリリークの発生が発見できないまま、システム稼動以降にメモリリーク発生に至る場合がある。 On the other hand, in the field of computer control system programming, compiler manufacturers, various debugger program development manufacturers, and the like have previously announced a mechanism that does not cause a memory leak for each program, a logic assembly method, and a debugging method. However, even if a program is created with care so as not to cause memory leaks, memory leaks may occur after system operation without the occurrence of memory leaks being detected by program verification.
すなわち、メモリリークは個々のプログラムの完成度に起因している問題であり、十分なプログラム検証を実施していれば防げる人的要因不適合であるが、実際上は、概して、十分なプログラム検証を実施することは困難である。 In other words, the memory leak is a problem caused by the completeness of each program, and it is a human factor non-conformity that can be prevented if sufficient program verification is performed, but in practice, sufficient program verification is generally performed. It is difficult to implement.
まず、プログラム開発者は、自身が開発したプログラムを含めたシステム全体の検証において、メモリリークを含めた各種の問題が発生しないことを検証するが、現実的には、異常処理全てのロジックをスルーした検査ができない場合や、ロジック分岐点における全ての条件設定ができない場合が多く、開発者自身のロジック目視検査による検証を実施する場合が多い。 First, the program developer verifies that various problems including memory leaks do not occur in the verification of the entire system including the program developed by himself, but in reality, it bypasses the logic of all abnormal processing. In many cases, the inspection cannot be performed, or all the conditions cannot be set at the logic branch point, and verification by the developer's own visual visual inspection is often performed.
また、コンピュータ制御システムにおいては、24時間365日連続稼働を実施しているシステムがある。このようなシステムでは、プログラム検証に費やした時間をはるかに超えた長時間の連続動作が要求されるので、カレンダーの操作ではなく実時間として長時間経過することによるメモリリークの発生を検証することは、現実的に困難な場合が多い。 Some computer control systems operate continuously for 24 hours 365 days. In such a system, since continuous operation for a long time far exceeding the time spent for program verification is required, it is necessary to verify the occurrence of memory leaks due to long time as real time instead of calendar operation. Are often difficult in practice.
そしてまた、最近は、開発者の自製プログラムのみでシステムを構成することはほぼ皆無で、OSを含めた購入プログラムとの組み合わせを余儀なくされている。そのような複数のプログラムを組み合わせたシステムにおいて、動作試験のみでメモリリークの発生を検証することは困難である。 In addition, recently, almost no system is configured only by a developer's own program, and a combination with a purchased program including an OS is forced. In a system in which such a plurality of programs are combined, it is difficult to verify the occurrence of a memory leak only by an operation test.
以上のように、プログラム検証時にメモリリークの発生を確実に検証することは困難であるため、監視制御システムのコンピュータにおいても、十分なプログラム検証を行うことができないまま、システム稼動以降にメモリリークが発生し、本来の目的であるシステム監視制御が実施できなくなる可能性がある。 As described above, since it is difficult to reliably verify the occurrence of a memory leak at the time of program verification, even if the computer of the supervisory control system cannot perform sufficient program verification, a memory leak will occur after system operation. May occur, and the system monitoring control that is the original purpose may not be performed.
これに対して、RAS機能の一つとして知られている前述したウォッチドッグタイマー(WDT)機能は、対象のプログラムが動作不可に陥り、特定時間内に応答ができないことを検知するのみであるため、そのプログラム動作不可状態が、メモリリーク発生によるものであるのか、あるいは、それ以外のプログラム異常であるかを区別することはできない。 On the other hand, the watchdog timer (WDT) function, which is known as one of the RAS functions, only detects that the target program has become inoperable and cannot respond within a specific time. Therefore, it cannot be distinguished whether the program operation disabled state is due to the occurrence of a memory leak or other program abnormality.
本発明は、上記のような従来技術の課題を解決するために提案されたものであり、その目的は、システム稼動時におけるメモリリーク発生を確実に検出可能とすることにより、システムの安定稼動を実現する監視制御システムとそのコンピュータ管理方法およびプログラムを提供することである。 The present invention has been proposed in order to solve the above-described problems of the prior art. The object of the present invention is to make it possible to reliably detect the occurrence of a memory leak during system operation, thereby ensuring stable system operation. To provide a supervisory control system and a computer management method and program thereof.
本発明は、上記の目的を達成するために、コンピュータ本体のメモリの変化状況を監視してメモリリークを検出し、アラームを出力することにより、システム稼動時におけるメモリリーク発生を確実に検出して、システム運用管理者に警告を促すことができるようにしたものである。 In order to achieve the above-mentioned object, the present invention monitors the memory change state of the computer main body, detects a memory leak, and outputs an alarm, thereby reliably detecting the occurrence of the memory leak during system operation. The system operation manager can be alerted.
すなわち、本発明の監視制御システムのコンピュータ管理方法は、対象システムの監視制御を行う主制御装置を構成するコンピュータ本体とこのコンピュータ本体の内部異常を検出する異常監視装置を備えた監視制御システムのコンピュータ管理方法において、異常監視装置により、コンピュータ本体のメモリの変化状況を監視して、メモリリークを検出した場合にメモリリーク検出を示すアラームを出力するメモリリーク検出処理を行うことを特徴としている。 That is, the computer management method of the monitoring control system of the present invention is a computer of a monitoring control system including a computer main body constituting a main control device that performs monitoring control of a target system and an abnormality monitoring device that detects an internal abnormality of the computer main body. In the management method, the abnormality monitoring device monitors the memory change state of the computer main body, and performs memory leak detection processing for outputting an alarm indicating memory leak detection when a memory leak is detected.
また、本発明の監視制御システムおよびコンピュータ管理プログラムは、上記のコンピュータ管理方法の特徴をシステムおよびプログラムの観点からそれぞれ把握したものである。 The monitoring control system and the computer management program of the present invention grasp the features of the computer management method from the viewpoints of the system and the program.
本発明によれば、システム稼動時におけるメモリリーク発生を確実に検出可能であるため、システムの安定稼動を実現する監視制御システムとそのコンピュータ管理方法およびプログラムを提供することができる。 According to the present invention, it is possible to reliably detect the occurrence of a memory leak during system operation, and therefore it is possible to provide a monitoring control system that realizes stable system operation, a computer management method thereof, and a program.
[第1の実施形態]
[システム構成]
図1は、本発明を適用した監視制御システムの第1の実施形態を示すブロック図である。この図1に示すように、本実施形態の監視制御システム100は、対象システム200の監視制御を行う主制御装置を構成するコンピュータ本体110と、コンピュータ本体110の内部異常を検出するRAS機能装置(異常監視装置)120から構成されている。
[First Embodiment]
[System configuration]
FIG. 1 is a block diagram showing a first embodiment of a supervisory control system to which the present invention is applied. As shown in FIG. 1, the
コンピュータ本体110は、CPU111、メモリ112、補助記憶装置113、インタフェース114、等のハードウェア資源と、補助記憶装置113に保存された監視制御用プログラム115およびデータ116等のソフトウェア資源から構成されている。
The computer
RAS機能装置120は、RAS処理部121、RASメモリ122、コンピュータ本体110の状態を検出する状態検出部123、コンピュータ本体110のハードウェアを制御するハードウェア制御部124、入出力部125等のハードウェア資源と、RASメモリ122に記憶されたコンピュータ管理用プログラム126およびRASデータ127等のソフトウェア資源から構成されている。
The RAS
ここで、状態検出部123は、ウォッチドッグタイマー(WDT)等を含む既存の状態検出部123aに、コンピュータ本体110のメモリ112のメモリ容量を読み出すメモリ容量読み出し部123bとメモリ容量の減少回数をカウントする変化カウンタ123cを追加したハードウェア資源であり、また、入出力部125は、信号入出力部125aとアラーム信号生成部125bを含む。一方、コンピュータ管理用プログラム126は、本発明に従って監視制御システムのコンピュータ管理用に特化されたプログラムである。
Here, the
RAS機能装置120には、以上のような資源により、コンピュータ本体110のメモリ112の変化状況を監視して、メモリリークを検出した場合にメモリリーク検出を示すアラームを出力するメモリリーク検出手段130が構成されている。
The
[システム稼動時の動作]
以上のような第1の実施形態に係る監視制御システム100の稼動時において、主制御装置を構成するコンピュータ本体110は、補助記憶装置113に保存されている監視制御用プログラム115をメモリ112上の作業領域で動作させ、CPU111により監視制御用の処理を実行する。このようなシステム稼動時において、RAS機能装置120に構成されたメモリリーク検出手段130は、メモリリーク検出処理を行う。
[Operation during system operation]
During operation of the
[メモリリーク検出処理]
図2は、第1の実施形態のメモリリーク検出手段130によるメモリリーク検出処理を示すフローチャートである。
[Memory leak detection processing]
FIG. 2 is a flowchart illustrating a memory leak detection process performed by the memory
この図2に示すように、メモリリーク検出手段130は、メモリ容量読出部123bにより、コンピュータ本体110のメモリ112における現在の空きメモリ容量を読み出し(S201)、現在の空きメモリ容量が、前回値以下である場合(S202のNO、S203のNO)には、変化カウンタ123cのカウント値が予め設定された規定値以下であるか否かを判断する(S204)。この場合、規定値の具体的な値は自由に選択可能であるが、例えば、規定値「60カウンタ」と設定できる。
As shown in FIG. 2, the memory leak detection means 130 reads the current free memory capacity in the
変化カウンタ123cのカウント値が規定値より多い場合(S204のNO)には、メモリリーク検出と判定し、アラーム信号生成部125bによりメモリリーク検出を示すアラーム信号を生成して、信号入出力部125aからアラーム信号の出力を行う(S205)。この場合、アラーム出力の方式は、画面やLED等によるアラームメッセージの視覚的表示、アラーム音出力やアラームメッセージ音声出力等、システム運用管理者端末等の外部機器への送信等、適宜選択・組合せ可能である。
When the count value of the
一方、変化カウンタ123cのカウント値が規定値以下である場合(S204のYES)には、変化カウンタ123cをカウントアップする(S206)。また、現在の空きメモリ容量が前回値より多い場合(S202のYES)には、変化カウンタ123cをクリアする(S207)。
On the other hand, when the count value of the
そして、メモリリーク検出のアラーム信号を出力した(S205)後、変化カウンタ125cをカウントアップまたはクリアした(S206、S207)後、あるいは、現在の空きメモリ容量が前回値と変わらない場合(S203のYES)は、現在の空きメモリ容量を前回値として記録して(S208)、24時間処理を停止した(S209)後、翌日の同時刻にメモリリーク検出処理を再開する。 Then, after an alarm signal for memory leak detection is output (S205), the change counter 125c is counted up or cleared (S206, S207), or when the current free memory capacity does not change from the previous value (YES in S203). ) Records the current free memory capacity as the previous value (S208), stops the processing for 24 hours (S209), and then restarts the memory leak detection process at the same time on the next day.
[作用効果]
以上のような第1の実施形態によれば、システム運用上、コンピュータ本体の空きメモリ領域が減少する傾向が発生した場合に、アラームを出力し、システム運用管理者に警告を促すことが可能となる。
[Function and effect]
According to the first embodiment as described above, it is possible to output an alarm and urge the system operation manager to warn when a free memory area of the computer main body tends to decrease in system operation. Become.
すなわち、前述したように、プログラム検証を十分実施したプログラムにおいても、検討外のタイミングが発生する場合や長時間の連続運転時に想定していない組み合わせのロジックを通過してしまう可能性があり、メモリ開放を実施しないケースがあるが、本実施形態によれば、メモリリークが発生した場合でもシステムダウンに至る前に予め運転管理者に警報を促すことができる。したがって、システム運転開始後に本実施形態のメモリリーク検出処理を実施することにより、システム停止に至る以前にメモリリーク要因を調査して対応を図ることが可能となり、システムの安定稼動を実現し、システムの信頼性を確保することができる。 That is, as described above, even in a program that has undergone sufficient program verification, there is a possibility that an unexamined timing may occur or a combination of logics that are not expected during continuous operation for a long time may pass. Although there is a case where the opening is not performed, according to the present embodiment, even when a memory leak occurs, an alarm can be urged to the operation manager in advance before the system goes down. Therefore, by performing the memory leak detection process of the present embodiment after the system operation is started, it is possible to investigate the memory leak factor and take a countermeasure before the system is stopped, thereby realizing the stable operation of the system. Can be ensured.
また、コンピュータ本体上の特定のプログラムでメモリリークの検出を実施するのではなく、コンピュータシステムに付随するRAS機能装置で実現することにより、システム中の特定のアプリケーションの不適合のみを検出するのではなく、システム全体の安全性、信頼性の確保が可能となる。 Also, the detection of memory leaks is not performed by a specific program on the computer main body, but is realized not by detecting only nonconformity of a specific application in the system by being realized by a RAS function device attached to the computer system. As a result, the safety and reliability of the entire system can be ensured.
[第2の実施形態]
[システム構成]
図3は、本発明を適用した監視制御システムの第2の実施形態を示すブロック図である。この図3に示すように、本実施形態の監視制御システム100は、第1の実施形態における監視制御システム100のコンピュータ本体110に、ダミープログラム117を追加し、メモリリーク検出手段130によりこのダミープログラム117を起動・停止するように構成したものである。なお、他の構成は、第1の実施形態と同様である。
[Second Embodiment]
[System configuration]
FIG. 3 is a block diagram showing a second embodiment of the supervisory control system to which the present invention is applied. As shown in FIG. 3, the
[システム稼動時の動作]
以上のような第2の実施形態に係る監視制御システム100の稼動時において、主制御装置を構成するコンピュータ本体110は、補助記憶装置113に保存されている監視制御用プログラム115をメモリ112上で動作させ、CPU111により監視制御用の処理を実行する。この場合、システム稼動開始時には、図4に示すようなメモリリーク検出手段130による初期化処理により、コンピュータ本体110におけるメモリ112上の作業領域の一部は、メモリ容量確保用のダミープログラム117により動的データ領域として確保される。
[Operation during system operation]
When the
[初期化処理]
図4は、第2の実施形態のメモリリーク検出手段130による初期化処理を示すフローチャートである。
[Initialization]
FIG. 4 is a flowchart showing an initialization process by the memory
この図4に示すように、メモリリーク検出手段130は、システム稼動開始時において、メモリ容量読出部123bにより、コンピュータ本体110のメモリ112における現在の総メモリ容量を読み出し(S401)、総メモリ容量に対して予め設定されたメモリ確保比率のメモリ容量を動的データ領域として確保するダミープログラム117を起動する(S402)。この場合、メモリ確保比率の具体的な値は自由に設定可能であるが、例えば、図4に示すように、現在の総メモリ容量の10%と設定できる。
As shown in FIG. 4, the memory
なお、ダミープログラム117の起動に当たっては、メモリ確保関数(例えば、malloc)は、領域を確保しただけでは実メモリを取得しない場合があるため、乱数データを全領域に設定する。
When the
[メモリリーク検出処理]
図5は、第2の実施形態のメモリリーク検出手段130によるメモリリーク検出処理を示すフローチャートである。
[Memory leak detection processing]
FIG. 5 is a flowchart showing a memory leak detection process performed by the memory
この図5に示すメモリリーク検出処理において、現在の空きメモリ容量を読み出し、現在の空きメモリ容量が前回値より低下した場合に、変化カウンタ123cのカウント値が規定値より多ければメモリリーク検出と判定してアラーム信号の出力を行い、あるいは、変化カウンタ125cをカウントアップまたはクリアするまでの一連の処理(S501〜S507)は、符号の下一桁が等しい図2の一連の処理(S201〜S207)と同様である。
In the memory leak detection process shown in FIG. 5, when the current free memory capacity is read and the current free memory capacity is lower than the previous value, it is determined that the memory leak is detected if the count value of the
本実施形態におけるメモリリーク検出処理においては、この一連の処理(S501〜S507)に続いて、空きメモリ容量チェック処理(S510)を行う。この空きメモリ容量チェック処理(S510)において、メモリリーク検出手段130は、現在の空きメモリ容量が総メモリ容量に対して予め設定された空きメモリ比率より低下したか否かをチェックする(S511)。この場合、空きメモリ比率の具体的な値は自由に設定可能であるが、例えば、図5に示すように、現在の総メモリ容量の5%と設定できる。 In the memory leak detection process in the present embodiment, a free memory capacity check process (S510) is performed following this series of processes (S501 to S507). In this free memory capacity check process (S510), the memory leak detection means 130 checks whether or not the current free memory capacity has decreased below a preset free memory ratio with respect to the total memory capacity (S511). In this case, the specific value of the free memory ratio can be set freely, but for example, as shown in FIG. 5, it can be set to 5% of the current total memory capacity.
そして、現在の空きメモリ容量が空きメモリ比率よりも低下した場合(S511のNO)には、メモリリーク検出手段130は、アラーム信号生成部125bにより、メモリ総容量不足を示すアラーム信号を生成して、信号入出力部125aからアラーム信号の出力を行うと共に、コンピュータ本体110上でダミープログラム117が動作していれば、ハードウェア制御部124によりこのダミープログラム117を停止する(S512)。
When the current free memory capacity is lower than the free memory ratio (NO in S511), the memory
この場合、メモリ総容量不足を示すアラーム出力の方式は、メモリリーク検出時におけるアラーム出力と同様に、画面やLED等によるアラームメッセージの視覚的表示、アラーム音出力やアラームメッセージ音声出力等、システム運用管理者端末等の外部機器への送信等、適宜選択・組合せ可能である。 In this case, the alarm output method indicating that the total memory capacity is insufficient is the same as the alarm output when a memory leak is detected, such as visual display of an alarm message on the screen or LED, alarm sound output or alarm message sound output, etc. Transmission to an external device such as an administrator terminal can be selected and combined as appropriate.
そして、この空きメモリ容量チェック処理(S510)を行った後は、現在の空きメモリ容量を前回値として記録して(S508)、24時間処理を停止した(S509)後、翌日の同時刻にメモリリーク検出処理を再開する。 Then, after performing this free memory capacity check process (S510), the current free memory capacity is recorded as the previous value (S508), the process is stopped for 24 hours (S509), and the memory is stored at the same time on the next day. Restart the leak detection process.
[作用効果]
以上のような第2の実施形態によれば、第1の実施形態と同様の作用効果に加えて、さらに次のような作用効果が得られる。
[Function and effect]
According to the second embodiment as described above, in addition to the same functions and effects as those of the first embodiment, the following functions and effects can be obtained.
まず、第2の実施形態によれば、システム稼働開始時に予め特定のメモリ領域を確保するダミープログラムを動作させ、メモリリーク発生によるメモリ枯渇発生時には、ダミープログラムを終了させる。このように、メモリ減少が発生した場合に一定量のメモリ領域を確保していたダミープログラムを終了させることにより、メモリ領域を開放することが可能となる。 First, according to the second embodiment, a dummy program that secures a specific memory area is operated in advance at the start of system operation, and the dummy program is terminated when memory exhaustion occurs due to a memory leak. As described above, when the memory decrease occurs, the memory area can be released by terminating the dummy program that has secured a certain amount of memory area.
この場合、ダミープログラムにより確保されていたメモリ領域分は、その後不正プログラムに利用されることには変わりないが、コンピュータ本体のOSが必要とするメモリ領域を一時的に増やすことにより、メモリ枯渇によるシステム停止に至るまでの時間を、十分に確保することができる。したがって、システムをより安定に稼動することができる。 In this case, the memory area reserved by the dummy program is not changed to be used for an illegal program after that, but by temporarily increasing the memory area required by the OS of the computer main body, the memory area is exhausted. Sufficient time to stop the system can be secured. Therefore, the system can be operated more stably.
また、メモリ確保比率や空きメモリ比率の具体的な値は、自由に設定可能である。例えば、第2の実施形態においては、ダミープログラムの動作中・停止後の区別なしに、同じ空きメモリ比率を用いて空きメモリ容量チェック処理を行ったが、変形例として、空きメモリ容量チェック処理において、ダミープログラムの動作中における第1の空きメモリ比率とダミープログラムの停止後における第2の空きメモリ比率とを異なる値に設定してもよい。 Further, specific values of the memory securing ratio and the free memory ratio can be freely set. For example, in the second embodiment, the free memory capacity check process is performed using the same free memory ratio without distinction between the operation and stop of the dummy program. However, as a modification, in the free memory capacity check process, The first free memory ratio during the operation of the dummy program and the second free memory ratio after the dummy program is stopped may be set to different values.
いずれの場合でも、メモリ確保比率や空きメモリ比率の具体的な値は、過小の値では十分な効果が得られない一方で、過度に大きい値とすることは無駄であるため、一般的には、メモリ確保比率を10%、空きメモリ比率を5%とすることが望ましい。 In either case, the specific values of the memory allocation ratio and the free memory ratio are not sufficient if a small value is obtained, but it is useless to set an excessively large value. It is desirable that the memory securing ratio is 10% and the free memory ratio is 5%.
[第3の実施形態]
本発明を適用した監視制御システムの第3の実施形態として、第2の実施形態と同じ構成の図3に示す監視制御システムにより、図4と図5の処理に代えて、図6と図7に示すように、通常の運用処理によるメモリ変化を考慮した初期化処理とメモリリーク検出処理を行ってもよい。以下には、これらの処理について説明する。
[Third Embodiment]
As a third embodiment of the monitoring control system to which the present invention is applied, the monitoring control system shown in FIG. 3 having the same configuration as that of the second embodiment is replaced with the processing shown in FIGS. As shown in FIG. 6, an initialization process and a memory leak detection process may be performed in consideration of a memory change due to a normal operation process. Hereinafter, these processes will be described.
[初期化処理]
図6は、第3の実施形態のメモリリーク検出手段130による初期化処理を示すフローチャートである。
[Initialization]
FIG. 6 is a flowchart showing an initialization process by the memory
この図6に示すように、第3の実施形態の初期化処理において、現在の総メモリ容量を読み出し(S601)、総メモリ容量に対して予め設定されたメモリ確保比率のメモリ容量を動的データ領域として確保するダミープログラム117を起動する(S602)点は、図4の初期化処理と同様である。本実施形態においては、さらに、通常の運用処理によるメモリ変化を考慮する観点から、総メモリ容量に対して予め設定されたメモリリーク除外比率のメモリ容量をメモリリーク除外定数として設定する(S603)。
As shown in FIG. 6, in the initialization process of the third embodiment, the current total memory capacity is read (S601), and the memory capacity of the memory allocation ratio set in advance with respect to the total memory capacity is set as dynamic data. The point that the
なお、メモリ確保比率やメモリリーク除外比率の具体的な値は自由に設定可能であるが、本実施形態においては、一例として、メモリ確保比率については、図4の初期化処理と同様に、現在の総メモリ容量の10%と設定しており、また、メモリリーク除外比率については、現在の総メモリ容量の1%と設定している。一般的には、これらの値が望ましい。 Note that specific values of the memory allocation ratio and the memory leak exclusion ratio can be freely set. However, in the present embodiment, as an example, the memory allocation ratio is the same as the initialization process of FIG. The memory leak exclusion ratio is set to 1% of the current total memory capacity. In general, these values are desirable.
[メモリリーク検出処理]
図7は、第3の実施形態のメモリリーク検出手段130によるメモリリーク検出処理を示すフローチャートである。
[Memory leak detection processing]
FIG. 7 is a flowchart showing a memory leak detection process performed by the memory
この図7に示すメモリリーク検出処理において、現在の空きメモリ容量を読み出し、現在の空きメモリ容量を前回値と比較するまでの処理(S701〜S703)は、符号の下一桁が等しい図5の一連の処理(S501〜S503)と同様である。 In the memory leak detection process shown in FIG. 7, the processes (S701 to S703) until the current free memory capacity is read and the current free memory capacity is compared with the previous value are the same as those in FIG. This is the same as the series of processing (S501 to S503).
本実施形態におけるメモリリーク検出処理においては、この一連の処理(S701〜S703)に続いて、現在の空きメモリ容量の前回値からの変化量をメモリリーク除外定数と比較する(S720)点のみが、図5のメモリリーク検出処理と異なる点である。そして、メモリリーク除外定数よりも変化量が少ない場合(S720のNO)には、通常の運用処理によるメモリ変化でないと判定して、変化カウンタのカウント値の判定(S704)に進む。 In the memory leak detection process in the present embodiment, following this series of processes (S701 to S703), the amount of change of the current free memory capacity from the previous value is compared with the memory leak exclusion constant (S720). This is different from the memory leak detection process of FIG. If the amount of change is smaller than the memory leak exclusion constant (NO in S720), it is determined that the memory change is not caused by normal operation processing, and the process proceeds to determination of the count value of the change counter (S704).
これに対して、メモリリーク除外定数以上の変化がある場合(S720のYES)には、通常の運用処理によるメモリ変化と判定して、空きメモリ容量チェック処理(S710)を行う。この空きメモリ容量チェック処理(S710)は、図5の空きメモリ容量チェック処理(S710)と同様の処理である。 On the other hand, if there is a change equal to or greater than the memory leak exclusion constant (YES in S720), it is determined that the memory has changed due to normal operation processing, and free memory capacity check processing (S710) is performed. This free memory capacity check process (S710) is the same process as the free memory capacity check process (S710) of FIG.
[作用効果]
以上のような第3の実施形態によれば、第1、第2の実施形態と同様の作用効果に加えて、さらに次のような作用効果が得られる。
[Function and effect]
According to the third embodiment as described above, in addition to the same functions and effects as those of the first and second embodiments, the following functions and effects can be obtained.
まず、第3の実施形態によれば、メモリリーク検出処理において、メモリリークとメモリリーク以外の要因でメモリが枯渇している現象を振り分けることができるため、メモリリーク以外の要因の場合は、メモリリーク検出を示すアラーム出力を行わないようにすることができる。 First, according to the third embodiment, in the memory leak detection process, it is possible to distribute the memory depletion phenomenon due to a factor other than the memory leak and the memory leak. Alarm output indicating leak detection can be prevented from being performed.
すなわち、メモリリークのような発見が困難な現象は、長い時間をかけてメモリが減少していくケースが多い。本実施形態における処理は、この事実に基づくものであり、長期間に亘ってメモリが徐々に減少している場合はメモリリークと判定し、短時間のメモリ減少(変動)ではメモリリークではないと判定して、メモリリーク検出のアラーム出力を行うことはない。 In other words, a phenomenon that is difficult to find such as a memory leak often decreases in memory over a long period of time. The processing in the present embodiment is based on this fact. When the memory gradually decreases over a long period of time, it is determined as a memory leak, and when the memory decreases (fluctuates) for a short time, it is not a memory leak. The alarm output for detecting the memory leak is not performed.
しかしながら、メモリリーク以外の要因であっても、プログラムミスによるメモリ減少が連続的に発生してメモリ枯渇に至る場合もあり、このようなメモリ枯渇自体はコンピュータシステムにおいてシステム全体のプログラム動作停止などの重要な問題に繋がるケースが多い。本実施形態においては、そのようなメモリ枯渇が発生した場合には、空きメモリ容量チェック処理によりそのメモリ枯渇を検出し、メモリ総容量不足を示すアラームを出力することにより、メモリリーク以外のメモリ枯渇についても、システム運用管理者に警告を促すことができる。 However, even if it is a factor other than a memory leak, a memory decrease due to a program mistake may occur continuously, resulting in a memory exhaustion. Such a memory exhaustion itself may cause a program operation stop of the entire system in a computer system. Many cases lead to important problems. In this embodiment, when such a memory depletion occurs, the memory depletion is detected by the free memory capacity check process, and an alarm indicating a shortage of the total memory capacity is output, whereby a memory depletion other than a memory leak occurs. With regard to the above, it is possible to alert the system operation manager to a warning.
以上のように、本実施形態においては、一時的なメモリ減少変化の場合は、メモリリーク検出のアラーム出力を行わないため、実際のシステム運用において誤警報の可能性を減らすことができる。ただし、プログラムミスによるメモリ減少が連続的に発生してしまうような場合を想定し、メモリ枯渇が発生した場合にも、メモリ総容量不足を示すアラームを出力することにより、プログラム停止に至る前にシステム運用管理者に警告を促すことが可能となる。したがって、システムをより安定に稼動することができる。 As described above, in this embodiment, in the case of a temporary memory decrease change, an alarm output for detecting a memory leak is not performed, so that the possibility of a false alarm can be reduced in actual system operation. However, assuming that there is a continuous decrease in memory due to program mistakes, even if memory depletion occurs, an alarm indicating that the total memory capacity is insufficient will be output before the program stops. It is possible to alert the system operation manager to a warning. Therefore, the system can be operated more stably.
[他の実施形態]
なお、本発明は、前述した実施形態に限定されるものではなく、本発明の範囲内で他にも多種多様な変形例が実施可能である。例えば、コンピュータ本体、RAS機能装置やメモリリーク検出手段等の具体的な構成は、ハードウェア資源とソフトウェア資源の両方に亘って自由に選択可能である。また、メモリリーク検出処理やそのための初期化処理の具体的な手順は自由に選択可能である。
[Other Embodiments]
It should be noted that the present invention is not limited to the above-described embodiments, and various other variations can be implemented within the scope of the present invention. For example, specific configurations of the computer main body, the RAS function device, the memory leak detection means, and the like can be freely selected over both hardware resources and software resources. Further, the specific procedure of the memory leak detection process and the initialization process therefor can be freely selected.
100…監視制御システム
110…コンピュータ本体(主制御装置)
111…CPU
112…メモリ
113…補助記憶装置
114…インタフェース
115…監視制御用プログラム
116…データ
117…ダミープログラム
120…RAS機能装置
121…RAS処理部
122…RASメモリ
123…状態検出部
123a…既存の状態検出部
123b…メモリ容量読出部
123c…変化カウンタ
124…ハードウェア制御部
125…入出力部
125a…信号入出力部
125b…アラーム信号生成部
126…コンピュータ管理用プログラム
127…データ
130…メモリリーク検出手段
200…対象システム
100:
111 ... CPU
112 ...
Claims (8)
前記異常監視装置により、
前記コンピュータ本体のメモリの変化状況を監視して、メモリリークを検出した場合にメモリリーク検出を示すアラームを出力するメモリリーク検出処理を行う
ことを特徴とする監視制御システムのコンピュータ管理方法。 In a computer management method of a monitoring control system comprising a computer main body constituting a main control device for performing monitoring control of a target system and an abnormality monitoring device for detecting an internal abnormality of the computer main body,
By the abnormality monitoring device,
A computer management method for a monitoring control system, wherein a memory leak detection process is performed for monitoring a memory change state of the computer body and outputting an alarm indicating a memory leak detection when a memory leak is detected.
前記コンピュータ本体の起動時に、このコンピュータ本体の現時点での総メモリ容量を検出し、検出された総メモリ容量に対して予め設定されたメモリ確保比率のメモリ容量を動的データ領域として確保するダミープログラムをコンピュータ本体上で起動させる初期化処理を行い、
前記メモリリーク検出処理は、
前記コンピュータ本体の空きメモリ容量が、総メモリ容量に対して予め設定された空きメモリ比率以下に低下したか否かをチェックして、空きメモリ比率以下に低下した場合に、容量不足を示すアラームを出力すると共に前記ダミープログラムが動作していればこのダミープログラムを停止する空きメモリ容量チェック処理を含む
ことを特徴とする請求項1に記載の監視制御システムのコンピュータ管理方法。 By the abnormality monitoring device,
A dummy program for detecting the current total memory capacity of the computer main body at the time of starting the computer main body, and ensuring a memory capacity of a memory allocation ratio set in advance with respect to the detected total memory capacity as a dynamic data area Initialization process to start up on the computer,
The memory leak detection process includes
It is checked whether the free memory capacity of the computer main body has dropped below a preset free memory ratio with respect to the total memory capacity. 2. A computer management method for a supervisory control system according to claim 1, further comprising a free memory capacity check process for outputting and stopping the dummy program if the dummy program is operating.
前記コンピュータ本体の空きメモリ容量が、総メモリ容量に対して予め設定された第1の空きメモリ比率以下に低下したか否かをチェックして、第1の空きメモリ比率以下に低下した場合に、容量不足を示すアラームを出力すると共に前記ダミープログラムを停止する第1の空きメモリ容量チェック処理と、
前記ダミープログラムの停止後、前記コンピュータ本体の空きメモリ容量が、総メモリ容量に対して予め設定された第2の空きメモリ比率以下に低下したか否かをチェックして、第2の空きメモリ比率以下に低下した場合に、容量不足を示すアラームを出力する第2の空きメモリ容量チェック処理を含む
ことを特徴とする請求項2に記載の監視制御システムのコンピュータ管理方法。 The memory leak detection process includes
Check whether the free memory capacity of the computer main body has dropped below a first free memory ratio set in advance with respect to the total memory capacity, and if it falls below the first free memory ratio, A first free memory capacity check process for outputting an alarm indicating insufficient capacity and stopping the dummy program;
After stopping the dummy program, it is checked whether or not the free memory capacity of the computer main body has dropped below a second free memory ratio set in advance with respect to the total memory capacity, and the second free memory ratio 3. The computer management method for a monitoring control system according to claim 2, further comprising a second free memory capacity check process for outputting an alarm indicating a shortage of capacity when the capacity drops below.
ことを特徴とする請求項2または請求項3に記載の監視制御システムのコンピュータ管理方法。 4. The computer management method for a supervisory control system according to claim 2, wherein the memory allocation ratio is 10% and the free memory ratio is 5%.
前記メモリリーク検出処理は、前記コンピュータ本体の空きメモリ容量の変化量が、前期メモリリーク除外定数以上である場合に、メモリリークではなく通常の容量変化であると判断する処理を含む
ことを特徴とする請求項2乃至請求項4のいずれか1項に記載の監視制御システムのコンピュータ管理方法。 The initialization process includes a process of setting a memory capacity of a memory leak exclusion ratio set in advance with respect to the detected total memory capacity as a memory leak exclusion constant,
The memory leak detection process includes a process of determining that it is not a memory leak but a normal capacity change when the amount of change in the free memory capacity of the computer main body is equal to or greater than a previous period memory leak exclusion constant. The computer management method of the supervisory control system according to any one of claims 2 to 4.
ことを特徴とする請求項5に記載の監視制御システムのコンピュータ管理方法。 6. The computer management method for a supervisory control system according to claim 5, wherein the memory leak exclusion ratio is 1%.
前記異常監視装置は、
前記コンピュータ本体のメモリの変化状況を監視して、メモリリークを検出した場合にメモリリーク検出を示すアラームを出力するメモリリーク検出手段を有する
ことを特徴とする監視制御システム。 In a monitoring control system including a computer main body that constitutes a main control device that performs monitoring control of a target system and an abnormality monitoring device that detects an internal abnormality of the computer main body,
The abnormality monitoring device is:
A monitoring control system, comprising: a memory leak detecting means for monitoring a memory change state of the computer body and outputting an alarm indicating a memory leak detection when a memory leak is detected.
前記異常監視装置により、
前記コンピュータ本体のメモリの変化状況を監視して、メモリリークを検出した場合にメモリリーク検出を示すアラームを出力するメモリリーク検出処理を行わせる
ことを特徴とする監視制御システムのコンピュータ管理プログラム。 In a computer management program used for an abnormality monitoring device of a monitoring control system including a computer main body constituting a main control device that performs monitoring control of a target system and an abnormality monitoring device that detects an internal abnormality of the computer main body,
By the abnormality monitoring device,
A computer management program for a supervisory control system, which monitors a memory change state of the computer main body and performs a memory leak detection process for outputting an alarm indicating a memory leak detection when a memory leak is detected.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006174381A JP2008003945A (en) | 2006-06-23 | 2006-06-23 | Monitoring control system and computer management method and program thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006174381A JP2008003945A (en) | 2006-06-23 | 2006-06-23 | Monitoring control system and computer management method and program thereof |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2008003945A true JP2008003945A (en) | 2008-01-10 |
Family
ID=39008260
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006174381A Pending JP2008003945A (en) | 2006-06-23 | 2006-06-23 | Monitoring control system and computer management method and program thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2008003945A (en) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009258955A (en) * | 2008-04-16 | 2009-11-05 | Nec Software Chubu Ltd | Monitoring device, monitoring system, monitoring method, and monitoring program |
| KR100936967B1 (en) | 2009-08-04 | 2010-01-14 | 주식회사 엑셈 | Apparatus for tracing memory leaks of user programs on was environment and method thereof |
| JP2010039557A (en) * | 2008-07-31 | 2010-02-18 | Canon Inc | Management apparatus, method of controlling the same, and control program |
| WO2010113212A1 (en) * | 2009-03-31 | 2010-10-07 | 富士通株式会社 | Memory leak monitoring device and method |
| JP2012503825A (en) * | 2008-09-26 | 2012-02-09 | マイクロソフト コーポレーション | Memory management technology that uses selective mitigation to reduce errors |
| JP2015230714A (en) * | 2014-06-06 | 2015-12-21 | 富士通株式会社 | Abnormality detection method, abnormality detection program, and abnormality detection device |
| EP2966376A4 (en) * | 2013-03-04 | 2016-11-02 | Mitsubishi Electric Corp | MANAGEMENT DEVICE AND METHOD FOR AIR CONDITIONER |
-
2006
- 2006-06-23 JP JP2006174381A patent/JP2008003945A/en active Pending
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009258955A (en) * | 2008-04-16 | 2009-11-05 | Nec Software Chubu Ltd | Monitoring device, monitoring system, monitoring method, and monitoring program |
| JP2010039557A (en) * | 2008-07-31 | 2010-02-18 | Canon Inc | Management apparatus, method of controlling the same, and control program |
| JP2012503825A (en) * | 2008-09-26 | 2012-02-09 | マイクロソフト コーポレーション | Memory management technology that uses selective mitigation to reduce errors |
| WO2010113212A1 (en) * | 2009-03-31 | 2010-10-07 | 富士通株式会社 | Memory leak monitoring device and method |
| JPWO2010113212A1 (en) * | 2009-03-31 | 2012-10-04 | 富士通株式会社 | Memory leak monitoring apparatus and method |
| KR100936967B1 (en) | 2009-08-04 | 2010-01-14 | 주식회사 엑셈 | Apparatus for tracing memory leaks of user programs on was environment and method thereof |
| EP2966376A4 (en) * | 2013-03-04 | 2016-11-02 | Mitsubishi Electric Corp | MANAGEMENT DEVICE AND METHOD FOR AIR CONDITIONER |
| JP2015230714A (en) * | 2014-06-06 | 2015-12-21 | 富士通株式会社 | Abnormality detection method, abnormality detection program, and abnormality detection device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8099636B2 (en) | System and method for protecting memory stacks using a debug unit | |
| KR101540129B1 (en) | Remote access diagnostic device and methods thereof | |
| CN108121630B (en) | Electronic device, restart method, and recording medium | |
| CN102656568B (en) | Microcomputer and its operating method | |
| CN106682162B (en) | Log management method and device | |
| JP5476238B2 (en) | Semiconductor device | |
| US8984335B2 (en) | Core diagnostics and repair | |
| TW200917018A (en) | Monitor apparatus and a monitoring method thereof | |
| JP2017535125A (en) | Programmable IC with safety subsystem | |
| JP2008003945A (en) | Monitoring control system and computer management method and program thereof | |
| CN112231140A (en) | Method, system, terminal and storage medium for fault recovery of BMC (baseboard management controller) of storage device | |
| US20050033952A1 (en) | Dynamic scheduling of diagnostic tests to be performed during a system boot process | |
| JP4886558B2 (en) | Information processing device | |
| CN109062718B (en) | Server and data processing method | |
| JP2012022614A5 (en) | ||
| JP5768503B2 (en) | Information processing apparatus, log storage control program, and log storage control method | |
| CN100394396C (en) | Electronic control system and method with microcomputer monitoring prohibition function | |
| WO2008004330A1 (en) | Multiple processor system | |
| US11726853B2 (en) | Electronic control device | |
| CN108073489A (en) | Ensure the method for the operation of calculator | |
| CN108415788B (en) | Data processing apparatus and method for responding to non-responsive processing circuitry | |
| JP2870250B2 (en) | Microprocessor runaway monitor | |
| CN113742176A (en) | Fault prediction method and device and electronic equipment | |
| CN114416517B (en) | Protection and diagnosis method and device for embedded multi-core processor | |
| CN113381895B (en) | Network fault detection method and device |