JP2002333992A - Execution order inspecting device and its program - Google Patents

Execution order inspecting device and its program

Info

Publication number
JP2002333992A
JP2002333992A JP2001138732A JP2001138732A JP2002333992A JP 2002333992 A JP2002333992 A JP 2002333992A JP 2001138732 A JP2001138732 A JP 2001138732A JP 2001138732 A JP2001138732 A JP 2001138732A JP 2002333992 A JP2002333992 A JP 2002333992A
Authority
JP
Japan
Prior art keywords
program
order
execution order
call
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001138732A
Other languages
Japanese (ja)
Inventor
Seiji Miyamoto
誠司 宮本
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2001138732A priority Critical patent/JP2002333992A/en
Publication of JP2002333992A publication Critical patent/JP2002333992A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an execution order inspecting device capable of checking whether or not low order programs are called in a valid order by a high order program, and the low order programs are actually executed. SOLUTION: The judgment information of the validity of a call order from a high order program is generated by low order programs. To be more specific the corresponding relation of low order functions to be called to the execution order is prepared as execution order information, and the call judgment processing is executed, and the execution order information is acquired in the low order functions (S200). Then, its own execution order j is acquired (S220), and when it is judged that the call order from a high order function F is valid (S230: YES), its own execution order j is substituted for a variable Yi as the judgment information (S240). Therefore, whether or not the call order from the high order function F is valid can be judged based on whether or not the variable Yi is equal to 'j-1'.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、プログラムの結合
検査に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program connection check.

【0002】[0002]

【従来の技術】従来、エンジン制御などの所定機能を実
現するための処理プログラムは、実行単位となる複数の
プログラムの集合として記述されるのが一般的である。
例えば関数型のプログラム言語であれば、実行単位のプ
ログラムが関数として用意されるという具合である。
2. Description of the Related Art Conventionally, a processing program for realizing a predetermined function such as an engine control is generally described as a set of a plurality of programs as execution units.
For example, in the case of a functional programming language, an execution unit program is prepared as a function.

【0003】このような処理プログラムの開発過程で
は、実行単位となるプログラムの単体検査を行い、それ
に続いて、結合検査を行う。上述した関数型言語では、
関数単体が正常に機能するかという単体検査と、一連の
関数が連携して機能するかという結合検査を行うことに
なる。
In the process of developing such a processing program, a unit test of a program as an execution unit is performed, and subsequently, a combination test is performed. In the functional language described above,
A unit test is performed to determine whether a function unit functions normally, and a combined test is performed to determine whether a series of functions function in cooperation.

【0004】ところで、実行単位のプログラムは、通
常、階層化されて記述され、相対的に上位階層のプログ
ラムである上位プログラムによって相対的に下位階層の
プログラムである下位プログラムがコールされる。この
とき、上位プログラムと下位プログラムとの間でデータ
の受け渡しが行われることがある。これは関数型言語で
は、関数の引数として知られている。
[0004] By the way, a program of an execution unit is usually described in a hierarchical manner, and a lower program which is a relatively lower layer program is called by an upper program which is a relatively upper layer program. At this time, data may be transferred between the upper program and the lower program. This is known in functional languages as function arguments.

【0005】したがって、上述した結合検査は一般的
に、上位プログラムによって下位プログラムが正当な順
序でコールされていること、及び、上位プログラムと下
位プログラムとの間で正常なデータの受け渡しが行われ
ることを検査するものとなる。そのため従来は、処理プ
ログラム実行中にこれらのデータをモニタすることによ
って結合検査を行っていた。
[0005] Therefore, the above connection check generally requires that the lower program is called by the upper program in a proper order, and that normal data transfer between the upper program and the lower program is performed. Will be inspected. Therefore, conventionally, the connection inspection is performed by monitoring these data during execution of the processing program.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、上述し
たようにデータをモニタするような検査手法では、次の
ような場合には無駄が多く、結果的に、検査に要する時
間を増大させることになってしまう。
However, in the inspection method for monitoring data as described above, there are many wastes in the following cases, and as a result, the time required for the inspection is increased. Would.

【0007】それは、実行単位のプログラムの独立性を
高めるなどの目的で、上位プログラムと下位プログラム
との間でデータの受け渡しを行わないように設計された
処理プログラムを検査する場合である。この場合は、上
位プログラムによって下位プログラムが正当な順序でコ
ールされていることだけを確認すれば十分だからであ
る。
This is a case where a processing program designed so as not to transfer data between an upper program and a lower program is inspected for the purpose of enhancing the independence of the program of the execution unit. In this case, it is sufficient to confirm only that the upper program calls the lower program in a proper order.

【0008】したがってこのときは、最も簡単には、正
当な順序で下位プログラムをコールしたか否かを上位プ
ログラムで判断するような検査を結合検査とすることが
考えられる。しかし、上位プログラムの中で判断する
と、下位プログラムに制御が渡されて、下位プログラム
が実際に実行されたかについては分からない。
Therefore, in this case, it is most conceivable that the connection check is performed such that the upper program determines whether or not the lower program has been called in a proper order. However, if it is determined in the upper program, control is passed to the lower program, and it is not known whether the lower program was actually executed.

【0009】本発明は、上述した問題点を解決するため
になされたものであり、上位プログラムによって下位プ
ログラムが正当な順序でコールされて、しかも、下位プ
ログラムが実際に実行されることを検査する実行順序検
査装置を提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problem, and it is intended to check that a lower program is called by a higher program in a proper order and that the lower program is actually executed. It is an object to provide an execution order inspection device.

【0010】[0010]

【課題を解決するための手段及び発明の効果】本発明の
実行順序検査装置では、上位プログラムによる下位プロ
グラムの正当な実行順序を示す実行順序情報を用意して
おく。この実行順序情報は、例えば上位プログラムによ
ってA,B,Cの3つの下位プログラムがA→B→Cと
いう順序でコールされる場合、A下位プログラムに対し
て「1」、B下位プログラムに対して「2」、C下位プ
ログラムに対して「3」という下位プログラムと実行順
序を示す数値とを対応させた対応関係情報にすることが
考えられる。
The execution order checking apparatus of the present invention prepares execution order information indicating a proper execution order of a lower program by an upper program. For example, when three lower programs A, B, and C are called in the order of A → B → C by the upper program, the execution order information is “1” for the A lower program and “1” for the B lower program. It is conceivable to provide correspondence information in which a lower program of "3" and a numerical value indicating the execution order correspond to the lower program of "2" and the lower program of C.

【0011】そして、下位プログラムにて、コール判断
処理を実行して、上位プログラムからのコールが正当な
順序でなされたか否かを判断する。ただし、ある下位プ
ログラムにおいて、自身のコールが正当な順序であるか
否かを判断するためには、自身の実行順序が何番目であ
るかだけでなく、過去に別の下位プログラムが正当な順
序でコールされていることが分からなければならない。
Then, the lower program executes a call determination process to determine whether or not the calls from the upper program have been made in a proper order. However, in order to determine whether or not a call is in a legal order in a certain lower-level program, it is necessary to determine not only the order of its own execution but also the order in which another lower-level program has a legal order in the past. You have to know that you are being called.

【0012】そこで、上述したコール判断処理では、正
当な順序でコールがなされたと判断した場合、当該コー
ルが実行順序の何番目のものであるかを特定できるコー
ル情報を処理結果とする。例えばA,B,Cの下位プロ
グラムはそれぞれ、正当な順序でコールされたと判断す
ると、その順序に対応する「1」,「2」,「3」の数
値をそれぞれコール情報とするという具合である。
Therefore, in the above-described call determination processing, when it is determined that calls are made in a proper order, call information that can specify the order of the execution order of the call is set as a processing result. For example, if it is determined that the lower programs of A, B, and C are called in the proper order, the numerical values of "1", "2", and "3" corresponding to the order are respectively used as the call information. .

【0013】そして、下位プログラムでは、過去に実行
されたコール判断処理の処理結果であるコール情報と、
上述した実行順序情報とに基づいて、上位プログラムか
らのコールが正当な順序でなされなか否かを判断するよ
うにした。具体的に実行順序情報が上述した対応関係の
情報であり、コール情報がコール順序を数値で示す情報
である場合、例えばB下位プログラムは、実行順序情報
から分かる自身の正当なコール順序が「2」であるた
め、最も近い過去に生成されたコール情報が「1」であ
れば、上位プログラムからのコールが正当な順序でなさ
れたと判断する。同様に、C下位プログラムは、実行順
序情報から分かる自身の正当なコール順序が「3」であ
るため、最も近い過去に生成されたコール情報が「2」
であれば、上位プログラムからのコールが正当な順序で
なされたと判断する。また、A下位プログラムは、実行
順序情報から分かる自身の正当なコール順序が「1」で
あるため、過去にコール情報が生成されていない場合、
例えばコール情報がデフォルト値である場合などには、
上位プログラムからのコールが正当な順序でなされたと
判断する。
In the lower-level program, call information which is a processing result of the call determination processing executed in the past,
Based on the execution order information described above, it is determined whether or not the call from the host program is made in a proper order. Specifically, when the execution order information is the above-described correspondence information and the call information is information indicating the call order by a numerical value, for example, the B lower-level program has its own proper call order known from the execution order information of “2”. Therefore, if the call information generated in the closest past is “1”, it is determined that the call from the higher-level program has been made in a proper order. Similarly, since the legitimate call order of the C lower-order program known from the execution order information is “3”, the call information generated in the nearest past is “2”.
If so, it is determined that the calls from the higher-level program have been made in a proper order. In addition, since the legitimate call order of the A lower-order program, which is known from the execution order information, is “1”, if no call information has been generated in the past,
For example, if the call information is the default value,
Judge that the call from the host program was made in a proper order.

【0014】そして、上位プログラムでは、コール対象
の下位プログラムを全て実行した後、コール判断処理に
おける処理結果に基づき、当該下位プログラムを正しい
順序でコールしたか否かを判定する判定処理を実行す
る。上述した例で言えば、最も近い過去に生成されたコ
ール情報が「3」であれば、コール対象の下位プログラ
ム全てを正しい順序でコールしたと判断する。
[0014] After executing all the lower programs to be called, the upper program executes a judging process for judging whether or not the lower programs have been called in a correct order based on the processing result in the call judging process. In the above example, if the call information generated in the closest past is "3", it is determined that all the lower programs to be called have been called in the correct order.

【0015】つまり、本発明によれば、下位プログラム
自身が上位プログラムからのコール順序の正当性を判断
し、その判断結果に基づいて最終的に、上位プログラム
にてコール対象の下位プログラムのコール順序の正当性
を判定する。これによって、上位プログラムによって下
位プログラムが正当な順序でコールされて、しかも、実
際に下位プログラムが実行されていることを検査でき
る。
That is, according to the present invention, the lower program itself determines the validity of the call sequence from the upper program, and finally, based on the determination result, the call sequence of the lower program to be called by the upper program. Is determined. This makes it possible to check that the lower program is called by the upper program in a proper order and that the lower program is actually being executed.

【0016】なお、上述したコール情報は、コールが実
行順序の何番目のものであるかを直接的に特定できる、
あるいは、実行順序情報を用いて間接的に特定できるも
のであればよい。前者は上述したような実行順序を直接
的に示す数値であることが考えられる。一方、後者は、
例えばコールされた下位プログラムを特定できる情報で
あることが考えられる。実行順序情報を用いることによ
って間接的に、その下位プログラムのコールが実行順序
の何番目のものであるかを特定できるからである。ま
た、実行順序情報も、下位プログラムと実行順序(数
値)との対応関係を示す情報に限定されるものではな
い。例えば下位プログラム名を実行順序の通りに並べた
ものであってもよい。
The above-described call information can directly specify the order of the call in the execution order.
Alternatively, any information that can be specified indirectly using the execution order information may be used. The former may be a numerical value that directly indicates the execution order as described above. On the other hand, the latter
For example, the information may be information that can specify a called lower-level program. This is because, by using the execution order information, it is possible to indirectly specify the order of the call of the lower-order program in the execution order. Further, the execution order information is not limited to the information indicating the correspondence between the lower-order program and the execution order (numerical value). For example, lower program names may be arranged in the order of execution.

【0017】上述したようなコール情報は、上位プログ
ラム及び下位プログラムの間で共通に使用される一つの
グローバル変数に代入されるようにすることが考えられ
る(請求項2)。グローバル変数を用いれば複数のプロ
グラムでコール情報を共有できることは言うまでもない
が、一つのグローバル変数に代入するようにすれば、記
憶領域を削減できる点で有利である。
It is conceivable that the above-mentioned call information is substituted into one global variable commonly used between the upper program and the lower program (claim 2). Needless to say, if a global variable is used, call information can be shared by a plurality of programs. However, if it is assigned to one global variable, it is advantageous in that the storage area can be reduced.

【0018】この構成を前提として、コール判断処理で
は、上位プログラムからのコールが正当な順序でなされ
ていないと判断した場合、グローバル変数に代入された
処理結果を更新しないようにすることが考えられる(請
求項3)。これによって、一つのグローバル変数を用い
た場合であっても、どの下位プログラムまでが正当な順
序でコールされたかが分かる。
On the premise of this configuration, in the call determination processing, when it is determined that the calls from the upper-level program are not made in a proper order, it is conceivable not to update the processing result assigned to the global variable. (Claim 3). Thus, even when one global variable is used, it is possible to know which lower-level program has been called in a proper order.

【0019】また、コール判断処理では、上位プログラ
ムからのコールが正当な順序でなされていないと判断し
た場合、その旨を示す情報を出力するようにしてもよい
(請求項4)。例えば実行順序のエラーを報知するよう
にすれば、一連の検査処理が終了する前の早い段階でエ
ラーの発生を知ることができ便利である。
In the call determination process, when it is determined that the calls from the higher-level program are not made in a proper order, information indicating that fact may be output (claim 4). For example, if an error in the execution order is notified, it is convenient to know the occurrence of the error at an early stage before a series of inspection processing ends.

【0020】ところで、上位プログラムによるコール対
象の下位プログラムは、所定のイベントの単位で特定さ
れるのが一般的である。したがってこれを前提とすれ
ば、実行順序情報をイベント毎に用意しておき、上位プ
ログラムにて、検査対象とするイベントを特定するイベ
ント特定処理を実行し、下位プログラムにおけるコール
判断処理では、イベント特定処理にて特定されたイベン
トに対応して用意された実行順序情報に基づき、判断を
行うようにすることが考えられる(請求項5)。このよ
うにすれば、複数のイベントに対応させて実行すべき結
合検査を簡単に行うことができ、結合検査に要する時間
をさらに短縮できる。例えば自動的に複数のイベントに
対する結合検査を行うこともできる。そしてこの場合、
判定処理では、イベント毎に、当該判定の結果を出力す
るようにすることが望ましい(請求項6)。
Incidentally, the lower-level program to be called by the upper-level program is generally specified in units of a predetermined event. Therefore, assuming this, the execution order information is prepared for each event, an event specifying process for specifying an event to be inspected is executed in an upper program, and an event specifying process is performed in a call determining process in a lower program. It is conceivable to make a determination based on the execution order information prepared corresponding to the event specified in the processing (claim 5). This makes it possible to easily perform a connection test to be executed in response to a plurality of events, and further reduce the time required for the connection test. For example, a connection test for a plurality of events can be automatically performed. And in this case,
In the determination process, it is desirable to output the result of the determination for each event (claim 6).

【0021】なお、上述した各処理は、下位プログラム
又は上位プログラム中で実行されるものであるが、検査
時のみに挿入して用いることを考えると、マクロ記述に
て用意しておき、処理プログラムにリンクされて実行さ
れるようにすると便利である(請求項7)。
Each of the above-described processes is executed in a lower-level program or a higher-level program. However, considering that the processes are inserted and used only at the time of inspection, they are prepared in a macro description, and It is convenient to execute the program by linking to (claim 7).

【0022】また、以上の説明では実行順序検査装置と
して説明してきたが、本発明は、上述したようなマクロ
などで記述されたプログラムの発明として実現すること
もできる。
In the above description, the execution order checking apparatus has been described. However, the present invention can also be realized as an invention of a program described by a macro or the like as described above.

【0023】[0023]

【発明の実施の形態】以下、本発明を具体化した実施例
を図面を参照して説明する。図1は、実施例のプログラ
ム構成を模式的に示す説明図である。この実施例では、
処理プログラムが関数型のプログラム言語で記述される
ものとし、実行単位となる複数のプログラムの中で相対
的に上位階層のプログラムを上位関数といい、相対的に
下位階層のプログラムを下位関数という。図1には、あ
る一つの上位関数Fと、この上位関数からコールされる
下位関数群f1,f2,・・・を示した。なお、以下の
説明で下位関数を特に区別しない場合は単に「下位関数
f」と示す。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is an explanatory diagram schematically showing the program configuration of the embodiment. In this example,
It is assumed that the processing program is described in a functional programming language, and among a plurality of programs as execution units, a relatively upper-layer program is called an upper function, and a relatively lower-layer program is called a lower function. FIG. 1 shows a certain upper function F and lower function groups f1, f2,... Called from this higher function. In the following description, when the lower functions are not particularly distinguished, they are simply referred to as “lower functions f”.

【0024】この上位関数F及び下位関数群f1,f
2,・・・のうちのいくつかの下位関数fによって、例
えば初期化イベントや周期イベントといった特定のイベ
ントに対応する機能が実現されるものとする。ところ
で、ここに示す関数間の階層関係は、所定機能を実現す
るための処理プログラム全体の一部を示すものであり、
上位関数Fがさらに上位階層の関数の下位関数となるこ
とも考えられる。
The upper function F and the lower function groups f1, f
It is assumed that a function corresponding to a specific event such as an initialization event or a periodic event is realized by some of the lower-order functions f among 2,. By the way, the hierarchical relationship between the functions shown here indicates a part of the entire processing program for realizing the predetermined function.
It is also conceivable that the upper function F becomes a lower function of the function of the higher hierarchy.

【0025】本実施例では、上位関数Fから下位関数f
が正当な順序でコールされて、下位関数fが実際に実行
されるか否かを検査する。このため、上位関数Fでは、
その処理の中で、イベントに対応する下位関数fの一連
のコールに先立って、イベント特定処理をコールする
(S1)。また、該当する下位関数fの一連のコールが
終了すると、判定処理をコールする(S3)。一方、下
位関数fでは、その処理の中で、コール判断処理をコー
ルする(S2)。なお、処理のステップを単に記号Sで
示す。以下でも同様である。
In this embodiment, the upper function F to the lower function f
Are called in the correct order to check whether the lower-order function f is actually executed. Therefore, in the upper function F,
In the process, an event specifying process is called prior to a series of calls of the lower-level function f corresponding to the event (S1). When a series of calls of the corresponding lower-level function f is completed, a determination process is called (S3). On the other hand, the lower-level function f calls a call determination process in the process (S2). Note that the processing steps are simply indicated by a symbol S. The same applies to the following.

【0026】これらイベント特定処理、判定処理、及び
コール判断処理は、マクロ記述されて用意されており、
検査時には予め定められた指示を行ってコンパイル・リ
ンクすることで上位関数Fや下位関数fにリンクされ
る。なお、検査を行わないときには、上述したS1,S
2,S3のコール先にはダミーの関数がリンクされる。
The event identification processing, the determination processing, and the call determination processing are prepared by being described in a macro.
At the time of inspection, a predetermined instruction is given to compile and link to link to the upper function F or the lower function f. When the inspection is not performed, the above-mentioned S1, S
A dummy function is linked to the call destinations of S2 and S3.

【0027】そして、下位関数fにおけるコール判断処
理では、予め用意された実行順序情報30と、最も近い
過去に実行されたコール判断処理の処理結果であるコー
ル情報とに基づき、上位関数Fからのコールが正当な順
序でなされたか否かを判断する。
In the call decision processing in the lower function f, the call decision processing from the upper function F is performed based on the execution order information 30 prepared in advance and the call information which is the processing result of the call decision processing executed most recently in the past. Determine if the calls were made in the proper order.

【0028】実行順序情報30は、イベント毎に、上位
関数Fからコールされる下位関数f1,f2,・・・,
fMと、その正当な実行順序1,2,・・・,Nとの対
応関係を示す情報である。この実行順序情報30は、上
位関数Fの設計時点で用意されるものとでき、ヘッダー
ファイルとして用意することが考えられる。したがっ
て、下位関数fは、上述したコンパイル・リンク時に、
この実行順序情報30をインクルードする。
The execution order information 30 includes, for each event, lower functions f1, f2,.
.., N. fM and its valid execution order 1, 2,..., N. The execution order information 30 can be prepared at the time of designing the upper-level function F, and can be prepared as a header file. Therefore, the lower-order function f is obtained at the time of compiling and linking as described above.
The execution order information 30 is included.

【0029】なお、上述のマクロ記述されたイベント特
定処理、判定処理、及びコール判断処理を実現するプロ
グラム10が「プログラム」に相当する。そして、この
ようなプログラム10がリンクされた上位関数F及び下
位関数fを実行する検査装置20が「実行順序検査装
置」に相当する。したがって、検査装置20は、CP
U、ROM、RAM、入出力装置などを備える、いわゆ
るコンピュータシステムとしての構成を有する。このよ
うなコンピュータシステムの構成は、当業者にとってよ
く知られたものであるため割愛する。
The program 10 that implements the above-described macro-described event identification processing, determination processing, and call determination processing corresponds to a “program”. The inspection device 20 that executes the upper function F and the lower function f linked with the program 10 corresponds to an “execution order inspection device”. Therefore, the inspection device 20 uses the CP
It has a configuration as a so-called computer system including a U, a ROM, a RAM, an input / output device, and the like. The configuration of such a computer system is well known to those skilled in the art and will not be described.

【0030】次に、検査装置20の特徴的動作、すなわ
ちプログラム10の発揮する機能をフローチャートに基
づいて説明する。まず上位関数Fの処理が実行される
と、下位関数fのコールに先立って、イベント特定処理
が実行される(S1)。
Next, the characteristic operation of the inspection apparatus 20, that is, the functions exhibited by the program 10 will be described with reference to flowcharts. First, when the processing of the upper function F is executed, the event specifying processing is executed prior to the call of the lower function f (S1).

【0031】図2は、イベント特定処理を示すフローチ
ャートである。まず最初のS100では、イベントを特
定する。すなわち、上位関数Fは複数のイベントに対応
する動作を行い、イベントによってコール対象となる下
位関数fが変わってくる。したがって、ここでは、検査
しようとするイベントに対応する番号iを変数Xに代入
して、イベントを特定する。番号iは、検査に先立って
作業者が入力したものであってもよいし、自動的に設定
されるものであってもよい。
FIG. 2 is a flowchart showing the event specifying process. First, in S100, an event is specified. That is, the upper function F performs an operation corresponding to a plurality of events, and the lower function f to be called changes depending on the event. Therefore, here, the event i is specified by substituting the number i corresponding to the event to be inspected into the variable X. The number i may be input by the operator prior to the inspection, or may be automatically set.

【0032】続くS110では、イベントの番号iに対
応するグローバル変数Yiを設定する。予めイベント毎
の検査結果を出力するための記憶領域を確保しておき、
ここでその記憶領域を変数Yiとして設定するという具
合である。そして、S110の処理終了後、本イベント
特定処理を終了する。
At S110, a global variable Yi corresponding to the event number i is set. A storage area for outputting the inspection result for each event is secured in advance,
Here, the storage area is set as a variable Yi. Then, after the processing of S110 ends, the present event specifying processing ends.

【0033】このようなイベント特定処理を実行した
後、上位関数Fは、実際にコール対象となる下位関数f
をコールする。そして、下位関数fでは、コール判断処
理を実行して(S2)、上位関数Fからのコール順序の
正当性を判断する。図3は、コール判断処理を示すフロ
ーチャートである。
After executing such an event specifying process, the upper function F becomes the lower function f to be actually called.
Call. Then, the lower function f executes a call determination process (S2) to determine the validity of the call order from the upper function F. FIG. 3 is a flowchart showing the call determination process.

【0034】まず最初のS200では、変数Xを参照し
て、番号iのイベントに対応して用意された実行順序情
報30を取得する。続くS210では、変数Yiが「0
x7F」以上であるか否かを判断する。ここで「0x」
は16進表記であることを示す。本実施例では、上位関
数Fによって最終的に下位関数fのコール順序が正しい
ことが判断されると、変数Yiに「0x80」が代入さ
れ、一方、コール順序が正しくないことが判断される
と、変数Yiに「0x7F」が代入される。したがっ
て、この判断処理は、既に「正常異常判定」がなされて
いるか否かを判断するものである。ここでYi≧0x7
Fであると判断された場合(S210:YES)、すな
わち既に正常異常判定がなされている場合には、以降の
処理を実行せずに、本コール判断処理を終了する。一
方、Yi<0x7Fである場合(S210:NO)、S
220へ移行する。
First, in step S200, the execution order information 30 prepared corresponding to the event of the number i is acquired with reference to the variable X. In subsequent S210, the variable Yi is set to “0”.
x7F ”or more is determined. Here "0x"
Indicates hexadecimal notation. In the present embodiment, when it is finally determined by the upper function F that the calling order of the lower function f is correct, “0x80” is substituted for the variable Yi. On the other hand, when it is determined that the calling order is incorrect. , “0x7F” is substituted for the variable Yi. Therefore, this determination processing is for determining whether or not “normal / abnormality determination” has already been performed. Where Yi ≧ 0x7
When it is determined to be F (S210: YES), that is, when the normality / abnormality determination has already been made, the present call determination processing is terminated without executing the subsequent processing. On the other hand, if Yi <0x7F (S210: NO), S
Move to 220.

【0035】S220では、自身の実行順序jを取得す
る。そして、次のS230では、変数Yiが「j−1」
に等しいか否かを判断する。ここでYi=jー1である
場合(S230:YES)、S240にてYiに自身の
実行順序jを代入して、その後、本コール判断処理を終
了する。一方、Yi≠j−1である場合(S230:N
O)、S240の処理を実行せず、本コール判断処理を
終了する。
In step S220, the own execution order j is obtained. Then, in the next S230, the variable Yi is set to “j−1”.
Judge whether it is equal to or not. Here, if Yi = j−1 (S230: YES), the own execution order j is substituted for Yi in S240, and then the present call determination processing ends. On the other hand, if Yi ≠ j−1 (S230: N
O), the process of S240 is not performed, and the call determination process ends.

【0036】つまり、上位関数Fからのコール順序が正
当なものであると判断すると(S230:YES)、自
身の実行順序jをYiに代入して(S240)処理を終
了する。例えば下位関数fのコール順序が2番目であっ
た場合、上位関数Fから正当な順序でコールされると
(S230:YES)、変数Yiに「2」が代入され
る。したがって、例えばコール順序が3番目である下位
関数fにおけるコール判断処理では、S220にて自身
の実行順序j(=3)を取得した後、Yiが「j−1」
(=2)である場合には(S230:YES)、正当な
順序でコールされたと判断する。一方、自身の実行順序
j(=3)を取得した後、Yiが「jー1」でなければ
(≠2)、コール順序が正当でないと判断してS240
の処理を実行しない。したがって、S240にて変数Y
iに代入される数値が「コール情報」に相当する。
That is, when it is determined that the calling order from the upper-level function F is valid (S230: YES), its own execution order j is substituted for Yi (S240), and the process ends. For example, when the calling order of the lower-order function f is the second, and the lower-order function F is called in a proper order (S230: YES), “2” is substituted for the variable Yi. Therefore, for example, in the call determination process in the lower-order function f having the third call order, after acquiring its own execution order j (= 3) in S220, Yi becomes “j−1”.
If (= 2) (S230: YES), it is determined that the calls were made in a proper order. On the other hand, after acquiring its own execution order j (= 3), if Yi is not “j−1” (≠ 2), it is determined that the call order is not valid and S240 is performed.
Do not execute the process. Therefore, in S240, the variable Y
The numerical value assigned to i corresponds to “call information”.

【0037】このようなコール判断処理がコール対象の
全ての下位関数fにて実行されると、上位関数Fによる
コール順序が正当なものであれば、最後にコールされた
下位関数fの実行順序jがYiに代入されるはずであ
る。そこで、上位関数Fでは、判定処理を実行して(S
3)、コール順序の正当性を判定する。
When such a call determination process is executed in all the lower functions f to be called, if the calling order by the upper function F is valid, the execution order of the lower function f that was called last j should be substituted for Yi. Therefore, in the upper-level function F, a determination process is performed (S
3) Determine the validity of the call order.

【0038】図4は、判定処理を示すフローチャートで
ある。まず最初のS300において、変数Yiが「0x
7F」以上であるか否かを判断する。この判断は、上述
した図3中のS210と同様のものであり、既に「正常
異常判定」がなされているか否かを判断するものであ
る。ここでYi≧0x7Fであると判断された場合(S
300:YES)、すなわち既に正常異常判定がなされ
ている場合には、以降の処理を実行せずに、本判定処理
を終了する。一方、Yi<0x7Fである場合(S30
0:NO)、S310へ移行する。
FIG. 4 is a flowchart showing the determination process. First, in the first S300, the variable Yi is set to “0x
7F ”or more. This determination is similar to S210 in FIG. 3 described above, and determines whether or not “normality / abnormality determination” has already been performed. Here, when it is determined that Yi ≧ 0x7F (S
300: YES), that is, in the case where the normal / abnormal judgment has been made, the present judgment processing ends without executing the subsequent processing. On the other hand, if Yi <0x7F (S30
0: NO), and proceeds to S310.

【0039】S310では、変数Yiが番号Nに等しい
か否かを判断する。この番号Nは、最後にコールされた
下位関数fMの実行順序jである。ここでYi=Nであ
る場合(S310:YES)、S320にて正常判定し
て変数Yiに「0x80」を代入し、本判定処理を終了
する。一方、Yi≠Nである場合(S310:NO)、
S330にて異常判定して変数Yiに「0x7F」を代
入し、本判定処理を終了する。
In S310, it is determined whether or not the variable Yi is equal to the number N. This number N is the execution order j of the lower function fM called last. Here, if Yi = N (S310: YES), normality is determined in S320, “0x80” is substituted for the variable Yi, and this determination processing ends. On the other hand, if Yi ≠ N (S310: NO),
In S330, an abnormality is determined, “0x7F” is substituted for the variable Yi, and the present determination processing ends.

【0040】このように、本実施例によれば、下位関数
fにてコール判断処理を実行することにより、コール対
象となる下位関数fのそれぞれが、自身のコール順序の
正当性を判断する(図3中のS220〜S240)。そ
して、その判断結果に基づいて最終的に、上位関数Fは
判定処理を実行し、コール対象の下位関数fのコール順
序の正当性を判定する(図4中のS310〜S33
0)。これによって、上位関数Fによって下位関数fが
正当な順序でコールされて、しかも、実際に下位関数f
が実行されていることを検査できる。
As described above, according to the present embodiment, by executing the call determination processing by the lower function f, each of the lower functions f to be called determines the validity of its own call order ( S220 to S240 in FIG. 3). Finally, based on the result of the determination, the upper-level function F executes a determination process to determine the validity of the calling order of the lower-level function f to be called (S310 to S33 in FIG. 4).
0). As a result, the lower-order function f is called by the upper-order function F in a proper order, and the lower-order function f is actually called.
Is running.

【0041】また、各下位関数fは、上位関数Fからの
コール順序が正当なものであると判断すると(図3中の
S230:YES)、コール情報としての自身の実行順
序jを一つのグローバル変数Yiに代入する(S24
0)。このように一つのグローバル変数Yiを用意する
ことで、上位関数Fからコールされる下位関数fの個数
が増減しても、検査に必要な記憶領域に増減が生じるこ
とがなく、結果的に記憶領域を圧迫することがない。さ
らに、最終的な上位関数Fによる判定処理の結果もグロ
ーバル変数Yiに代入しているため(図4中のS32
0,S330)、検査に必要な記憶領域の削減が図られ
る。
When each lower-level function f determines that the call order from the upper-level function F is valid (S230: YES in FIG. 3), the lower-order function f sets its own execution order j as call information to one global function. Assigned to the variable Yi (S24
0). By preparing one global variable Yi in this way, even if the number of lower-level functions f called from the upper-level function F increases or decreases, the storage area required for the inspection does not increase or decrease, and as a result, the storage area is reduced. No pressure on the area. Further, the result of the final determination process by the upper-level function F is also assigned to the global variable Yi (S32 in FIG. 4).
0, S330), the storage area required for the inspection is reduced.

【0042】さらにまた、既に正常異常判定されている
か否かを判断し(図3中のS210,図4中のS30
0)、正常異常判定されている場合には変数Yiを更新
しない。これによって、検査処理が繰り返し行われても
変数Yiの値が変動することがなく、変数Yiの値をモ
ニタする場合に便利である。
Further, it is determined whether or not a normal / abnormal determination has already been made (S210 in FIG. 3, S30 in FIG. 4).
0) When the normal / abnormal state is determined, the variable Yi is not updated. This is convenient when the value of the variable Yi is monitored without changing the value of the variable Yi even if the inspection process is repeatedly performed.

【0043】また、実行順序情報30は、上位関数Fと
下位関数fとで実現されるイベント毎に用意した。そし
て、上位関数Fではイベント特定処理によってイベント
を特定し(図2中のS100)、下位関数fのコール判
断処理では、ここで特定されたイベントに従って、実行
順序情報30を取得する(図3中のS200)。これに
よって、複数のイベントに対応させて実行すべき検査を
簡単に行うことができ、検査に要する時間をさらに短縮
できる。例えばS100で代入されるイベントに対応す
る番号iを自動的にインクリメントすれば、複数のイベ
ントに対する検査を自動的に行うことができる。またこ
のとき、イベントの番号iに対応させてグローバル変数
Yiを用意するため(S110)、イベント毎に、判定
の結果を出力できる。
The execution order information 30 is prepared for each event realized by the upper function F and the lower function f. Then, in the upper function F, an event is specified by an event specifying process (S100 in FIG. 2), and in the call determining process of the lower function f, the execution order information 30 is acquired according to the event specified here (FIG. 3). S200). As a result, an inspection to be executed in response to a plurality of events can be easily performed, and the time required for the inspection can be further reduced. For example, if the number i corresponding to the event substituted in S100 is automatically incremented, inspection for a plurality of events can be performed automatically. At this time, since the global variable Yi is prepared corresponding to the event number i (S110), the result of the determination can be output for each event.

【0044】さらにまた、実施例のプログラム10は、
マクロ記述され、検査時に、上位関数Fや下位関数fに
リンクされて実行される。このため、上位関数Fや下位
関数f自体には、プログラム10をコールするための処
理S1,S2,S3を記述するだけでよく、作業者にと
って便利である。
Further, the program 10 of the embodiment is
It is described by a macro and linked to the upper function F or the lower function f at the time of inspection and executed. Therefore, it is only necessary to describe the processes S1, S2, and S3 for calling the program 10 in the upper function F and the lower function f themselves, which is convenient for the operator.

【0045】以上、本発明はこのような実施例に何等限
定されるものではなく、本発明の主旨を逸脱しない範囲
において種々なる形態で実施し得る。例えば、上記実施
例では変数Yiに上位関数Fによる判定処理の結果を代
入していたが(図4中のS320,S330)、判定処
理の結果は、別の変数Zに代入してもよい。このように
すれば、変数Yiには、正当な順序でコールされた最終
的な下位関数fの実行順序jが代入されることになり
(図3中のS240)、正当な順序でコールされない場
合には(S230:NO)実行順序jが代入されないた
め、上位関数Fによる判定処理の終了後、どの下位関数
fまでが正当な順序でコールされたかを変数Yiに基づ
いて知ることができる。なお、変数Zを用意する場合に
も、イベント毎に対応させて用意するのが望ましい。
As described above, the present invention is not limited to such an embodiment, and can be implemented in various forms without departing from the gist of the present invention. For example, in the above embodiment, the result of the determination processing by the higher-order function F is substituted for the variable Yi (S320, S330 in FIG. 4), but the result of the determination processing may be substituted for another variable Z. In this way, the execution order j of the final lower-order function f called in the proper order is substituted for the variable Yi (S240 in FIG. 3). (S230: NO) Since the execution order j is not substituted, it is possible to know, based on the variable Yi, which lower function f has been called in a proper order after the determination processing by the upper function F. When preparing the variable Z, it is desirable to prepare it in correspondence with each event.

【0046】また例えば、上記構成は、正常異常判定さ
れているか否かを判断することにより、実質的に一度だ
け検査・判定を行うものであった。ところが、最初は正
常と判定されても、繰り返し実行される内に異常の判定
がなされる(不具合が発見される)可能性もあり得る。
そこで、異常を検出するまで繰り返し検査・判定処理を
行う構成を採ることも可能である。
Also, for example, the above-described configuration performs the inspection / determination substantially only once by determining whether the normal / abnormal state is determined. However, even if it is determined to be normal at first, there is a possibility that an abnormality is determined (a defect is found) during repeated execution.
Therefore, it is possible to adopt a configuration in which the inspection / judgment processing is repeatedly performed until an abnormality is detected.

【0047】例えば、上記実施例では最終的に上位関数
Fによる判定処理の結果に基づいて実行順序のエラーが
分かるが、下位関数fのコール判断処理において、実行
順序のエラーを通知するようにしてもよい。具体的に
は、S230にて否定判断された後、このような通知処
理を実行するようにしてもよい。このようにすれば、一
連の検査処理が終了する前の早い段階でエラーの発生が
作業者に分かるため便利である。
For example, in the above embodiment, an error in the execution order can be finally found based on the result of the judgment processing by the upper function F. However, in the call judgment processing of the lower function f, an error in the execution order is notified. Is also good. Specifically, such a notification process may be executed after a negative determination is made in S230. This is convenient because the operator can recognize the occurrence of an error at an early stage before the end of a series of inspection processes.

【図面の簡単な説明】[Brief description of the drawings]

【図1】実施例のプログラム構成を模式的に示す説明図
である。
FIG. 1 is an explanatory diagram schematically showing a program configuration of an embodiment.

【図2】上位関数によるイベント特定処理を示すフロー
チャートである。
FIG. 2 is a flowchart showing an event specifying process by a higher-order function.

【図3】下位関数によるコール判断処理を示すフローチ
ャートである。
FIG. 3 is a flowchart showing a call determination process by a lower function.

【図4】上位関数による判定処理を示すフローチャート
である。
FIG. 4 is a flowchart illustrating a determination process by a higher-order function.

【符号の説明】[Explanation of symbols]

10…プログラム 20…検査装置 30…実行順序情報 10 program 20 inspection device 30 execution order information

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】所定機能を実現するための処理プログラム
が、実行単位となる複数のプログラムの集合として記述
される場合に、相対的に上位階層のプログラムである上
位プログラムによって相対的に下位階層のプログラムで
ある下位プログラムが正当な順序でコールされて実行さ
れるか否かを検査する実行順序検査装置であって、 前記上位プログラムによる前記下位プログラムの正当な
実行順序を示す実行順序情報を用意しておき、 前記下位プログラムにて、前記上位プログラムからのコ
ールが正当な順序でなされたか否かを判断し、正当な順
序でなされたと判断した場合には当該コールが前記実行
順序の何番目のものであるかを直接的に特定できる、あ
るいは、前記実行順序情報を用いて間接的に特定できる
コール情報を処理結果とするコール判断処理であって、
前記実行順序情報及び、別の下位プログラムにて実行さ
れたコール判断処理の処理結果である前記コール情報に
基づいて前記判断を行うコール判断処理を実行するよう
にし、 前記上位プログラムにて、コール対象の下位プログラム
を全て実行した後、前記コール判断処理における処理結
果に基づき、当該下位プログラムを正しい順序でコール
したか否かを判定する判定処理を実行するようにしたこ
とを特徴とする実行順序検査装置。
When a processing program for realizing a predetermined function is described as a set of a plurality of programs serving as execution units, a higher-level program that is a relatively higher-level program uses a relatively lower-level program. An execution order checking device for checking whether or not a lower program that is a program is called and executed in a proper order, wherein execution order information indicating a proper execution order of the lower program by the higher program is prepared. In the lower program, it is determined whether or not the call from the upper program has been made in a valid order, and if it is determined that the call has been made in a valid order, the order of the call in the execution order Or call information that can be specified indirectly using the execution order information as the processing result. A Lumpur determination process,
The execution order information and a call determination process for making the determination based on the call information that is a processing result of the call determination process performed by another lower-level program are executed. After executing all of the lower-order programs, a judgment process for judging whether or not the lower-order programs have been called in a correct order is executed based on the processing result in the call judgment process. apparatus.
【請求項2】請求項1に記載の実行順序検査装置におい
て、 前記コール情報は、前記上位プログラム及び前記下位プ
ログラムの間で共通に使用される一つのグローバル変数
に代入されることを特徴とする実行順序検査装置。
2. The execution order checking device according to claim 1, wherein the call information is substituted into one global variable commonly used between the upper program and the lower program. Execution order inspection device.
【請求項3】請求項2に記載の実行順序検査装置におい
て、 前記コール判断処理では、前記上位プログラムからのコ
ールが正当な順序でなされていないと判断した場合、前
記グローバル変数に代入された処理結果を更新しないこ
とを特徴とする実行順序検査装置。
3. The execution order checking device according to claim 2, wherein in the call determination processing, when it is determined that the calls from the upper-level program are not made in a proper order, the processing substituted into the global variable. An execution order inspection apparatus characterized in that a result is not updated.
【請求項4】請求項1〜3のいずれかに記載の実行順序
検査装置において、 前記コール判断処理では、前記上位プログラムからのコ
ールが正当な順序でなされていないと判断した場合、そ
の旨を示す情報を出力することを特徴とする実行順序検
査装置。
4. The execution order checking device according to claim 1, wherein in the call determining process, when it is determined that the calls from the upper-level program are not made in a proper order, the fact is notified. An execution order checking device for outputting information indicating the execution order.
【請求項5】請求項1〜4のいずれかに記載の実行順序
検査装置において、 前記上位プログラムによる前記コール対象の下位プログ
ラムが所定のイベントの単位で特定されることを前提と
して、 前記実行順序情報をイベント毎に用意しておき、 前記上位プログラムにて、検査対象とするイベントを特
定するイベント特定処理を実行し、 前記下位プログラムにおけるコール判断処理では、前記
イベント特定処理にて特定されたイベントに対応して用
意された前記実行順序情報に基づき、前記判断を行うこ
とを特徴とする実行順序検査装置。
5. The execution order checking device according to claim 1, wherein said lower order program to be called by said upper order program is specified in a predetermined event unit. Information is prepared for each event, and an event specifying process for specifying an event to be inspected is executed in the upper program, and in the call determining process in the lower program, the event specified in the event specifying process is performed. An execution order inspection device, wherein the determination is made based on the execution order information prepared in correspondence with (1).
【請求項6】請求項5に記載の実行順序検査装置におい
て、 前記判定処理では、前記イベント毎に、当該判定の結果
を出力することを特徴とする実行順序検査装置。
6. The execution order inspection apparatus according to claim 5, wherein, in the determination processing, a result of the determination is output for each event.
【請求項7】請求項1〜6のいずれかに記載の実行順序
検査装置において、 前記上位プログラム及び前記下位プログラムにて実行さ
れる各処理は、マクロ記述されて用意され、前記処理プ
ログラムにリンクされて実行されることを特徴とする実
行順序検査装置。
7. The execution order checking device according to claim 1, wherein each of the processes executed by the upper-level program and the lower-level program is prepared as a macro description, and is linked to the processing program. An execution order inspection apparatus characterized by being executed after being executed.
【請求項8】請求項1〜7のいずれかに記載の実行順序
検査装置で実行される前記各処理を実現するためのプロ
グラム。
8. A program for realizing each of the processes executed by the execution order checking device according to claim 1.
JP2001138732A 2001-05-09 2001-05-09 Execution order inspecting device and its program Pending JP2002333992A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001138732A JP2002333992A (en) 2001-05-09 2001-05-09 Execution order inspecting device and its program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001138732A JP2002333992A (en) 2001-05-09 2001-05-09 Execution order inspecting device and its program

Publications (1)

Publication Number Publication Date
JP2002333992A true JP2002333992A (en) 2002-11-22

Family

ID=18985624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001138732A Pending JP2002333992A (en) 2001-05-09 2001-05-09 Execution order inspecting device and its program

Country Status (1)

Country Link
JP (1) JP2002333992A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008077400A (en) * 2006-09-21 2008-04-03 Kddi Corp Program-obfuscating method and program
JP2008090668A (en) * 2006-10-03 2008-04-17 Kddi Corp Program obfuscation method and program
WO2008056419A1 (en) * 2006-11-09 2008-05-15 Panasonic Corporation Software verifying device, and api interface evaluating method
JP2008262510A (en) * 2007-04-13 2008-10-30 Fuji Xerox Co Ltd Electronic circuit device, failure diagnostic device, failure diagnostic system, and failure diagnostic program
JP2012033017A (en) * 2010-07-30 2012-02-16 Fujitsu Marketing Ltd Rule inspection device, rule inspection method and rule inspection program
JP2012221174A (en) * 2011-04-07 2012-11-12 Fujitsu Ltd Code conversion method, device and program, and method for responding to request residual time

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008077400A (en) * 2006-09-21 2008-04-03 Kddi Corp Program-obfuscating method and program
JP2008090668A (en) * 2006-10-03 2008-04-17 Kddi Corp Program obfuscation method and program
WO2008056419A1 (en) * 2006-11-09 2008-05-15 Panasonic Corporation Software verifying device, and api interface evaluating method
JP2008262510A (en) * 2007-04-13 2008-10-30 Fuji Xerox Co Ltd Electronic circuit device, failure diagnostic device, failure diagnostic system, and failure diagnostic program
JP2012033017A (en) * 2010-07-30 2012-02-16 Fujitsu Marketing Ltd Rule inspection device, rule inspection method and rule inspection program
JP2012221174A (en) * 2011-04-07 2012-11-12 Fujitsu Ltd Code conversion method, device and program, and method for responding to request residual time
US9026988B2 (en) 2011-04-07 2015-05-05 Fujitsu Limited Code conversion method, apparatus, storage medium and request remaining time response method

Similar Documents

Publication Publication Date Title
US6173440B1 (en) Method and apparatus for debugging, verifying and validating computer software
EP2641179B1 (en) Method and apparatus for automatic diagnosis of software failures
US5901073A (en) Method for detecting errors in models through restriction
CN111324540B (en) Interface testing method and device
KR101044544B1 (en) Method for monitoring the execution of a program in a micro-computer
CN107562419B (en) Software development support method and system
US20060123279A1 (en) Apparatus, system, and method for identifying fixed memory address errors in source code at build time
JP5976209B2 (en) Program analysis apparatus, program analysis method, and program analysis program
JPH0748182B2 (en) Program error detection method
JP2002333992A (en) Execution order inspecting device and its program
CN112099826B (en) Parameter upgrading control method, controller, electronic equipment and excavator
JP6559376B2 (en) Test case selection device and test case selection program
JP4886404B2 (en) Source code modification prioritization system and prioritization method
WO2018154657A1 (en) Equivalence checking device and equivalence checking program
CN111722863A (en) Method and device for updating wind control model
JP2013254371A (en) Software development support device, software development support method and software development support program
US7146600B2 (en) Method and apparatus for deriving multiple test source files from one source file
US20060248408A1 (en) Method for determing the processing sequence of function blocks of an automated system and corresponding automated system
US20100174520A1 (en) Simulator
JPH06236295A (en) Program transplant supporting system
US6968515B2 (en) Semiconductor circuit designing apparatus and a semiconductor circuit designing method in which the number of steps in a circuit design and a layout design is reduced
US11241962B2 (en) Evaluation apparatus for display arbitration control and generation apparatus for rule definition file
JP4397393B2 (en) Method and apparatus for modifying modular structured messages
JPH11224278A (en) Mask pattern checking method
JP3104586B2 (en) Design support method