[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5365273B2 - Information processing system, monitoring method, and monitoring program - Google Patents

Information processing system, monitoring method, and monitoring program Download PDF

Info

Publication number
JP5365273B2
JP5365273B2 JP2009057633A JP2009057633A JP5365273B2 JP 5365273 B2 JP5365273 B2 JP 5365273B2 JP 2009057633 A JP2009057633 A JP 2009057633A JP 2009057633 A JP2009057633 A JP 2009057633A JP 5365273 B2 JP5365273 B2 JP 5365273B2
Authority
JP
Japan
Prior art keywords
execution
monitoring
processes
dependency
section
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
Application number
JP2009057633A
Other languages
Japanese (ja)
Other versions
JP2010211574A (en
Inventor
剛 阿部
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP2009057633A priority Critical patent/JP5365273B2/en
Publication of JP2010211574A publication Critical patent/JP2010211574A/en
Application granted granted Critical
Publication of JP5365273B2 publication Critical patent/JP5365273B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processing system, a monitoring method and a monitoring program for monitoring whether or not a system is in normal operation. <P>SOLUTION: An information processing system is provided with: a first CPU 80 for executing a plurality of processes 70, 71 and 72; a second CPU 81 for monitoring the plurality of processes 70, 71 and 72 executed by the first CPU 80; an analyzing part 60 operated by the second CPU 81 for extracting the mutual dependence of the plurality of processes 70, 71, and 72 based on executing situations of the plurality of processes 70, 71 and 72; and a monitoring part 61 operating in the secure CPU 81, and detecting abnormalities of the operations of the plurality of processes 70, 71 and 72 based on dependence extracted by the analyzing part 60. <P>COPYRIGHT: (C)2010,JPO&amp;INPIT

Description

本発明は、情報処理システム、監視方法及び監視プログラムに関する。   The present invention relates to an information processing system, a monitoring method, and a monitoring program.

様々な情報処理システムにおいて、正常に動作することが求められている。特に、車載組み込みシステムでは、誤動作が人命に関わるため、高信頼性、高堅牢性や高い動作予測性等が要求されている。このような要求を満たすためには、システムが正常動作しているかどうかを監視する必要がある。   Various information processing systems are required to operate normally. In particular, an in-vehicle embedded system is required to have high reliability, high robustness, high operation predictability, and the like because a malfunction is related to human life. In order to satisfy such a requirement, it is necessary to monitor whether the system is operating normally.

特許文献1には、情報処理システムが正常に稼働しているときの監視データの相関関係と、最新の監視データとを比較することにより、情報処理システムに現在発生している障害を検知し、情報処理システムに異常が発生したときの監視データの相関関係と、最近得られた監視データの相関関係との類似性から情報処理システムに将来発生する可能性のある障害を予測する技術が開示されている。
しかし、特許文献1に開示の技術は、マルチCPU(Central Processing Unit)システムに関するものではない。
Patent Document 1 detects a failure currently occurring in the information processing system by comparing the correlation of the monitoring data when the information processing system is operating normally with the latest monitoring data, Disclosed is a technology for predicting a failure that may occur in the future in an information processing system from the similarity between the correlation of monitoring data when an abnormality occurs in the information processing system and the correlation of recently obtained monitoring data ing.
However, the technique disclosed in Patent Document 1 is not related to a multi-CPU (Central Processing Unit) system.

また、特許文献2には、第一のプロセスが第二のプロセスを呼び出す処理を実際にした際に収集した情報と、第二のプロセスが第一のプロセスから呼び出され処理を開始した際に収集した情報とから第一のプロセスと第二のプロセスの連動状態を解析することにより、分散システムで各ノード上のプロセスが協調して処理を進める場合の全体の動作を解析することが可能となる技術が開示されている。   Patent Document 2 also discloses information collected when the first process actually calls the second process, and information collected when the second process is called from the first process and starts processing. By analyzing the linkage status of the first process and the second process from the information obtained, it becomes possible to analyze the overall operation when the processes on each node advance the processing in a distributed system. Technology is disclosed.

さらに、特許文献3には、各タスク内のジョブ毎の手続き間の実行順序制約と手続き間の依存関係から求めたジョブ間の実行順序制約を各タスク毎に持たせ、タスク毎にこの実行順序制約を基に実行制御させることにより、複数のジョブの同時実行時にも逐次的にジョブを実行した場合と同一の結果を効率よくかつ確実に得ることができる技術が開示されている。   Further, Patent Document 3 provides each task with an execution order constraint between procedures obtained from the inter-procedure execution order constraint for each job in each task and the inter-procedure dependency, and this execution order for each task. A technique is disclosed that can efficiently and reliably obtain the same result as when a job is sequentially executed even when a plurality of jobs are simultaneously executed by performing execution control based on constraints.

さらにまた、特許文献4には、並列プログラムを利用したリアルタイムシステムにおいて並列プログラムの実行中に時間計測ルーチンによって得られた時刻情報と判定条件を基に実行時間を計算して時間制約条件を検証するように構成することにより、要求仕様として設定された時間制約条件をみたしているかを正確にかつ効率よく検証することができる技術が開示されている。   Furthermore, in Patent Document 4, in a real-time system using a parallel program, the execution time is calculated based on the time information and the determination condition obtained by the time measurement routine during execution of the parallel program, and the time constraint condition is verified. With this configuration, a technique is disclosed that can accurately and efficiently verify whether the time constraint set as the required specification is satisfied.

しかし、特許文献2乃至4に開示の技術は、いずれもシステムの監視に関するものではない。   However, none of the techniques disclosed in Patent Documents 2 to 4 relate to system monitoring.

特開2005−327261号公報JP 2005-327261 A 特開平07−152704号公報JP 07-152704 A 特開平09−114693号公報Japanese Patent Laid-Open No. 09-114693 特開平11−242614号公報Japanese Patent Laid-Open No. 11-242614

システムが正常動作しているかどうかを監視する方法として、システムの正常動作時におけるシステムの動作に関するトレースデータを採取し、採取したトレースデータに基づいて、正常動作時のプロセスの実行状況を解析し、解析した情報を用いて、運用時のシステムの動作を監視する方法が考えられる。   As a method of monitoring whether the system is operating normally, collect trace data related to system operation during normal operation of the system, analyze the process execution status during normal operation based on the collected trace data, A method of monitoring the operation of the system during operation using the analyzed information is conceivable.

このような方法において、トレースデータを採取する場合に、基板にトレースデータ採取用のインタフェースを実装し、このインタフェースを介して、外部機器にトレースデータを抽出し、抽出したトレースデータをシステムの外部において、解析する方法が考えられるが、コスト及びセキュリティの観点から実際に運用するシステムに適用することは好ましくない。
また、今後マルチCPU化によるCPU数の増加が進むにつれて、採取する情報量は増加し、そのトレースデータを外部に抽出するためのインタフェースには膨大な帯域が要求されることとなる。そのため、上述の方法では、実現が困難になることが考えられる。
他方、システムの正常動作時におけるOS(Operating System)におけるプロセスのスケジューリング状況に基づいて高精度な解析を行い、かつ、解析から監視までの処理が全て自動化された監視方法は提案されていない。
In such a method, when collecting trace data, an interface for collecting trace data is mounted on the board, and the trace data is extracted to an external device via this interface, and the extracted trace data is outside the system. Although an analysis method can be considered, it is not preferable to apply it to a system that is actually operated from the viewpoint of cost and security.
Further, as the number of CPUs increases due to the increase in the number of CPUs in the future, the amount of information to be collected increases, and a huge bandwidth is required for an interface for extracting the trace data to the outside. For this reason, it may be difficult to realize the above method.
On the other hand, no monitoring method has been proposed in which high-precision analysis is performed based on the process scheduling status in an OS (Operating System) during normal operation of the system, and all processes from analysis to monitoring are automated.

以上に説明したように、車載組み込みシステムにおいては、システムが正常動作しているかどうかを監視する必要があるという問題がある。   As described above, the in-vehicle embedded system has a problem that it is necessary to monitor whether the system is operating normally.

本発明の目的は、上述のような問題を解決するためになされたものであり、システムが正常動作しているかどうかを監視することができる情報処理システム、監視方法及び監視プログラムを提供することにある。   An object of the present invention is to solve the above-described problems, and to provide an information processing system, a monitoring method, and a monitoring program capable of monitoring whether the system is operating normally. is there.

本発明にかかる情報処理システムは、複数のプロセスを実行する第1のCPUと、前記第1のCPUによって実行される複数のプロセスを監視する第2のCPUとを備えた情報処理システムであって、前記第2のCPUにおいて動作し、前記複数のプロセスの実行状況に基づいて、前記複数のプロセスの相互間の依存関係を抽出する解析部と、前記第2のCPUにおいて動作し、前記解析部によって抽出された依存関係に基づいて、前記複数のプロセスの動作の異常を検出する監視部とを備えたものである。   An information processing system according to the present invention is an information processing system including a first CPU that executes a plurality of processes and a second CPU that monitors a plurality of processes executed by the first CPU. An analysis unit that operates in the second CPU and extracts a dependency relationship among the plurality of processes based on an execution status of the plurality of processes; and an operation unit that operates in the second CPU and the analysis unit And a monitoring unit that detects abnormalities in the operation of the plurality of processes based on the dependency relationship extracted by the above.

本発明にかかる監視方法は、第1のCPUによって実行される複数のプロセスを第2のCPUから監視する監視方法であって、前記複数のプロセスの実行状況に基づいて、前記複数のプロセスの相互間の依存関係を抽出するステップと、前記複数のプロセスを監視する場合に、前記依存関係に基づいて、前記複数のプロセスの動作の異常を検出するステップとを備えたものである。   A monitoring method according to the present invention is a monitoring method for monitoring a plurality of processes executed by a first CPU from a second CPU, and based on the execution status of the plurality of processes, And a step of detecting an abnormal operation of the plurality of processes based on the dependency when the plurality of processes are monitored.

本発明にかかる監視プログラムは、第1のCPUによって実行される複数のプロセスを第2のCPUから監視する監視方法であって、前記複数のプロセスの実行状況に基づいて、前記複数のプロセスの相互間の依存関係を抽出するステップと、前記複数のプロセスを監視する場合に、前記依存関係に基づいて、前記複数のプロセスの動作の異常を検出するステップとを前記第2のCPUに実行させるものである。   A monitoring program according to the present invention is a monitoring method for monitoring a plurality of processes executed by a first CPU from a second CPU, and based on the execution status of the plurality of processes, For causing the second CPU to execute a step of extracting a dependency relationship between the plurality of processes and a step of detecting an abnormal operation of the plurality of processes based on the dependency relationship when monitoring the plurality of processes. It is.

本発明により、システムが正常動作しているかどうかを監視することができる情報処理システム、監視方法及び監視プログラムを提供することができる。   The present invention can provide an information processing system, a monitoring method, and a monitoring program that can monitor whether the system is operating normally.

本発明の実施の形態にかかる解析監視システムの概要を示す概念図である。It is a conceptual diagram which shows the outline | summary of the analysis monitoring system concerning embodiment of this invention. 本発明の実施の形態にかかる解析監視システムの構成図である。It is a block diagram of the analysis monitoring system concerning embodiment of this invention. 本発明の実施の形態にかかる解析監視システムの解析フェーズにおいて動作する要素を示す概念図である。It is a conceptual diagram which shows the element which operate | moves in the analysis phase of the analysis monitoring system concerning embodiment of this invention. 本発明の実施の形態にかかる解析監視システムの監視フェーズにおいて動作する要素を示す概念図である。It is a conceptual diagram which shows the element which operate | moves in the monitoring phase of the analysis monitoring system concerning embodiment of this invention. 本発明の実施の形態にかかる解析フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the analysis phase concerning embodiment of this invention. 本発明の実施の形態にかかる一時依存木データの生成処理のフローチャートである。It is a flowchart of the production | generation process of the temporary dependence tree data concerning embodiment of this invention. 本発明の実施の形態にかかる依存木データの一例を示す図である。It is a figure which shows an example of the dependency tree data concerning embodiment of this invention. 本発明の実施の形態にかかる依存木データの生成処理のフローチャートである。It is a flowchart of the production | generation process of the dependency tree data concerning embodiment of this invention. 本発明の実施の形態にかかる監視フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the monitoring phase concerning embodiment of this invention. 本発明の実施の形態にかかる監視フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the monitoring phase concerning embodiment of this invention. 本発明の実施の形態にかかる監視フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the monitoring phase concerning embodiment of this invention. 本発明の実施の形態にかかる監視フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the monitoring phase concerning embodiment of this invention. 本発明の実施の形態にかかる監視フェーズにおける処理概要を示す図である。It is a figure which shows the process outline | summary in the monitoring phase concerning embodiment of this invention. 本発明の実施の形態にかかる監視処理のフローチャートである。It is a flowchart of the monitoring process concerning embodiment of this invention.

以下、図面を参照して本発明の実施の形態について説明する。
まず、図1を参照して、本実施の形態にかかる解析監視システムの概要について説明する。図1は、本実施の形態にかかる解析監視システムの概要を示す概念図である。
Embodiments of the present invention will be described below with reference to the drawings.
First, with reference to FIG. 1, the outline | summary of the analysis monitoring system concerning this Embodiment is demonstrated. FIG. 1 is a conceptual diagram showing an outline of the analysis monitoring system according to the present embodiment.

解析監視システムは、プロセス70、71、72を実行するCPU80、解析部60及び監視部61を動作させるCPU81を備える。
解析部60は、プロセス70、71、72の実行状況に基づいて、プロセス70、71、72の相互間の依存関係を抽出する。
監視部61は、プロセス70、71、72を監視する場合に、解析部60が抽出した依存関係に基づいて、プロセス70、71、72の動作の異常を検出する。
プロセス70、71、72は、任意のプログラムを動作させたものであり、所定の処理を実行する。なお、プロセス数は、本実施の形態に例示した数に限られない。
CPU80、81は、それぞれがシングルコアCPUであってもよく、マルチコアCPUに含まれるCPUコアであってもよい。なお、CPU数は、本実施の形態に例示した数に限られない。
The analysis monitoring system includes a CPU 80 that executes processes 70, 71, and 72, and a CPU 81 that operates the analysis unit 60 and the monitoring unit 61.
Based on the execution status of the processes 70, 71, and 72, the analysis unit 60 extracts a dependency relationship between the processes 70, 71, and 72.
When monitoring the processes 70, 71, 72, the monitoring unit 61 detects an abnormality in the operation of the processes 70, 71, 72 based on the dependency relationship extracted by the analysis unit 60.
Processes 70, 71, and 72 operate arbitrary programs, and execute predetermined processing. The number of processes is not limited to the number exemplified in this embodiment.
Each of the CPUs 80 and 81 may be a single core CPU or a CPU core included in a multi-core CPU. Note that the number of CPUs is not limited to the number exemplified in the present embodiment.

続いて、本実施の形態にかかる解析監視システムの処理の概要について説明する。
まず、解析部60は、プロセス70、71、72の実行状況に基づいて、プロセス70、71、72の相互間の依存関係を抽出する。
次に、監視部61は、プロセス70、71、72を監視する場合に、解析部60が抽出した依存関係を取得し、取得した依存関係に基づいて、プロセス70、71、72の動作の異常を検出する。
Subsequently, an outline of processing of the analysis monitoring system according to the present embodiment will be described.
First, the analysis unit 60 extracts the dependency between the processes 70, 71, 72 based on the execution status of the processes 70, 71, 72.
Next, when monitoring the processes 70, 71, 72, the monitoring unit 61 acquires the dependency relationship extracted by the analysis unit 60, and the abnormal operation of the processes 70, 71, 72 based on the acquired dependency relationship Is detected.

続いて、図2、3、4を参照して、本実施の形態にかかる解析監視システムについて詳細に説明する。図2は、本実施の形態にかかる解析監視システムの構成図であり、図3、4は、本実施の形態にかかる解析監視システムの概念図である。   Next, the analysis monitoring system according to the present embodiment will be described in detail with reference to FIGS. FIG. 2 is a configuration diagram of the analysis monitoring system according to the present embodiment, and FIGS. 3 and 4 are conceptual diagrams of the analysis monitoring system according to the present embodiment.

解析監視システムは、図1に示すように、スケジューリング実行部1、実行依存検知部2、依存データ整形部3、監視実行部4、一時依存木データ5及び依存木データ6を有している。また、解析監視システムは、図2及び3に示すように、スケジューリング実行部1を動作させるCPU40、41、42、実行依存検知部2と依存データ整形部3を動作させるCPU43、監視実行部4を動作させるCPU44及び一時依存木データ5と依存木データ6を格納するDRAM(Dynamic Random Access Memory)50を備える。なお、CPU40、41、42は、複数の任意のプロセスを動作させるが、それらのプロセスについては図示を省略している。また、それらのプロセスは、スケジューリング実行部1に含まれる。なお、実行依存検知部2と依存データ整形部3を動作させるCPU43と、監視実行部4を動作させるCPU44は、同一のCPUであってもよい。   As shown in FIG. 1, the analysis monitoring system includes a scheduling execution unit 1, an execution dependency detection unit 2, a dependency data shaping unit 3, a monitoring execution unit 4, temporary dependency tree data 5, and dependency tree data 6. 2 and 3, the analysis monitoring system includes CPUs 40, 41, and 42 that operate the scheduling execution unit 1, a CPU 43 that operates the execution dependency detection unit 2 and the dependency data shaping unit 3, and a monitoring execution unit 4. A CPU 44 to be operated and a DRAM (Dynamic Random Access Memory) 50 for storing the temporary dependency tree data 5 and the dependency tree data 6 are provided. The CPUs 40, 41, and 42 operate a plurality of arbitrary processes, but the illustration of these processes is omitted. These processes are included in the scheduling execution unit 1. The CPU 43 that operates the execution dependency detection unit 2 and the dependency data shaping unit 3 and the CPU 44 that operates the monitoring execution unit 4 may be the same CPU.

スケジューリング実行部1は、複数のプロセスのスケジューリングを行うとともに、これらのプロセスを実行する。スケジューリング実行部1は、スケジューリングによって、実行可能状態となったプロセスのリストである実行キュー(図示せず)の制御を行う。スケジューリング実行部1は、例えば、OSのスケジューラにより構成される。   The scheduling execution unit 1 schedules a plurality of processes and executes these processes. The scheduling execution unit 1 controls an execution queue (not shown) that is a list of processes that are in an executable state by scheduling. The scheduling execution unit 1 is configured by an OS scheduler, for example.

実行依存検知部2は、複数のプロセスの実行状況に基づいて、複数のプロセスの相互間の依存関係を抽出する。また、実行依存検知部2は、抽出した依存関係を示す一時依存木データ5を生成し、生成した一時依存木データ5をDRAM50に格納する。
依存データ整形部3は、DRAM50に格納される一時依存木データ5を取得し、取得した一時依存木データ5を整形して依存木データ6を生成する。そして、依存データ整形部3は、生成した依存木データ6をDRAM50に格納する。実行依存検知部2及び依存データ整形部3は、解析部として機能する。
The execution dependency detection unit 2 extracts the dependency between the plurality of processes based on the execution status of the plurality of processes. Further, the execution dependency detecting unit 2 generates temporary dependency tree data 5 indicating the extracted dependency relationship, and stores the generated temporary dependency tree data 5 in the DRAM 50.
The dependency data shaping unit 3 acquires the temporary dependency tree data 5 stored in the DRAM 50 and shapes the acquired temporary dependency tree data 5 to generate dependency tree data 6. Then, the dependency data shaping unit 3 stores the generated dependency tree data 6 in the DRAM 50. The execution dependency detection unit 2 and the dependency data shaping unit 3 function as an analysis unit.

監視実行部4は、DRAM50に格納される依存木データ6に基づいて、複数のプロセスの動作の異常を検出する。監視実行部4は、監視部として機能する。
実行依存検知部2、依存データ整形部3及び監視実行部4は、例えば、OSにおける機能の一部として実装する。
The monitoring execution unit 4 detects abnormal operation of a plurality of processes based on the dependency tree data 6 stored in the DRAM 50. The monitoring execution unit 4 functions as a monitoring unit.
The execution dependency detection unit 2, the dependency data shaping unit 3, and the monitoring execution unit 4 are implemented as part of functions in the OS, for example.

CPU40、41、42、43、44は、それぞれがシングルコアCPUであってもよく、マルチコアCPUに含まれるCPUコアであってもよい。なお、CPU数は、本実施の形態に例示した数に限られない。
DRAM50は、実行依存検知部2又は実行依存検知部2において行われる処理に影響しない速度で、一時依存木データ5もしくは依存木データ6の格納もしくは取得が行える記憶装置であればどのようなものであってもよい。DRAM50は、記憶部に相当する。
Each of the CPUs 40, 41, 42, 43, and 44 may be a single core CPU or a CPU core included in a multi-core CPU. Note that the number of CPUs is not limited to the number exemplified in the present embodiment.
The DRAM 50 is any storage device that can store or acquire the temporary dependency tree data 5 or the dependency tree data 6 at a speed that does not affect the processing performed in the execution dependency detection unit 2 or the execution dependency detection unit 2. There may be. The DRAM 50 corresponds to a storage unit.

本実施の形態にかかる解析監視システムは、その動作が2段階のフェーズに分かれる。2段階のフェーズは、システムの正常動作を解析して依存木データ6を生成する解析フェーズと、生成した依存木データ6に基づいてシステムを監視し、異常動作を検出する監視フェーズに分かれる。図3、4を参照して、本実施の形態にかかる各フェーズの概要について説明する。   The analysis and monitoring system according to the present embodiment is divided into two phases. The two-stage phase is divided into an analysis phase in which normal operation of the system is analyzed to generate dependency tree data 6 and a monitoring phase in which the system is monitored based on the generated dependency tree data 6 and abnormal operation is detected. An overview of each phase according to the present embodiment will be described with reference to FIGS.

解析フェーズでは、図3に示すように、実行依存検知部2は、スケジューリング実行部1における割り込みの発生、プロセスの生成、実行キューの出入り及びプロセスが実行する処理の実行時間を監視し、各プロセスの相互間の依存関係を示す一時依存木データ5を生成する。
依存データ整形部3は、依存木データ6を管理しており、実行依存検知部2が生成する一時依存木データ5を取得し、取得した一時依存木データ5から依存木データ6を生成するとともに、同様の依存木データ6が重複することのないようにDRAM50に格納する。なお、依存データ整形部3は、高い応答性で動作する必要がある実行依存検知部2の処理の合間に動作するように、実行依存検知部2よりも実行優先度を低く設定することが好ましい。
In the analysis phase, as shown in FIG. 3, the execution dependence detection unit 2 monitors the execution time of the interrupt generation, process generation, entry / exit of the execution queue, and processing executed by the process in the scheduling execution unit 1. Temporary dependency tree data 5 indicating the dependency between the two is generated.
The dependency data shaping unit 3 manages the dependency tree data 6, acquires the temporary dependency tree data 5 generated by the execution dependency detection unit 2, and generates dependency tree data 6 from the acquired temporary dependency tree data 5. The dependency tree data 6 is stored in the DRAM 50 so as not to overlap. In addition, it is preferable that the dependency data shaping unit 3 sets the execution priority lower than that of the execution dependency detection unit 2 so that the dependency data shaping unit 3 operates between the processes of the execution dependency detection unit 2 that needs to operate with high responsiveness. .

このように解析フェーズでは、プロセスを実行するCPU40、41、42とは異なるCPU43によって動作させている実行依存検知部2が正常動作時の各プロセスのスケジューリング状況を監視することにより、正常動作時における各プロセスの相互間の依存関係を示す依存木データ6を生成している。   As described above, in the analysis phase, the execution dependency detection unit 2 operated by the CPU 43 different from the CPUs 40, 41, and 42 that execute the process monitors the scheduling status of each process during normal operation, thereby Dependency tree data 6 is generated that indicates the dependency between processes.

また、DRAM50には、実行依存検知部2から依存データ整形部3への依存木データ5の受け渡すためのFIFO(First In First Out)バッファを用意することにより、DRAM50の容量が許す限り依存データ整形部3における動作の遅延が可能である。さらに、実行依存検知部2と依存データ整形部3は、並行動作が可能であるため、CPU43を複数にして、実行依存検知部2と依存データ整形部3を別々のCPUによって並行動作させることにより、高速化が可能である。   Further, the DRAM 50 is provided with a FIFO (First In First Out) buffer for transferring the dependency tree data 5 from the execution dependency detection unit 2 to the dependency data shaping unit 3, so that the dependency data is as long as the capacity of the DRAM 50 permits. The operation of the shaping unit 3 can be delayed. Furthermore, since the execution dependency detection unit 2 and the dependency data shaping unit 3 can be operated in parallel, a plurality of CPUs 43 are used, and the execution dependency detection unit 2 and the dependency data shaping unit 3 are operated in parallel by different CPUs. Speed up is possible.

監視フェーズでは、図4に示すように、監視実行部4がスケジューリング実行部1における割り込みの発生、実行キューの出入り及びプロセスの処理の実行時間を監視することにより、解析フェーズにおいて生成した依存木データ6と一致する動作が行われているかどうかを判断する。そして、監視実行部4は、依存木データ6に登録されていないタイミングでのプロセスの起床や実行時間の遅延を検出することで異常を検出する。
このように、監視フェーズでは、言い換えると、運用動作時では、正常動作時の依存木データ6に基づいて、スケジューリング実行部1の動作を監視実行部4が監視することにより、異常動作を検出する。
In the monitoring phase, as shown in FIG. 4, the monitoring execution unit 4 monitors the generation of interrupts in the scheduling execution unit 1, the entry / exit of the execution queue, and the execution time of process processing, thereby generating dependency tree data generated in the analysis phase. It is determined whether or not the operation corresponding to 6 is performed. The monitoring execution unit 4 detects an abnormality by detecting a wake-up of a process or a delay in execution time at a timing not registered in the dependency tree data 6.
As described above, in the monitoring phase, in other words, during the operation operation, the monitoring execution unit 4 monitors the operation of the scheduling execution unit 1 based on the dependency tree data 6 during the normal operation, thereby detecting an abnormal operation. .

続いて、図3、5〜8を参照して、本実施の形態にかかる解析フェーズの詳細について説明する。図3に示すように、解析フェーズの目的は、スケジューリング実行部1における動作を監視および解析し、解析により生成した一時依存木データ5を整形することにより、監視フェーズにおいて利用可能な依存木データ6を生成することである。この一連の処理概要を図5に示す。   Next, details of the analysis phase according to the present embodiment will be described with reference to FIGS. As shown in FIG. 3, the purpose of the analysis phase is to monitor and analyze the operation in the scheduling execution unit 1 and shape the temporary dependency tree data 5 generated by the analysis, thereby making the dependency tree data 6 available in the monitoring phase. Is to generate An outline of this series of processing is shown in FIG.

まず、実行依存検知部2における処理について説明する。
図5(a)は、スケジューリング実行部1において実行するプロセスの処理の一例を示す図である。ここで、スケジューリング実行部1において実行する各プロセスの起床から休止までの処理を1つのセクション90、91、92、93、94とする。図5(a)における各プロセスは、各セクション90、91、92、93、94における"起床"のタイミングで実行可能状態となり、実行キューに登録される。また、各セクション90、91、92、93、94における"実行開始"以降から"休止"までの区間は、プロセスに実行権が付与され、各セクションにおいてプロセスが処理を実行する区間を示す。
First, the process in the execution dependence detection part 2 is demonstrated.
FIG. 5A is a diagram illustrating an example of processing of a process executed in the scheduling execution unit 1. Here, it is assumed that the processes from the wake-up to the suspension of each process executed in the scheduling execution unit 1 are one section 90, 91, 92, 93, 94. Each process in FIG. 5A becomes executable at the timing of “wake-up” in each of the sections 90, 91, 92, 93, and 94, and is registered in the execution queue. Further, sections from “execution start” to “pause” in each of the sections 90, 91, 92, 93, and 94 indicate sections in which the execution right is given to the process and the process executes processing in each section.

まず、実行依存検知部2は、実行キューを監視し、スケジューリング実行1において割り込みが発生し、発生した割り込みに応じて、起床させられたプロセスAの実行キューへの登録を検出する。それにより、実行依存検知部2は、セクション90を検出する。
次に、実行依存検知部2は、同様に実行キューを監視することで、セクション90の実行中に実行が開始されたセクション91、92を検出する。この場合、実行依存検知部2は、検出したセクション91、92は、実行中のセクション90に依存する、つまり、検出したセクション91、92は、実行中のセクション90と相互に依存関係があると判断する。その理由は、このような場合、一般的に、プロセスAのセクション90における処理、例えば、ロックの解除やプロセス間のメッセージ送信などの処理をトリガとして、セクション91、92が実行されているためである。そして、実行依存検知部2は、セクション90とセクション91、92との相互間に依存関係を示す枝を張ることにより、図5(b)に示すような一時依存木データ5を生成していく。
First, the execution dependency detection unit 2 monitors the execution queue, and an interrupt is generated in the scheduling execution 1, and the registration of the wake-up process A in the execution queue is detected according to the generated interrupt. Thereby, the execution dependence detecting unit 2 detects the section 90.
Next, the execution dependence detecting unit 2 similarly monitors the execution queue to detect the sections 91 and 92 that have been started during the execution of the section 90. In this case, the execution dependence detector 2 determines that the detected sections 91 and 92 depend on the section 90 being executed, that is, the detected sections 91 and 92 are mutually dependent on the section 90 being executed. to decide. The reason for this is that, in such a case, the sections 91 and 92 are generally executed by triggering the processing in the section 90 of the process A, for example, processing such as unlocking or sending a message between processes. is there. Then, the execution dependency detecting unit 2 generates temporary dependency tree data 5 as shown in FIG. 5B by creating a branch indicating a dependency relationship between the section 90 and the sections 91 and 92. .

ここで、本実施の形態では、プロセスを実行するCPU40、41、42が複数あるため、セクション90以外にも実行中のセクションがある可能性があるが、その場合は、ロックの解除やプロセス間のメッセージ送信を行ったプロセス(ここでは、プロセスA)をOSが認識しているため、それに基づいて判断を行うことで依存するセクションの特定が可能である。   Here, in this embodiment, since there are a plurality of CPUs 40, 41, and 42 that execute processes, there is a possibility that there are sections that are being executed in addition to the section 90. Since the OS recognizes the process that sent the message (process A in this case), it is possible to identify the dependent section by making a determination based on the OS.

以降、同様にして、依存関係が検出されなくなるまでの全てのセクション90、91、92、93、94が実行されると、図5(b)に示すような1つの一時依存木データ5が生成される。
そして、実行依存検知部2は、生成した一時依存木データ5を依存データ整形部3に渡すため、DRAM50のFIFOバッファに格納する。
Thereafter, similarly, when all the sections 90, 91, 92, 93, and 94 until the dependency relationship is not detected are executed, one temporary dependency tree data 5 as shown in FIG. 5B is generated. Is done.
Then, the execution dependency detection unit 2 stores the generated temporary dependency tree data 5 in the FIFO buffer of the DRAM 50 in order to pass it to the dependency data shaping unit 3.

続いて、図6を参照して、以上に説明した一時依存木データ5の生成処理の詳細について説明する。図6は、本実施の形態にかかる一時依存木データ5の生成処理のフローチャートである。なお、図6では、S10〜S14は、スケジューリング実行部1における処理を示しており、S100〜S106は、実行依存検知部2における処理を示している。   Next, with reference to FIG. 6, the details of the generation process of the temporary dependency tree data 5 described above will be described. FIG. 6 is a flowchart of the generation process of the temporary dependency tree data 5 according to the present embodiment. In FIG. 6, S <b> 10 to S <b> 14 indicate processing in the scheduling execution unit 1, and S <b> 100 to S <b> 106 indicate processing in the execution dependency detection unit 2.

まず、スケジューリング実行部1は、実行可能状態となったプロセスを実行キューに登録する(S10)。
実行依存検知部2は、実行キューを監視して、実行可能状態に移行したプロセスの実行キューへの登録を検出する。これにより、実行が開始されたセクションを検出し、検出したセクションを先頭として登録した作成中依存木を作成する(S100)。ここで、作成中依存木とは、依存木に登録されている各セクションの実行が完了していない木である。また、セクションの実行の完了は、そのセクションが対象としているプロセスが実行キューから除去されたときに完了と判断する。
次に、スケジューリング実行部1は、実行キューに登録された実行可能状態のプロセスに実行権を付与してプロセスを実行し、現在実行中のセクションにおける処理を実行する(S11)。
First, the scheduling execution unit 1 registers a process in an executable state in the execution queue (S10).
The execution dependency detection unit 2 monitors the execution queue and detects registration of the process that has entered the executable state in the execution queue. As a result, the section where execution has been started is detected, and a currently-created dependency tree in which the detected section is registered as the head is created (S100). Here, the dependency tree being created is a tree in which the execution of each section registered in the dependency tree is not completed. Completion of execution of a section is determined to be complete when the process targeted by that section is removed from the execution queue.
Next, the scheduling execution unit 1 grants an execution right to the executable process registered in the execution queue, executes the process, and executes the process in the currently executing section (S11).

次に、実行依存検知部2は、プロセスの実行中にスケジューリング実行部1が新たなプロセスを実行可能状態に移行させて実行キューに登録した場合(S12)、その登録要因を判断する(S101)。
新たなプロセスの登録要因が起動要因である場合、実行依存検知部2は、この実行キューの登録において検出したセクションを先頭として登録した作成中依存木を作成する(S103)。ここで、起動要因とは、依存関係によって1つに繋げることのできる新たな一連のセクションの実行が開始されたと判断するプロセスの登録要因である。本実施の形態では、例えば、外部割り込みやプロセス生成システムコール等を起動要因とする。つまり、ステップS10における実行キューの登録も起動要因によるものとなる。
Next, when the scheduling execution unit 1 shifts the new process to an executable state and registers it in the execution queue during execution of the process (S12), the execution dependency detection unit 2 determines the registration factor (S101). .
If the new process registration factor is the activation factor, the execution dependency detection unit 2 creates a currently created dependency tree registered with the section detected in the registration of the execution queue as the head (S103). Here, the activation factor is a registration factor of a process that determines that the execution of a new series of sections that can be linked to one by dependency is started. In this embodiment, for example, an external interrupt, a process generation system call, or the like is used as an activation factor. That is, the registration of the execution queue in step S10 is also due to the activation factor.

一方、新たなプロセスの登録要因が起動要因以外である場合、実行依存検知部2は、現在実行中のセクションにおける処理に応じたプロセスの起床であると判断し、実行中のセクションに依存関係を持たせて検出したセクションを作成中依存木に登録する(S102)。つまり、実行依存検知部2は、検出したセクションは、現在実行中のセクションと依存関係があると判断している。
次に、実行依存検知部2は、スケジューリング実行部1が現在実行中のプロセスの実行を終了した場合(S13)、それによって実行が完了したセクションの実行時間を登録する(S104)。ここで、実行時間とは、セクションにおける処理の実行時間である。なお、実行時間は、これに限られず、例えば、セクションの実行時間を登録するようにしてもよい。
On the other hand, when the registration factor of the new process is other than the activation factor, the execution dependency detection unit 2 determines that the process is awakened according to the processing in the currently executing section, and determines the dependency relationship in the currently executing section. The detected section is registered in the creating dependency tree (S102). That is, the execution dependency detection unit 2 determines that the detected section has a dependency relationship with the currently executing section.
Next, when the scheduling execution unit 1 finishes executing the process currently being executed (S13), the execution dependency detection unit 2 registers the execution time of the section that has been executed (S104). Here, the execution time is the execution time of the process in the section. The execution time is not limited to this. For example, the execution time of the section may be registered.

次に、実行依存検知部2は、この段階で作成中依存木に登録されている全てのセクションの実行が完了しているか、つまり、実行が完了したセクションに依存するセクションが作成中依存木に登録されており、それに対応するプロセスが実行キューに登録されているかどうかを判断する(S105)。
全てのセクションの実行が完了している場合、実行依存検知部2は、その依存中依存木の作成は完了したものと判断し、一時依存木データ5として、依存データ整形部3に渡すために、DRAM50のFIFOバッファに格納する(S106)。
全てのセクションの実行が完了していない場合は、スケジューリング実行部1は、実行キューに登録されている次のプロセスを実行する(S14、S11)。
Next, the execution dependency detection unit 2 determines whether all sections registered in the currently created dependency tree have been executed at this stage, that is, a section that depends on the section that has been executed is included in the currently created dependency tree. It is determined whether it is registered and the corresponding process is registered in the execution queue (S105).
When execution of all sections is completed, the execution dependency detection unit 2 determines that the generation of the dependency dependency tree has been completed, and passes it to the dependency data shaping unit 3 as temporary dependency tree data 5 Then, it is stored in the FIFO buffer of the DRAM 50 (S106).
If the execution of all sections has not been completed, the scheduling execution unit 1 executes the next process registered in the execution queue (S14, S11).

続いて、依存データ整形部3における処理について説明する。
依存データ整形部3は、図5(b)に例示するような一時依存木データ5に基づいて、図5(c)に例示するような監視フェーズで使用する依存木データ6を生成する。ここで、依存データ整形部3が実施する処理は、時分割スケジューリング方式による分断されたセクションの統合、ループ処理の検出および既存の依存木データ6との重複登録の回避である。
Next, processing in the dependency data shaping unit 3 will be described.
The dependency data shaping unit 3 generates dependency tree data 6 used in the monitoring phase as illustrated in FIG. 5C based on the temporary dependency tree data 5 as illustrated in FIG. Here, the processing performed by the dependency data shaping unit 3 is integration of divided sections by the time division scheduling method, detection of loop processing, and avoiding duplicate registration with existing dependency tree data 6.

依存データ整形部3が生成する依存木データ6は、図7に例示するように、起動要因と、それに応じて依存関係を有しながら実行される一連のセクションとを示す情報からなる。言い換えると、一連のセクションとは、依存関係によって1つに繋げることのできるセクションの集まりである。1つのセクションを示す1項目は、プロセス毎に一意に決まるプロセスID及びセクション毎に一意に決まるセクション番号を含んだセクションID、依存先セクションID、実行開始プログラムカウンタ値および実行時間を含み、これらが実行キューに登録された順番に並んでいる。つまり、実行依存検知部2は、これらの情報を含めて、一時依存木データ5を生成している。ここで、実行開始プログラムカウンタ値は、プロセスがそのセクションにおける処理を開始するプログラムカウンタ値であり、ループ処理の検出、依存木データ6の重複検出に使用される。   As illustrated in FIG. 7, the dependency tree data 6 generated by the dependency data shaping unit 3 includes information indicating an activation factor and a series of sections that are executed while having a dependency. In other words, a series of sections is a collection of sections that can be linked together by dependency. One item indicating one section includes a process ID uniquely determined for each process and a section ID including a section number uniquely determined for each section, a dependent section ID, an execution start program counter value, and an execution time. They are arranged in the order registered in the execution queue. That is, the execution dependence detection unit 2 generates temporary dependence tree data 5 including these pieces of information. Here, the execution start program counter value is a program counter value at which the process starts processing in the section, and is used for detection of loop processing and duplication detection of the dependency tree data 6.

続いて、図8を参照して、以上に説明した依存木データ6の生成処理の詳細について説明する。図8は、本実施の形態にかかる依存木データ6の生成処理のフローチャートである。   Next, details of the generation process of the dependency tree data 6 described above will be described with reference to FIG. FIG. 8 is a flowchart of the generation process of the dependency tree data 6 according to the present embodiment.

まず、依存データ整形部3は、一時依存木データ5を記録したFIFOバッファから一時依存木データ5を1つ取得する(S200)。
次に、依存データ整形部3は、一時依存木データ5に依存先セクションIDが同じセクションIDを示す2つ以上のセクションがある場合は、それらを1つのセクションにする(S201、S202)。時分割スケジューリング方式のように所定の時間によりプロセスの実行権が切り替えられている場合、本質的には1つのセクションとなるべきものが、一時依存木データ5では分割されてしまうことがある。このような場合、依存先セクションIDが同じとなる2つ以上のセクションが一時依存木データ5にできてしまうため、それらのセクションを1つに結合する。つまり、実行依存検知部2では、時分割スケジューリングの切り替えによる実行キューの登録を検出した場合、実行中のプロセスと同じプロセスが実行キューに登録された場合は、新たに作成中依存木に追加するセクションの依存先セクションとして、実行中のセクションの依存先セクションと同じセクションを格納していることとなる。なお、結合により生成するセクションの実行開始プログラムカウンタ値には、結合する2つ以上のセクションのうち、一時依存木データ5において最も先頭のセクションにおける値を使用し、実行時間には、結合する2つ以上のセクションの実行時間を加算した値を使用する。
First, the dependency data shaping unit 3 acquires one temporary dependency tree data 5 from the FIFO buffer in which the temporary dependency tree data 5 is recorded (S200).
Next, when there are two or more sections in the temporary dependency tree data 5 that have the same section ID, the dependent data shaping unit 3 sets them as one section (S201, S202). When the right to execute a process is switched at a predetermined time as in the time-sharing scheduling method, what should essentially become one section may be divided in the temporary dependency tree data 5. In such a case, since two or more sections having the same dependency destination section ID are created in the temporary dependency tree data 5, these sections are combined into one. In other words, when the execution dependency detection unit 2 detects registration of the execution queue due to switching of the time-sharing scheduling, if the same process as the process being executed is registered in the execution queue, it is newly added to the created dependency tree. As the dependency destination section of the section, the same section as the dependency destination section of the section being executed is stored. Note that the value of the first section of the temporary dependency tree data 5 among the two or more sections to be combined is used as the execution start program counter value of the section generated by the combination, and the combination of 2 is used for the execution time. Use the value obtained by adding the execution times of two or more sections.

次に、依存データ整形部3は、ループ処理を検出する(S203)。ここでは、依存データ整形部3は、各セクションの実行開始プログラムカウンタ値を実行キューに登録された順番に並べたときに、同様の数列が繰り返される部分を1つのループ処理にまとめる。図7における"外部割込みA"を起動要因として、セクション"プロセスB−1"から始まる依存木データ6に、その一例が示されている。ここでは、セクション"プロセスB−2""プロセスA−1"における処理がループすることを示している。なお、セクションに代わり、ループを示している情報には、ループ回数などのループに関する情報を格納してもよい。   Next, the dependent data shaping unit 3 detects a loop process (S203). Here, the dependency data shaping unit 3 collects the portions in which the same number sequence is repeated into one loop process when the execution start program counter values of the sections are arranged in the order registered in the execution queue. An example is shown in the dependency tree data 6 starting from the section “process B-1” with “external interrupt A” in FIG. 7 as the activation factor. Here, it is shown that the processing in the sections “process B-2” and “process A-1” loops. Instead of the section, the information indicating the loop may store information about the loop such as the number of loops.

次に、依存データ整形部3は、DRAM50に格納している依存木データ6に同様の依存木データ6があるかどうかを検索する(S204、S205)。
同様の依存木データ6がある場合、具体的には、各セクションの実行開始プログラムカウンタ値が同じ、つまり、同じ依存木の形状であり、各セクションの実行時間が近く、その差が所定の閾値内に収まる依存木データ6がある場合、依存データ整形部3は、これら2つの依存木データ6を統合し、1つの依存木データ6としてDRAM50に格納する(S206)。このとき、各セクションの実行時間は、それぞれの平均値を算出して、算出した平均値を実行時間として格納する。
同じ依存木データ6がない場合、依存データ整形部3は、生成した依存木データ6をDRAM50に格納する。
Next, the dependency data shaping unit 3 searches whether there is similar dependency tree data 6 in the dependency tree data 6 stored in the DRAM 50 (S204, S205).
When there is similar dependency tree data 6, specifically, the execution start program counter value of each section is the same, that is, has the same dependency tree shape, the execution time of each section is close, and the difference is a predetermined threshold value. If there is dependency tree data 6 that falls within the dependency tree, the dependency data shaping unit 3 integrates these two dependency tree data 6 and stores them as one dependency tree data 6 in the DRAM 50 (S206). At this time, the execution time of each section is calculated as an average value, and the calculated average value is stored as the execution time.
When the same dependency tree data 6 does not exist, the dependency data shaping unit 3 stores the generated dependency tree data 6 in the DRAM 50.

このようにして、依存データ整形部3が、セクションの統合、ループ処理の検出および既存の依存木データ6との重複登録の回避を行うことにより、DRAM50に格納するデータ量を削減することができる。
なお、依存木データ6は、上述のように動的に解析したものだけでなく、ユーザが作成して直接DRAM50に登録するようにしてもよい。
In this way, the dependency data shaping unit 3 can reduce the amount of data stored in the DRAM 50 by integrating sections, detecting loop processing, and avoiding duplicate registration with existing dependency tree data 6. .
The dependency tree data 6 is not limited to the dynamic analysis as described above, but may be created by the user and directly registered in the DRAM 50.

続いて、図4、7、9〜14を参照して、本実施の形態にかかる監視フェーズの詳細について説明する。図4に示すように、監視フェーズの目的は、スケジューリング実行部1における動作と、依存木データ6に示す正常動作とを比較することにより異常を検出することである。監視フェーズでは、起動要因及び実行されるセクションに応じて、解析フェーズで生成した依存木データ6からスケジューリング実行部1における動作に適合する依存木データ6を選択していく。そして、1つも適合する依存木データ6がないことを検出した場合に異常と判断する。その監視の一連の処理概要を図9〜13に示す。なお、ここでは、図7に例示した依存木データ6がDRAM50に格納されている場合について例示する。   Next, details of the monitoring phase according to the present embodiment will be described with reference to FIGS. As shown in FIG. 4, the purpose of the monitoring phase is to detect an abnormality by comparing the operation in the scheduling execution unit 1 with the normal operation shown in the dependency tree data 6. In the monitoring phase, the dependency tree data 6 suitable for the operation in the scheduling execution unit 1 is selected from the dependency tree data 6 generated in the analysis phase according to the activation factor and the section to be executed. When it is detected that there is no corresponding dependency tree data 6, it is determined that there is an abnormality. An outline of a series of monitoring processes is shown in FIGS. Here, a case where the dependency tree data 6 illustrated in FIG. 7 is stored in the DRAM 50 is illustrated.

まず、図9では、外部割込みAが起動要因として発生した状況を示している。依存木データ6は起動要因毎にまとめてDRAM50に格納されており、監視実行部4は、実行する可能性のあるセクションが格納された監視対象依存木リストとして、外部割込みAを起動要因として示している依存木データ6を選択する。ここで、監視対象依存木リストとは、依存木データ6のうち、その時点において、これから実行される一連のセクションが適合する可能性のある依存木データ6のことである。
次に、図10では、起動要因によりプロセスAが実行キューに登録され、セクション"プロセスA−1"の実行が開始された状況を示している。そのため、監視実行部4は、監視対象依存木リストのうち、最初にプロセスAによって実行されるセクションを示している監視対象依存木だけを監視対象依存木リストとして残す。
First, FIG. 9 shows a situation where the external interrupt A has occurred as an activation factor. The dependency tree data 6 is collectively stored in the DRAM 50 for each activation factor, and the monitoring execution unit 4 indicates the external interrupt A as the activation factor as a monitoring target dependency tree list in which sections that may be executed are stored. Dependent dependency tree data 6 is selected. Here, the monitoring target dependency tree list is the dependency tree data 6 in the dependency tree data 6 to which a series of sections to be executed from now on may match.
Next, FIG. 10 shows a situation in which the process A is registered in the execution queue due to the activation factor, and the execution of the section “process A-1” is started. Therefore, the monitoring execution unit 4 leaves only the monitoring target dependency tree that indicates the section that is first executed by the process A in the monitoring target dependency tree list as the monitoring target dependency tree list.

次に、図11では、プロセスAの実行により、プロセスCが起床されて実行キューに登録されるとともに、外部割込みBが起動要因として発生し、それに応じてプロセスDが実行キューに登録された状況を示している。監視実行部4は、外部割込みB及びプロセスDに応じた新たな監視対象依存木リストを選択する。このように、監視実行部4は、起動要因である外部割込みBによって新たな監視対象が発生した場合、それに応じた新たな監視対象既存木リストを生成する。また、監視実行部4は、プロセスがどちらの監視対象依存木リストに関係しているかを明確にするために、実行キューに登録されたプロセスをいずれかの監視対象依存木リストと対応付ける。   Next, in FIG. 11, the process C is woken up and registered in the execution queue by the execution of the process A, and the external interrupt B is generated as an activation factor, and the process D is registered in the execution queue accordingly. Is shown. The monitoring execution unit 4 selects a new monitoring target dependency tree list corresponding to the external interrupt B and the process D. As described above, when a new monitoring target is generated by the external interrupt B that is the activation factor, the monitoring execution unit 4 generates a new monitoring target existing tree list according to the new monitoring target. Further, the monitoring execution unit 4 associates a process registered in the execution queue with any monitoring target dependency tree list in order to clarify which monitoring target dependency tree list the process relates to.

ここで、起動要因以外によって実行キューに登録されたプロセスが対応付けられる監視対象依存木リストは、そのプロセスが実行キューに登録されたときに現在実行中のプロセスが対応付けられている監視対象依存木リストである。このときに、実行キューに登録されたプロセスは、現在実行中のセクションに依存するセクションの実行開始に伴って、実行キューに登録されていることになるからである。なお、複数のプロセスが並行して実行されている場合は、既に述べたように、実行キューに登録されたプロセスを起床したプロセスをOSが認識しているため、それに基づいてプロセスの特定が可能である。
一方、起動要因により、依存木データ6の先頭となるセクションの実行が開始され、プロセスが実行キューに登録された場合は、現在実行中のプロセスとは関係なく、その起動要因によって生成された監視対象依存木リストに対応付けられる。
Here, the monitoring target dependency tree list that is associated with the process registered in the execution queue for reasons other than the activation factor is the monitoring target dependency that is associated with the process that is currently executing when the process is registered in the execution queue. It is a tree list. This is because the process registered in the execution queue is registered in the execution queue with the start of the execution of the section depending on the currently executing section. If multiple processes are executed in parallel, as already mentioned, the OS recognizes the process that wakes up the process registered in the execution queue, so the process can be identified based on it. It is.
On the other hand, when the execution of the section at the head of the dependency tree data 6 is started by the activation factor and the process is registered in the execution queue, the monitoring generated by the activation factor is independent of the currently executing process. Corresponds to the target dependency tree list.

次に、正常動作が行われた場合には、現在実行中のセクション"プロセスA−1"に依存するセクション"プロセスC−1"における処理を実行するプロセスCが次に実行キューに登録されるプロセスとなる。図11では、プロセスCが実行キューに登録されているため、監視実行部4は、正常動作であると判断する。   Next, when the normal operation is performed, the process C that executes the process in the section “process C-1” depending on the section “process A-1” currently being executed is registered in the execution queue. It becomes a process. In FIG. 11, since the process C is registered in the execution queue, the monitoring execution unit 4 determines that the operation is normal.

次に、図12では、スケジューリング実行部1においてプロセスCの実行が開始された状態を示している。監視実行部4は、先に実行していたセクション"プロセスA−1"の次のセクションがプロセスCを示している監視対象依存木のみを監視対象依存木リストとして残す。また、実行完了したセクションも監視対象から除外する。正常動作時には、このまま全てのセクションを除外するまで進む。
一方、監視実行部4は、図13に示すように、監視対象依存木リストにないプロセスの実行キューへの登録や、監視対象依存木リストに登録されている実行時間と比較して、プロセスによるセクションにおける処理の実行時間が長い場合、異常として検出する。なお、監視実行部4は、異常を検出した場合に、監視対象依存木リストや実行キューに登録された監視対象依存木リストにないプロセス等の異常に関する情報を、例えば、メモリもしくはHDD(Hard Disc Drive)等の任意の記憶装置(図示せず)や、例えば、CRT(Cathode Ray Tube)、プラズマディスプレイ、液晶ディスプレイ等の任意の表示装置(図示せず)に出力するようにしてもよい。
Next, FIG. 12 shows a state where the execution of the process C is started in the scheduling execution unit 1. The monitoring execution unit 4 leaves only the monitoring target dependency tree in which the section next to the previously executed section “process A-1” indicates the process C as a monitoring target dependency tree list. Also, sections that have been executed are excluded from monitoring targets. In normal operation, the process proceeds until all sections are excluded.
On the other hand, as shown in FIG. 13, the monitoring execution unit 4 determines whether the process not registered in the monitoring target dependency tree list is registered in the execution queue or compared with the execution time registered in the monitoring target dependency tree list. If the processing execution time in a section is long, it is detected as abnormal. When the monitoring execution unit 4 detects an abnormality, the monitoring execution unit 4 stores information on an abnormality such as a process not included in the monitoring target dependency tree list or the monitoring target dependency tree list registered in the execution queue, for example, in a memory or HDD (Hard Disc The output may be output to an arbitrary storage device (not shown) such as a drive) or an arbitrary display device (not shown) such as a CRT (Cathode Ray Tube), a plasma display, or a liquid crystal display.

続いて、図14を参照して、以上に説明した監視処理の詳細について説明する。図14は、本実施の形態にかかる監視処理のフローチャートである。なお、図14では、S30〜S34は、スケジューリング実行部1における処理を示しており、S300〜S306は、実行依存検知部2における処理を示している。   Next, details of the monitoring process described above will be described with reference to FIG. FIG. 14 is a flowchart of the monitoring process according to the present embodiment. In FIG. 14, S30 to S34 indicate processing in the scheduling execution unit 1, and S300 to S306 indicate processing in the execution dependency detection unit 2.

まず、スケジューリング実行部1は、起動要因が発生すると、それに応じて実行可能状態となったプロセスを実行キューに登録する(S30)。
監視実行部4は、起動要因に応じてプロセスが実行キューに登録された場合、監視対象依存木リストを生成する(S300)。このとき、監視実行部4は、起動要因と、それに応じて実行キューに登録されるプロセスが判明しているため、それらに適合する依存木データ6を選択して、監視対象依存木リストを生成する。
次に、スケジューリング実行部1は、実行キューに登録された実行可能状態のプロセスに実行権を付与してプロセスを実行し、セクションにおける処理を実行する(S31)。
First, when an activation factor occurs, the scheduling execution unit 1 registers a process that has become executable according to the activation factor in the execution queue (S30).
When the process is registered in the execution queue according to the activation factor, the monitoring execution unit 4 generates a monitoring target dependency tree list (S300). At this time, the monitoring execution unit 4 generates the monitoring target dependency tree list by selecting the dependency tree data 6 that matches the activation factor and the process registered in the execution queue according to the activation factor. To do.
Next, the scheduling execution unit 1 grants an execution right to the executable process registered in the execution queue, executes the process, and executes the process in the section (S31).

次に、監視実行部4は、プロセスの実行中にスケジューリング実行部1が新たなプロセスを実行可能状態に移行させて実行キューに登録した場合(S32)、その登録要因を判断する(S301)。
新たなプロセスの登録要因が起動要因である場合、監視実行部4は、新たなプロセスと、その起動要因に適合する依存木データ6を選択し、監視対象依存木リストを作成する(S302)。
一方、新たなプロセスの登録要因が起動要因以外である場合、監視実行部4は、実行中のプロセスと対応付けられている監視対象依存木リストを検索し、監視対象依存木リスト内に、現在実行中のセクションに依存関係のあるセクションが示しているプロセスと、新たなプロセスとが一致する監視対象依存木があるかどうかを判断する(S303)。
Next, when the scheduling execution unit 1 shifts the new process to an executable state and registers it in the execution queue during execution of the process (S32), the monitoring execution unit 4 determines the registration factor (S301).
When the registration factor of the new process is the activation factor, the monitoring execution unit 4 selects the new process and the dependency tree data 6 that matches the activation factor, and creates a monitoring target dependency tree list (S302).
On the other hand, when the registration factor of the new process is other than the activation factor, the monitoring execution unit 4 searches the monitoring target dependency tree list associated with the process being executed, It is determined whether there is a monitoring target dependency tree in which a process indicated by a section having a dependency relationship with the section being executed matches a new process (S303).

一致するものがあった場合、もしくは、現在実行中のプロセスと実行キューに登録されたプロセスが同じ場合、つまり、時分割スケジューリングによる切り替えが行われた場合、監視実行部4は、正常と判断する。
一致するものがない場合、監視実行部4は、異常が発生したと判断する。
ここで、さらに監視対象依存木の実行開始プログラムカウンタ値と、プロセスの実行によって行われるセクションにおける処理の実行開始プログラムカウンタ値とが一致するかどうかも判断することにより、高い精度で異常を検出するようにしてもよい。
If there is a match, or if the process currently being executed and the process registered in the execution queue are the same, that is, if switching by time-sharing scheduling is performed, the monitoring execution unit 4 determines that it is normal .
If there is no match, the monitoring execution unit 4 determines that an abnormality has occurred.
Here, it is possible to detect an abnormality with high accuracy by further determining whether or not the execution start program counter value of the monitoring target dependency tree matches the execution start program counter value of the processing in the section executed by the process execution. It may be.

また、監視実行部4は、現在実行中のプロセスの実行時間が、監視対象依存木リストに残っている監視対象依存木の現在実行中のセクションに対応する実行時間のうち、最も長いものを超えた場合にも異常が発生したと判断する(S304)。ここで、最も長いものとしている理由は、監視対象依存木が複数残っている場合は、それぞれの監視対象依存木に現在実行中のセクションに対応する実行時間があるためである。なお、実行時間は、監視対象依存木の実行時間と、現在実行中のプロセスの実行時間との差が所定の閾値を超えた場合に異常が発生したと判断するようにしてもよい。   The monitoring execution unit 4 also exceeds the execution time of the currently executing process exceeding the longest execution time corresponding to the currently executing section of the monitoring target dependency tree remaining in the monitoring target dependency tree list. It is determined that an abnormality has occurred (S304). Here, the reason why it is the longest is that when a plurality of monitoring target dependency trees remain, each monitoring target dependency tree has an execution time corresponding to the section currently being executed. The execution time may be determined that an abnormality has occurred when the difference between the execution time of the monitoring target dependency tree and the execution time of the currently executing process exceeds a predetermined threshold.

次に、スケジューリング実行部1が現在実行中のプロセスの実行を終了した場合(S33)、監視実行部4は、そのプロセスに対応付けられている監視対象依存木リストが一つだけの依存木になっており、かつ、その全てのセクションが実行されているかどうかを判断する(S305)。なお、プロセスの実行を終了したことは、実行キューからプロセスが除かれた状態を検出することにより、判断することができる。
監視対象依存木リストが一つだけの依存木になっており、かつ、その全てのセクションが実行されている場合、監視実行部4は、その一連のセクションの実行を正常に終了したと判断する。
それ以外の場合は、監視実行部4は、スケジューリング実行部1が実行キューに登録されている次のプロセスを実行した場合に(S34)、監視対象依存木リストから、そのプロセスに適合しない監視対象依存木を削除し(S306)、処理を継続する。
Next, when the scheduling execution unit 1 finishes executing the currently executing process (S33), the monitoring execution unit 4 determines that the monitoring target dependency tree list associated with the process has only one dependency tree. It is determined whether all the sections are executed (S305). Note that the end of process execution can be determined by detecting the state in which the process is removed from the execution queue.
When the monitoring target dependency tree list is only one dependency tree and all the sections are executed, the monitoring execution unit 4 determines that the execution of the series of sections has been normally completed. .
In other cases, when the scheduling execution unit 1 executes the next process registered in the execution queue (S34), the monitoring execution unit 4 monitors the monitoring target that does not conform to the process from the monitoring target dependency tree list. The dependency tree is deleted (S306), and the process is continued.

以上に説明したように、本実施の形態によれば、複数のプロセスの実行状況に基づいて、複数のプロセスの相互間の依存関係を抽出して、抽出した依存関係に基づいて、複数のプロセスの動作の異常を検出することにより、システムが正常動作しているかどうかを監視することを可能としている。
さらに、本実施の形態によれば、外部機器や外部とのインタフェース等を必要とせず、運用時の環境のままで、システムの監視を行うことが可能である。また、これにより、外部機器や外部インタフェースを実装することによる、コストの増加やセキュリティ上の問題も発生することがなくなる。
さらにまた、本実施の形態によれば、システムの解析を行って監視用データを自動生成し、自動生成した監視用データを用いてシステムの監視を行うことにより、システムの解析からその監視までを全て自動化して行うことが可能である。
また、本実施の形態によれば、異常発生時には、監視実行部が出力した情報を参照することにより、直前までの一連のシステムの動作を把握することが可能である。
さらに、本実施の形態によれば、プロセスのスケジューリング状況に基づいて、解析及び監視を行っているため、高精度な監視を行うことが可能となる。
As described above, according to the present embodiment, based on the execution status of a plurality of processes, a dependency relationship between a plurality of processes is extracted, and a plurality of processes are extracted based on the extracted dependency relationship. By detecting an abnormal operation, it is possible to monitor whether the system is operating normally.
Furthermore, according to the present embodiment, it is possible to monitor the system in an operating environment without requiring an external device or an external interface. This also eliminates an increase in cost and security problems caused by mounting external devices and external interfaces.
Furthermore, according to this embodiment, the system is analyzed to automatically generate monitoring data, and the system is monitored using the automatically generated monitoring data, so that the system analysis to the monitoring can be performed. All can be done automatically.
Further, according to the present embodiment, when an abnormality occurs, it is possible to grasp a series of system operations up to immediately before by referring to information output by the monitoring execution unit.
Furthermore, according to the present embodiment, analysis and monitoring are performed based on the scheduling status of the process, so that highly accurate monitoring can be performed.

なお、本発明は上述した実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、本実施の形態では、プロセスの起床から休止までの処理であるセクションの相互間の依存関係を抽出しているが、プロセスに関する依存関係であれば、これに限られない。例えば、セクションにおいてプロセスが実行する処理について、相互間の依存関係を管理するようにしてもよい。
Note that the present invention is not limited to the above-described embodiment, and can be modified as appropriate without departing from the spirit of the present invention.
For example, in the present embodiment, the mutual dependency between sections, which is the process from the wake-up of the process to the suspension, is extracted. However, the present invention is not limited to this as long as the dependency is related to the process. For example, mutual dependency relations may be managed for processes executed by processes in sections.

以上に説明した本発明にかかる解析監視システムは、上述の実施の形態の機能を実現するプログラムを記憶した記憶媒体をシステムもしくは装置に供給し、システムあるいは装置の有するコンピュータ又はCPU、MPU(Micro Processing Unit)がこのプログラムを実行することによって、構成することが可能である。
また、このプログラムは様々な種類の記憶媒体に格納することが可能であり、通信媒体を介して伝達されることが可能である。ここで、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、CD−ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)、BD(Blu-ray Disc)、ROM(Read Only Memory)カートリッジ、バッテリバックアップ付きRAM(Random Access Memory)メモリカートリッジ、フラッシュメモリカートリッジ、不揮発性RAMカートリッジを含む。また、通信媒体には、電話回線の有線通信媒体、マイクロ波回線の無線通信媒体を含み、インターネットも含まれる。
The analysis and monitoring system according to the present invention described above supplies a storage medium storing a program for realizing the functions of the above-described embodiments to the system or apparatus, and the computer or CPU, MPU (Micro Processing) included in the system or apparatus. Unit) can be configured by executing this program.
In addition, this program can be stored in various types of storage media and can be transmitted via a communication medium. Here, examples of the storage medium include a flexible disk, a hard disk, a magnetic disk, a magneto-optical disk, a CD-ROM (Compact Disc Read Only Memory), a DVD (Digital Versatile Disc), a BD (Blu-ray Disc), and a ROM ( A read only memory (RAM) cartridge, a battery-backed RAM (Random Access Memory) memory cartridge, a flash memory cartridge, and a nonvolatile RAM cartridge are included. The communication medium includes a telephone line wired communication medium and a microwave line wireless communication medium, and includes the Internet.

また、コンピュータが上述の実施の形態の機能を実現するプログラムを実行することにより、上述の実施の形態の機能が実現されるだけではなく、このプログラムの指示に基づき、コンピュータ上で稼動しているOSもしくはアプリケーションソフトと共同して上述の実施の形態の機能が実現される場合も、発明の実施の形態に含まれる。
さらに、このプログラムの処理の全てもしくは一部がコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットにより行われて上述の実施の形態の機能が実現される場合も、発明の実施の形態に含まれる。
Further, when the computer executes the program that realizes the functions of the above-described embodiment, not only the functions of the above-described embodiment are realized, but also the computer is operating on the basis of the instructions of this program. The case where the functions of the above-described embodiment are realized in cooperation with the OS or application software is also included in the embodiment of the invention.
Further, when the functions of the above-described embodiment are realized by performing all or part of the processing of the program by a function expansion board inserted into the computer or a function expansion unit connected to the computer, the present invention may be implemented. It is included in the form.

1 スケジューリング実行部
2 実行依存検知部
3 依存データ整形部
4 監視実行部
5 一時依存木データ
6 依存木データ
40、41、42、43、44、80、81 CPU
50 DRAM
60 解析部
61 監視部
70、71、72 プロセス
DESCRIPTION OF SYMBOLS 1 Scheduling execution part 2 Execution dependence detection part 3 Dependent data shaping part 4 Monitoring execution part 5 Temporary dependence tree data 6 Dependency tree data 40, 41, 42, 43, 44, 80, 81 CPU
50 DRAM
60 Analysis Unit 61 Monitoring Unit 70, 71, 72 Process

Claims (9)

複数のプロセスを実行する第1のCPUと、前記第1のCPUによって実行される複数のプロセスを監視する第2のCPUとを備えた情報処理システムであって、
前記第2のCPUにおいて動作し、前記複数のプロセスのスケジューリング状況に基づいて、前記複数のプロセスの起床から休止までの処理であるセクションの相互間の依存関係として、任意のセクションの実行に応じて実行されるセクションを抽出する解析部と、
前記第2のCPUにおいて動作し、前記解析部によって抽出された依存関係に基づいて、前記解析部が抽出した任意のセクションの実行に応じて実行されるセクションと、前記任意のセクションの実行に応じて実行されるセクションとが一致するかどうかを比較することにより、前記複数のプロセスの動作の異常を検出する監視部とを備えた情報処理システム。
An information processing system comprising: a first CPU that executes a plurality of processes; and a second CPU that monitors a plurality of processes executed by the first CPU,
Based on the scheduling status of the plurality of processes based on the scheduling status of the plurality of processes , depending on the execution of an arbitrary section as a dependency relationship between the sections, which are processes from wakeup to suspension of the plurality of processes An analysis unit that extracts sections to be executed ;
A section that operates in the second CPU and that is executed according to execution of an arbitrary section extracted by the analysis unit based on the dependency relationship extracted by the analysis unit, and according to execution of the arbitrary section An information processing system comprising: a monitoring unit that detects an abnormality in operation of the plurality of processes by comparing whether or not the sections to be executed match .
前記解析部は、さらに前記セクションにおいてプロセスが実行する処理の実行時間を抽出し、
前記監視部は、さらに前記実行時間も一致するかどうかを比較することにより、前記異常を検出する請求項に記載の情報処理システム。
The analysis unit further extracts an execution time of a process executed by the process in the section,
The information processing system according to claim 1 , wherein the monitoring unit detects the abnormality by comparing whether or not the execution times coincide with each other.
前記情報処理システムは、さらに前記解析部による抽出内容を格納する記憶部を備え、
前記解析部は、前記依存関係によって1つに繋げることのできる一連のセクションのそれぞれに関連付けて前記抽出内容を依存関係情報として前記記憶部に格納し、
前記監視部は、前記記憶部に格納された依存関係情報に基づいて、前記比較を行う請求項又はに記載の情報処理システム。
The information processing system further includes a storage unit that stores the content extracted by the analysis unit,
The analysis unit stores the extracted content as dependency relationship information in the storage unit in association with each of a series of sections that can be connected to one by the dependency relationship,
The monitoring unit information processing system according to claim 1 or 2, based on the dependency information stored in the storage unit, performs the comparison.
前記解析部は、前記記憶部に同様の依存関係情報を2つ含まないように格納する請求項に記載の情報処理システム。 The information processing system according to claim 3 , wherein the analysis unit stores the same dependency relationship information in the storage unit so as not to include two pieces of dependency information. 前記解析部は、前記一連のセクションのうち、時分割スケジューリング方式によって分割されたセクションを1つのセクションにまとめた依存関係情報を格納する請求項又はに記載の情報処理システム。 The analysis unit, an information processing system according to claim 3 or 4 for storing said series of sections, time division dependency information the divided sections are summarized in one section by the scheduling method. 前記解析部は、さらに前記セクションにおいてプロセスが実行する処理の実行開始プログラムカウンタ値を抽出し、前記一連のセクションのうち、同じ実行開始プログラムカウンタ値の変化が繰り返されるセクションを1つにまとめた依存関係情報を格納する請求項乃至のいずれか1項に記載の情報処理システム。 The analysis unit further extracts an execution start program counter value of the process executed by the process in the section, and the dependency in which the change of the same execution start program counter value is repeated is combined into one in the series of sections. the information processing system according to any one of claims 3 to 5 for storing the relationship information. 前記監視部は、さらに前記実行開始プログラムカウンタ値も一致するかどうかを比較することにより、前記異常を検出する請求項に記載の情報処理システム。 The information processing system according to claim 6 , wherein the monitoring unit further detects the abnormality by comparing whether or not the execution start program counter value also matches. 第1のCPUによって実行される複数のプロセスを第2のCPUから監視する監視方法であって、
前記複数のプロセスのスケジューリング状況に基づいて、前記複数のプロセスの起床から休止までの処理であるセクションの相互間の依存関係として、任意のセクションの実行に応じて実行されるセクションを抽出するステップと、
前記複数のプロセスを監視する場合に、前記依存関係に基づいて、前記抽出した任意のセクションの実行に応じて実行されるセクションと、前記任意のセクションの実行に応じて実行されるセクションとが一致するかどうかを比較することにより、前記複数のプロセスの動作の異常を検出するステップとを備えた監視方法。
A monitoring method for monitoring a plurality of processes executed by a first CPU from a second CPU,
Extracting a section to be executed in response to execution of an arbitrary section as a dependency relationship between sections, which are processes from wakeup to suspension of the plurality of processes, based on scheduling states of the plurality of processes; ,
When monitoring the plurality of processes, the section executed in response to the execution of the extracted arbitrary section matches the section executed in response to the execution of the arbitrary section based on the dependency relationship. And a step of detecting an abnormal operation of the plurality of processes by comparing whether or not to perform the monitoring.
第1のCPUによって実行される複数のプロセスを第2のCPUから監視するための監視プログラムであって、
前記複数のプロセスのスケジューリング状況に基づいて、前記複数のプロセスの起床から休止までの処理であるセクションの相互間の依存関係として、任意のセクションの実行に応じて実行されるセクションを抽出するステップと、
前記複数のプロセスを監視する場合に、前記依存関係に基づいて、前記抽出した任意のセクションの実行に応じて実行されるセクションと、前記任意のセクションの実行に応じて実行されるセクションとが一致するかどうかを比較することにより、前記複数のプロセスの動作の異常を検出するステップとを前記第2のCPUに実行させる監視プログラム。
A monitoring program for monitoring a plurality of processes executed by a first CPU from a second CPU,
Extracting a section to be executed in response to execution of an arbitrary section as a dependency relationship between sections, which are processes from wakeup to suspension of the plurality of processes, based on scheduling states of the plurality of processes; ,
When monitoring the plurality of processes, the section executed in response to the execution of the extracted arbitrary section matches the section executed in response to the execution of the arbitrary section based on the dependency relationship. A monitoring program that causes the second CPU to execute a step of detecting an abnormality in the operation of the plurality of processes by comparing whether or not to do so .
JP2009057633A 2009-03-11 2009-03-11 Information processing system, monitoring method, and monitoring program Expired - Fee Related JP5365273B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009057633A JP5365273B2 (en) 2009-03-11 2009-03-11 Information processing system, monitoring method, and monitoring program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009057633A JP5365273B2 (en) 2009-03-11 2009-03-11 Information processing system, monitoring method, and monitoring program

Publications (2)

Publication Number Publication Date
JP2010211574A JP2010211574A (en) 2010-09-24
JP5365273B2 true JP5365273B2 (en) 2013-12-11

Family

ID=42971647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009057633A Expired - Fee Related JP5365273B2 (en) 2009-03-11 2009-03-11 Information processing system, monitoring method, and monitoring program

Country Status (1)

Country Link
JP (1) JP5365273B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228440A (en) * 2016-12-13 2018-06-29 比亚迪股份有限公司 The detection method and device of CPU program pointers
US11932269B2 (en) 2020-05-28 2024-03-19 Mitsubishi Electric Corporation Control system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6390208B2 (en) * 2014-06-27 2018-09-19 富士通株式会社 Monitoring target program selection method, monitoring target selection program, and monitoring target selection device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250186A (en) * 1992-03-05 1993-09-28 Toshiba Corp Task generation scheduling system
JPH064318A (en) * 1992-06-19 1994-01-14 Matsushita Electric Works Ltd Error detecting system
JP4376587B2 (en) * 2003-10-21 2009-12-02 株式会社エヌ・ティ・ティ・データ Access history recording device and access control device
JP4562568B2 (en) * 2005-03-28 2010-10-13 富士通テン株式会社 Abnormality detection program and abnormality detection method
JP2008191878A (en) * 2007-02-02 2008-08-21 Ricoh Co Ltd Remote diagnostic-failure responding system, remote diagnostic-failure responding device, remote diagnostic-failure response instruction device, remote diagnostic-falure responding method, and remote diagnostic-failure responding program
JP2009048358A (en) * 2007-08-17 2009-03-05 Nec Corp Information processor and scheduling method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228440A (en) * 2016-12-13 2018-06-29 比亚迪股份有限公司 The detection method and device of CPU program pointers
US11932269B2 (en) 2020-05-28 2024-03-19 Mitsubishi Electric Corporation Control system

Also Published As

Publication number Publication date
JP2010211574A (en) 2010-09-24

Similar Documents

Publication Publication Date Title
JP6669156B2 (en) Application automatic control system, application automatic control method and program
US9715409B2 (en) Job delay detection method and information processing apparatus
EP2439689A1 (en) Complex event processing apparatus and complex event processing method
JP6064734B2 (en) Workflow control program, apparatus and method
JP6037320B2 (en) Program, computer-readable recording medium, computer-implemented method for predicting computing device action candidates, and apparatus for predicting application activity
JP5102823B2 (en) Test support apparatus, test apparatus, test support method, and computer program for optimizing test scenario so as to minimize total test time
JPWO2009104344A1 (en) IT system behavior measurement and analysis system and method thereof
JP2007323193A (en) System, method and program for detecting abnormality of performance load
JP2008310748A (en) Task execution time recording device, task execution time recording method, and task execution recording program
US8732525B2 (en) User-coordinated resource recovery
JP5495310B2 (en) Information processing apparatus, failure analysis method, and failure analysis program
JP5623557B2 (en) Method, apparatus, and computer program in a multi-threaded computing environment for collecting diagnostic data
JP5365273B2 (en) Information processing system, monitoring method, and monitoring program
JP4992740B2 (en) Multiprocessor system, failure detection method, and failure detection program
JP4562568B2 (en) Abnormality detection program and abnormality detection method
WO2009123343A1 (en) Contention analysis device, contention analysis method, and program
JP6880961B2 (en) Information processing device and log recording method
JP6375200B2 (en) Apparatus and method for detecting abnormal signs of computer system
CN111625853A (en) Snapshot processing method, device and equipment and readable storage medium
US10241884B2 (en) Information processing apparatus and method for collecting performance data
JP7263206B2 (en) Information processing system, information processing system control method, information processing device, and program
JP4627275B2 (en) Monitoring program, monitoring method, and monitoring apparatus
JP2011179996A (en) Apparatus and method for diagnosing system
JP2008204013A (en) Thread operation failure detecting method and multi-thread system
JP2008204011A (en) Multi-thread system and thread operation failure detecting method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130725

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: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130826

R150 Certificate of patent or registration of utility model

Ref document number: 5365273

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees