JPS63211031A - Task state monitoring system - Google Patents
Task state monitoring systemInfo
- Publication number
- JPS63211031A JPS63211031A JP62042523A JP4252387A JPS63211031A JP S63211031 A JPS63211031 A JP S63211031A JP 62042523 A JP62042523 A JP 62042523A JP 4252387 A JP4252387 A JP 4252387A JP S63211031 A JPS63211031 A JP S63211031A
- Authority
- JP
- Japan
- Prior art keywords
- task
- program
- debugging
- task monitor
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012544 monitoring process Methods 0.000 title claims description 28
- 238000003860 storage Methods 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims description 18
- 238000000034 method Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 11
- 238000003672 processing method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000001994 activation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、複数のタスクを並行処理する計算機システム
において、各タスクの動作状況やシステムプログラムの
動作状況を監視する方式に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a method for monitoring the operating status of each task and the operating status of a system program in a computer system that processes a plurality of tasks in parallel.
従来、複数のタスクを並行処理する計算機システムにお
いて、システムプログラムのデバッグあるいはタスク処
理プログラムのデバッグを行なうのにインサーキットエ
ン晶レータが用いられていた。この方法では、複数のタ
スクの動作が絡みあっており、割込みによってタスクの
状態が遷移する場合、どのタスクの処理がどのような順
序で処理されているのかを明確にトレースすることが簡
単にできず、デバッグが困離であった。Conventionally, in a computer system that processes a plurality of tasks in parallel, an in-circuit crystallizer has been used to debug a system program or a task processing program. With this method, when the operations of multiple tasks are intertwined and the state of a task changes due to an interrupt, it is easy to clearly trace which tasks are being processed and in what order. However, debugging was difficult.
また、特開昭60’ −11948号公報に示されるよ
うに、システムプログラム内にタスク識別コード。Further, as shown in Japanese Patent Laid-Open No. 60'-11948, a task identification code is included in the system program.
タスク状態、タスク状態遷移の原因9時刻を出力する機
能と、前記の出力情報をタスク別VC!1埋してコンノ
ー〃に表示する機能を備え、タスク状態遷移を監視する
方法も知られている。Function to output task status, cause of task status transition 9 time, and VC for each task with the above output information! There is also a known method for monitoring task state transitions, which has a function of displaying the filled-in data on a screen.
上記従来技術は、タスク監視処理プログラムを常にシス
テムプログラム内に待っているために。In the above conventional technology, the task monitoring processing program is always waiting in the system program.
システムプログラム容量が太き(なること、デバッグ目
的に応じてタスク監視データの収集項目Q変更、収集場
所の選択を容易に行なえないこと、および定常運転時に
も、デバッグ時と同様なオーバヘッドがかかることにつ
いては配慮されておらず、使い勝手の点で問題があった
。The system program capacity is large, it is not easy to change the collection items Q of task monitoring data or select the collection location depending on the debugging purpose, and the same overhead is incurred during normal operation as during debugging. There was no consideration given to this, and there were problems in terms of usability.
本発明の目的は、上記従来技術における問題点を解消す
るもので、デバッグの目的に応じた任意のタスク監視プ
ログラムを、デバッグ運転時にシステムに着装できるよ
うにして、定常運転時のオーバヘッドの増加が少なく、
効率の良いデバッグを行なえるタスク監視方式を提供す
ることにある。An object of the present invention is to solve the above-mentioned problems in the prior art, and to make it possible to install any task monitoring program suitable for the purpose of debugging into the system during debugging, thereby reducing the increase in overhead during steady operation. less,
The objective is to provide a task monitoring method that allows efficient debugging.
〔問題点を解決するための手段〕
上記目的は、システムプログラムの作成時に、ソフト割
込(システムで標準サポートする機能をアクセスするた
めに使用する割込)の受付部、八−ド割込の受付部、タ
スク切換処理部ほかなタスク監視データの収集箇所とし
て予め決めておき、当該収集箇所をひとつのテーブルで
一括管理し、デバッグ運転時に任意のタスク監視プログ
ラムをディスク装置からメモリヘロードし、当該収集箇
所に、タスク監視プログラムの呼び出し命令を置くよう
にすることによりて、達成される。[Means for resolving the problem] The above purpose is to create a system program in which the reception section for soft interrupts (interrupts used to access functions that are standardly supported by the system) and the The reception section, task switching processing section, and other task monitoring data collection points are determined in advance, and the collection points are collectively managed in one table, and any task monitoring program is loaded from the disk device to the memory during debugging. This is achieved by placing a call command for the task monitoring program at the collection location.
システムプログラム内のタスク監視データの収集予定箇
所には、収集箇所の識別コードを記憶するエリアと9分
岐命令を置き、定常運転時には呑該分岐命令を実行し、
タスク監視処理をスキップするようにする。それによっ
て、定常運転時のオーバヘッドの増加を最小にできる。An area for storing the identification code of the collection point and 9 branch instructions are placed at the scheduled collection point of task monitoring data in the system program, and the branch instruction is executed during steady operation.
Skip task monitoring processing. Thereby, the increase in overhead during steady operation can be minimized.
一方、デバッグ運転時には、タスク監視データの収集予
定箇所に置いである分岐命令をタスク乱視プログラムの
呼び出し命令に置き換える。既に当該収集箇所には、収
集箇所の識別コードエリアがあり、これをタスク監視プ
ログラムの呼び出し命令(7) ハラメータとする。そ
れによりて、タスク監視プログラムの受付口を一箇所に
できるので、タスク監視プログラムの構造および当該プ
ログラム呼び出し命令の置換処理が簡単になる。On the other hand, during debugging, the branch instruction placed at the scheduled collection location of task monitoring data is replaced with a call instruction for the task astigmatism program. The collection location already has a collection location identification code area, and this is used as the task monitoring program call command (7) Harameter. Thereby, the reception port for the task monitoring program can be placed in one place, which simplifies the structure of the task monitoring program and the process of replacing the program call command.
以下、本発明の一実施例を図面により説明する。 An embodiment of the present invention will be described below with reference to the drawings.
第2図は、本発明の一実施例における計算機システムの
全体構成図であって、1は中央処理装態(CPU )、
2は中央処理装置内の記憶メモリ、5はコンソール入出
力装置、6はディスク装置、7はプリンタ装置である。FIG. 2 is an overall configuration diagram of a computer system according to an embodiment of the present invention, in which 1 is a central processing unit (CPU);
2 is a storage memory within the central processing unit, 5 is a console input/output device, 6 is a disk device, and 7 is a printer device.
第5図は、記憶メモリ2内に格納されるソフトウェアで
あって、5はシステムプログラム、4!’!。FIG. 5 shows software stored in the storage memory 2, in which 5 is a system program, 4! '! .
タスク処理プログラム群である。A group of task processing programs.
複数タスクの並列処理を制御するシステムプログラム5
は、割込受付部511割込処理部55.タスクスケジ為
−ラ52.タスク監視データの収集箇所を格納するアド
レステープA154.アドレステーブル54の先頭番地
を読み出す機能処@55から構成され℃いる。System program 5 that controls parallel processing of multiple tasks
The interrupt receiving unit 511 and the interrupt processing unit 55. Task scheduling 52. Address tape A154 for storing collection points of task monitoring data. It consists of a functional process @55 that reads the first address of the address table 54.
以上のようvcll成された計算機システムの動作につ
い℃説明する。The operation of the computer system constructed using VCL as described above will be explained below.
システムプログラム5の動作は、ソフト割込あるいはハ
ード割込が発生した時から始まる。The operation of the system program 5 begins when a soft or hard interrupt occurs.
タスク41が実行中に割込が発生すると、割込受付s5
1は割込発生の要因を調べ、それらに対応する割込処理
部55へ分岐する。When an interrupt occurs while task 41 is being executed, interrupt reception s5
1 examines the causes of the interrupt occurrence and branches to the corresponding interrupt processing section 55.
割込処理部55は、タスクからの要求に従りて、タスク
の起動、タスクの終了、事象待ち、事象発生通知、ファ
イルのアクセスなどを行なう。これらの割込処理におい
て、タスクの状態が変化する。The interrupt processing unit 55 performs tasks such as activating a task, terminating a task, waiting for an event, notifying the occurrence of an event, and accessing a file, in accordance with a request from a task. In these interrupt processes, the state of the task changes.
タスクの起動処理では、処理対象タスクがドーマント状
態から実行可能状態となる。タスクの終了処理では、自
タスクが実行中状態からドーマント状態となる。事象待
ち処理では、自タスクが実行中状態から待ち状態となる
。事象発生通知処理では、処理対象タスクが待ち状態か
ら実行可能状態となる。In the task activation process, the task to be processed changes from a dormant state to an executable state. In task termination processing, the self-task changes from the running state to the dormant state. In the event wait process, the invoking task changes from the executing state to the waiting state. In the event occurrence notification process, the task to be processed changes from a waiting state to an executable state.
割込処理55が終了したならば、タスク監視デ−タ52
へ分岐する。When the interrupt processing 55 is completed, the task monitoring data 52
Branch to.
タスクスケジ1−ラ52は、スクジ為−リングアルゴリ
ズムに従って、実行中状態および実行可能・状態タスク
の中から任意の一つを選択し、そのタスクを実行中状態
とする。前実行中状態タスクと新実行中状態タスクが異
なる時、タスクの切換も埋が行なわれる。タスクスケジ
為−ル処理が終ると、選択された新実行中状悪タスクの
実行が始まる。The task scheduler 1-ra 52 selects any one of the running and executable tasks according to the scheduler algorithm, and places the selected task in the running state. When the previous running state task and the new running state task are different, task switching is also performed. When the task scheduling process is completed, execution of the selected new currently executing task begins.
タスク群4の処理が実行中に、ソフト割込あるいはハー
ド割込が発生すると、再びシステムプログラム5の動作
が繰返される。If a soft interrupt or a hard interrupt occurs while the processing of the task group 4 is being executed, the operation of the system program 5 is repeated again.
デバッグ運転時には、割込受付部51にて、実行中状態
のタスク番号9罰込の種別と要因1割込発生時刻などの
データを収集し、タスクスケジ島−ラ521Cて、新た
に実行中状態に選択されたタスクのタスク番号、その時
刻などのデータを収集し、これらの情報をタスク別に整
理して、−収集した辱刻順に並べて表示することによっ
て、タスクの動作状況、システムプログラムの動作状況
を明確にすることができる。During debugging, the interrupt reception unit 51 collects data such as the type of punishment and factor 1 interrupt occurrence time of task number 9 in the running state, and the task scheduler 521C returns the task to the running state. By collecting data such as the task number and time of the selected task, organizing this information by task, and displaying it in the order of collected time, you can check the operating status of the task and the operating status of the system program. can be made clear.
第4図に定常運転時の処理方法を示す。Figure 4 shows the processing method during steady operation.
割込受付部61.タスクスクジ轟−252内にメスり監
視データの収集箇所511 、521を決めておき、そ
のアドレスをアドレステーブル54に格納しておく。5
11,521はタスク監視処理をスキップする分岐命令
(JMP命令)であり、512,522は当該収集箇所
の識別コードエリアである。Interrupt reception unit 61. The collection points 511 and 521 of the cutting monitoring data are determined in the task squeegee 252, and the addresses thereof are stored in the address table 54. 5
11, 521 is a branch instruction (JMP instruction) that skips the task monitoring process, and 512, 522 is an identification code area of the collection location.
第1図にデバッグ運転時の処理方法を示す。Figure 1 shows the processing method during debugging.
タスク監視プログラム41は初期化プログラム411と
タスク監視データ収集プログラム412とで構成されて
いる。デバッグ運転時には、タスク警視プログラム41
をタスクとして、ディスク装置6から記憶メモリ2ヘロ
ードし、その初期化プログラム411を実行する。The task monitoring program 41 includes an initialization program 411 and a task monitoring data collection program 412. During debugging, task supervisory program 41
is loaded from the disk device 6 to the storage memory 2 as a task, and its initialization program 411 is executed.
第6図に初期化プログラム411の詳細、第5@<7ド
レステーブル54の先頭番地を読み出す機能処理55を
示す。FIG. 6 shows details of the initialization program 411, and a functional process 55 for reading out the first address of the 5th@<7 address table 54.
初期化プログラム411は、機能処理55を呼びぬして
、アドレステーブル54の先頭番地を読み出もアドレス
テーブル54からタスク監視データの収集箇所を知り、
その1iWr511,4521に置かれている分岐命令
(JMP命令)を、タスク監視データ収集プログラム4
12を呼び出すためのINT命令に置き換える。以上に
よって、システムプログラム51.52とタスク監視デ
ータ収集プログラム412が結合きれたことになり、以
後、タスク監視処理が行なわれる。The initialization program 411 calls the function processing 55, reads the first address of the address table 54, learns the collection point of task monitoring data from the address table 54, and
The branch instruction (JMP instruction) placed in 1iWr511, 4521 is transferred to the task monitoring data collection program
Replace it with an INT instruction to call 12. With the above, the system programs 51 and 52 and the task monitoring data collection program 412 have been combined, and task monitoring processing will be performed from now on.
タスク監視データ収集プログラム412は、パラメータ
として渡されるタスク監視データの収集箇所の識別コー
ドエリア512,522から、当該収集箇所の職別コー
ドを読み取り、当該収集箇所に適したタスク監視データ
を収集する。そして、識別1−ドエリア分だけ戻り番地
を更新してリターンする。The task monitoring data collection program 412 reads the occupation code of the collection location from the identification code area 512, 522 of the task monitoring data collection location passed as a parameter, and collects task monitoring data suitable for the collection location. Then, the return address is updated by the number of identification areas and the process returns.
41のタスク監視プログラムは、システムファイ。41 task monitoring program is System File.
ルとは別のファイルとしであるので、デノ(ラグ目的に
応じて任意のタスク監視プログラムを実行させることが
できる。Since it is a separate file from the deno file, you can run any task monitoring program depending on the purpose.
例えば、■収集したタスク監視データを直ちにプリンタ
に出力するデバッグ、■収集したタスク監視データを通
信回線を使って、別の計算機へ送信するデバッグ、■特
定の収集箇所で、特定のデータを収集するデバッグなど
を容易に行なえる。For example, ■ Debugging that immediately outputs the collected task monitoring data to a printer, ■ Debugging that sends the collected task monitoring data to another computer using a communication line, ■ Collecting specific data at a specific collection point. Debugging etc. can be done easily.
本発明によれば、デバッグの目的に応じた任意のタスク
監視プログラムをデバッグ運転時にシステムに着装でき
るので、柔軟性に富んだデバッグが行なえ、デバッグ工
数の削減に大きな効果がおる。また、定常運転時にはタ
スク監視プロゲラんは動作せず、また記憶メ4TJ内に
も非常駐であるので、定常運転時のオーバーヘッドの増
加が少なく、システムプログラムの容量の増加がないと
いう効果がある。According to the present invention, any task monitoring program suitable for the purpose of debugging can be installed in the system during debugging operation, so debugging can be performed with great flexibility, and the number of debugging steps can be greatly reduced. Furthermore, during steady operation, the task monitoring progeran does not operate and is non-resident in the memory 4TJ, so there is an effect that there is little increase in overhead during steady operation, and there is no increase in system program capacity.
l!1図は本発明の一実施例であるシステムのデバッグ
運転時の処理方法、第2図は計算機システムの全体構成
図、第5図は記憶メモリ内に格納されているソフトウェ
アの構成図、纂4図はシステムの定常運転時の処理方法
、第5図はアドレステーブルの先頭アドレスを睨み出す
機能処理図、第6図はタスク監視処理プログラムの初期
化処理方法を示した図である。
1・・・中央処理装置
2・・・記憶メモリ
5・・・システムプログラム
4・・・タスク
51・・・割込受付部
52・・・タスクスケジューラ
54・・・アドレステーブル
55・・・アドレステーブル54の先頭アドレスを読み
出す機能処理
41・・・タスク監視プログラム
$7@
第 22
第 3 図
第4図
85 図
第6図l! Figure 1 shows a processing method during debugging of a system according to an embodiment of the present invention, Figure 2 shows the overall configuration of the computer system, and Figure 5 shows the configuration of software stored in the storage memory. The figure shows a processing method during steady operation of the system, FIG. 5 is a functional processing diagram for checking the first address of the address table, and FIG. 6 is a diagram showing an initialization processing method for a task monitoring processing program. 1...Central processing unit 2...Storage memory 5...System program 4...Task 51...Interrupt receiving unit 52...Task scheduler 54...Address table 55...Address table Functional processing 41 to read the start address of 54...Task monitoring program $7 @ No. 22 No. 3 Fig. 4 Fig. 85 Fig. 6
Claims (1)
て、複数タスクの並行処理を制御するシステムプログラ
ムとタスク監視プログラムを別ファイルとして構成し、
システムプログラム内のタスク監視データの収集予定箇
所に、収集箇所の識別コードエリアと分岐命令を置き、
かつそのアドレスを記憶するアドレステーブルを備え、
システムのデバッグ運転時にタスク状態監視プログラム
をディスク装置から記憶メモリへロードし、アドレステ
ーブルの示すアドレスの分岐命令を、タスク監視プログ
ラムを呼び出す命令に置き換えることによって任意のタ
スク状態監視プログラムを、デバッグ運転時にシステム
プログラムと結合できることを特徴とするタスク状態監
視方式。1. In a computer system that processes multiple tasks in parallel, configure the system program that controls the parallel processing of multiple tasks and the task monitoring program as separate files,
Place the collection point identification code area and branch instruction in the place where task monitoring data is scheduled to be collected in the system program.
and has an address table for storing the address,
During system debugging, the task status monitoring program is loaded from the disk device to the storage memory, and by replacing the branch instruction at the address indicated in the address table with an instruction that calls the task monitoring program, any task status monitoring program can be executed during debugging. A task status monitoring method that is characterized by its ability to be combined with system programs.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62042523A JPS63211031A (en) | 1987-02-27 | 1987-02-27 | Task state monitoring system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62042523A JPS63211031A (en) | 1987-02-27 | 1987-02-27 | Task state monitoring system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63211031A true JPS63211031A (en) | 1988-09-01 |
Family
ID=12638442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62042523A Pending JPS63211031A (en) | 1987-02-27 | 1987-02-27 | Task state monitoring system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63211031A (en) |
-
1987
- 1987-02-27 JP JP62042523A patent/JPS63211031A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5257372A (en) | Methods for efficient distribution of parallel tasks to slave processes in a multiprocessing system | |
US5274813A (en) | Operation system having a migration function which moves saved data associated with an interrupted process to a different save area | |
US5958003A (en) | Method and computer system for improving the response time of a computer system to a user request | |
EP0132381B1 (en) | Method of synchronizing the sequence by which a variety of randomly called unrelated activities are executed in a digital processor | |
CN104461876A (en) | Concurrent program reappearance debugging method based on snapshot sequence running | |
JPS63211031A (en) | Task state monitoring system | |
CN110888729A (en) | Asynchronous multitask processing system based on task event | |
JPH0245838A (en) | Program execution condition monitoring method | |
JPH0668725B2 (en) | Device for responding to interrupt condition in data processing system and method for responding to asynchronous interrupt condition | |
JP2579008B2 (en) | Time-division multitasking execution device | |
JPH0754467B2 (en) | Data processing device | |
JPS63201756A (en) | File replacing method for on-line system | |
JP2585905B2 (en) | Multitask execution device | |
JPS6346861B2 (en) | ||
JPH0895803A (en) | Task scheduling method | |
Shafritz et al. | Multi-level programming for a real-time system | |
JPS6232497B2 (en) | ||
KR100297744B1 (en) | System and method for processing thread exception | |
JPS638947A (en) | Program debug supporting system | |
CN114428673A (en) | Method for concurrently applying resource state | |
JPH0756633B2 (en) | Task switching method | |
JPS6223895B2 (en) | ||
JPH05241890A (en) | Data trace system | |
JP3022848B2 (en) | Multitask task switching method and real-time operating system | |
JPH06149593A (en) | Multitask executive device |