JPH02271435A - タスクトレース装置 - Google Patents
タスクトレース装置Info
- Publication number
- JPH02271435A JPH02271435A JP1093709A JP9370989A JPH02271435A JP H02271435 A JPH02271435 A JP H02271435A JP 1093709 A JP1093709 A JP 1093709A JP 9370989 A JP9370989 A JP 9370989A JP H02271435 A JPH02271435 A JP H02271435A
- Authority
- JP
- Japan
- Prior art keywords
- task
- information
- system call
- switch
- interrupt
- 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
- 238000000034 method Methods 0.000 claims description 35
- 238000005070 sampling Methods 0.000 abstract 4
- 238000010586 diagram Methods 0.000 description 11
- 238000007726 management method Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 208000003028 Stuttering Diseases 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000276 sedentary effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔座業上の利用分野〕
この発明は、マルチタスクで実行されているシステムに
おいて、タスクの実行履歴を記録するタスクトレース装
置に関するものである。
おいて、タスクの実行履歴を記録するタスクトレース装
置に関するものである。
第4図は、例えば「解析マルチタスク」、(lI8和6
3.1.20 )、CQ出版社、PI3に示されたマル
チタスク・オペレーティング・システムの基本構成図で
ある。(1)はアプリケーションタスク、(2)はO8
の処理を行うスーパバイザ、(3)はO8の中でメモリ
管理を行う部分、(4)はO8の中でデータ管理を行う
部分、(5)はO8の中でプロセス管理を行う部分、(
6)は入出力管理を行う部分でめり、(7)紘この(2
)〜(6)を含みO81特にカーネルと呼はれている部
分でるる。
3.1.20 )、CQ出版社、PI3に示されたマル
チタスク・オペレーティング・システムの基本構成図で
ある。(1)はアプリケーションタスク、(2)はO8
の処理を行うスーパバイザ、(3)はO8の中でメモリ
管理を行う部分、(4)はO8の中でデータ管理を行う
部分、(5)はO8の中でプロセス管理を行う部分、(
6)は入出力管理を行う部分でめり、(7)紘この(2
)〜(6)を含みO81特にカーネルと呼はれている部
分でるる。
第5図は、「解析マルチタスク」、(昭和63゜1.2
0)、CQ出版社、P48に示された図であり、上記オ
ペレーティングシステムの中でも特にプロセス管理ルー
チンについて説明したブロック図である。(2)は外部
からの割り込みやプログラムからのシステムコールを受
は敗るスーパバイザの部分、(6)はプロセスをf理す
るルーチンでるる。
0)、CQ出版社、P48に示された図であり、上記オ
ペレーティングシステムの中でも特にプロセス管理ルー
チンについて説明したブロック図である。(2)は外部
からの割り込みやプログラムからのシステムコールを受
は敗るスーパバイザの部分、(6)はプロセスをf理す
るルーチンでるる。
(ロ)は入出力装置との同期を取る同期制御機構、曹は
各タスクの優先順位に従ってタスクの待ち行列を作るプ
ロセススケジューラ、Qlはタスクの待ち行列のリスト
であるプロセスリスト、a◆は待ちタスクの中で最も優
先順位高いタスクにCPH0央行権を与えるプロセスス
イッチャである。なお、この装置のH/Wは第6図に示
す様な構成をしている。
各タスクの優先順位に従ってタスクの待ち行列を作るプ
ロセススケジューラ、Qlはタスクの待ち行列のリスト
であるプロセスリスト、a◆は待ちタスクの中で最も優
先順位高いタスクにCPH0央行権を与えるプロセスス
イッチャである。なお、この装置のH/Wは第6図に示
す様な構成をしている。
次にタスクスイッチの動作について説明する〇タスクス
イッチの安因は、3柚類ある。第一に、外部割り込みの
発生でめる0この外部割り込みには、装置外部からの割
り込みと時間監視用タイマ割り込み等のCPU外部から
の割り込みが含まれる0第二は、CPUと動作速度の異
なる周辺vt111゜例えば、FD(70ツビデイスク
)、プリンタ、MT(磁気テープ)、HD(ハードディ
スク)等の装置と同期をとる為のI10同期劃り込み、
最後はシステムコールの発行でめる。この3糧煩のうら
1つが起こるとタスクスイッチが起こる可能性がある。
イッチの安因は、3柚類ある。第一に、外部割り込みの
発生でめる0この外部割り込みには、装置外部からの割
り込みと時間監視用タイマ割り込み等のCPU外部から
の割り込みが含まれる0第二は、CPUと動作速度の異
なる周辺vt111゜例えば、FD(70ツビデイスク
)、プリンタ、MT(磁気テープ)、HD(ハードディ
スク)等の装置と同期をとる為のI10同期劃り込み、
最後はシステムコールの発行でめる。この3糧煩のうら
1つが起こるとタスクスイッチが起こる可能性がある。
この3糧煩のタスクスイッチの例を第1図の(a) 、
(b) 、 (c)に示す。まず、(、)の図は、外
部割夛込み発生の場合である。タスクAが実行中に割り
込みが入シ、今までWAIT中でのったタスクBがその
割り込みによって実行可能状mKなる。
(b) 、 (c)に示す。まず、(、)の図は、外
部割夛込み発生の場合である。タスクAが実行中に割り
込みが入シ、今までWAIT中でのったタスクBがその
割り込みによって実行可能状mKなる。
そして、タスクAとタスクBの両方共、実行可能状態で
あるが、タスクBの方が優先順位の高いと仮定するとタ
スクBKCPU権が与えられ、タスクAからタスクBへ
のタスクスイッチが起こる。
あるが、タスクBの方が優先順位の高いと仮定するとタ
スクBKCPU権が与えられ、タスクAからタスクBへ
のタスクスイッチが起こる。
(b)の図は、工10同期割り込み発生の場合である。
タスクBが実行中に周辺VRa(デバイス〕に処理を要
求した。すると、タスクBFiデバイスが処理を終了す
る迄WAITA態に入る。タスクBがWA工工状状態な
るとタスクBよシも優先順位が低く実行可能状態にあっ
たタスクAにCPUIIが移る。そして、デバイスが処
理を終え、I10重切削り込みが発生する。この同期1
11J D込みによってWA工工状状態のり九タスクB
が実行可能状態にl夛、タスクAからタスクBへのタス
クスイッチが余生する。
求した。すると、タスクBFiデバイスが処理を終了す
る迄WAITA態に入る。タスクBがWA工工状状態な
るとタスクBよシも優先順位が低く実行可能状態にあっ
たタスクAにCPUIIが移る。そして、デバイスが処
理を終え、I10重切削り込みが発生する。この同期1
11J D込みによってWA工工状状態のり九タスクB
が実行可能状態にl夛、タスクAからタスクBへのタス
クスイッチが余生する。
(C)の図は、システムコール発行の場合でるる。今タ
スクAが実行中、タスクBがWAIT中でめったとする
。タスクAがタスクBのWA工工状状態実行可能状態に
するシステムコールを発行すると、タスクBの方がタス
クAよりも優先順位の高いとすると仮定すると、タスク
AからタスクBへのタスクスイッチが起こる。
スクAが実行中、タスクBがWAIT中でめったとする
。タスクAがタスクBのWA工工状状態実行可能状態に
するシステムコールを発行すると、タスクBの方がタス
クAよりも優先順位の高いとすると仮定すると、タスク
AからタスクBへのタスクスイッチが起こる。
I/ O1ifJ期割り込みでタスクスイッチが発生し
た時の動作を第8図に従って説明する。I10重切削り
込みが発生した(ステップ1、以下BTと略す)0その
発生が同期制御機構Ql)を通してスーパバイザ(2)
トプロセススケジューラo4に知らされる(Sr2)
、プロセススケジューラ(6)ではI / O処理を待
っていたタスクを実行可能状態とし、プロセスリスト0
に登録する(Sr1)。その後、スーパバイザ(2)で
は新しいタスクにスイッチする為にプロセススイッチャ
Q41に知らせる(8T4) oプロセススイッチャ◆
はプロセスリストa4からスイッチを行うタスクの情報
を取ってくる(Sr5)。そして、その筒権をCPHの
レジスタ等にセットする(Sr6) o新しいタスクの
情報がセットされることによシタスフスイッチが行われ
る。システムコールの発行、IC込みの発生でタスクス
イッチが起きる時の動作を第9図に従って説明する。シ
ステムコールの発行や割り込みの発生等のタスクスイッ
チが起こる原因が発生した(8Tl)。その発行、発生
がスーパバイザ(2)に知らされるC8T2) 、その
後、スーパバイザ(2)では新しいタスクにスイッチす
る為にプロセススイッチャα4に知らせるC3T3)
oプロセススイッチャ4はプロセスリス)(14からス
イッチを行うタスクの情報を取ってくる1T4)。そし
て、その情報をCPUのレジスタ等にセットする(S’
l’5.)以上がタスクスイッチ時の前作である。
た時の動作を第8図に従って説明する。I10重切削り
込みが発生した(ステップ1、以下BTと略す)0その
発生が同期制御機構Ql)を通してスーパバイザ(2)
トプロセススケジューラo4に知らされる(Sr2)
、プロセススケジューラ(6)ではI / O処理を待
っていたタスクを実行可能状態とし、プロセスリスト0
に登録する(Sr1)。その後、スーパバイザ(2)で
は新しいタスクにスイッチする為にプロセススイッチャ
Q41に知らせる(8T4) oプロセススイッチャ◆
はプロセスリストa4からスイッチを行うタスクの情報
を取ってくる(Sr5)。そして、その筒権をCPHの
レジスタ等にセットする(Sr6) o新しいタスクの
情報がセットされることによシタスフスイッチが行われ
る。システムコールの発行、IC込みの発生でタスクス
イッチが起きる時の動作を第9図に従って説明する。シ
ステムコールの発行や割り込みの発生等のタスクスイッ
チが起こる原因が発生した(8Tl)。その発行、発生
がスーパバイザ(2)に知らされるC8T2) 、その
後、スーパバイザ(2)では新しいタスクにスイッチす
る為にプロセススイッチャα4に知らせるC3T3)
oプロセススイッチャ4はプロセスリス)(14からス
イッチを行うタスクの情報を取ってくる1T4)。そし
て、その情報をCPUのレジスタ等にセットする(S’
l’5.)以上がタスクスイッチ時の前作である。
このようなタスクスイッチを繰シ返しながら前いている
マルチタスクのソフト9エアを開発する場合、タスクス
イッチの履歴を記録するタスクトレースが使用される場
合がある。次にこのタスクトレースの動作について説明
する。タスクトレースハ、プロセス管理ルーチンのプロ
セススイッチャの中でタスクスイッチの記録が取られて
いる。
マルチタスクのソフト9エアを開発する場合、タスクス
イッチの履歴を記録するタスクトレースが使用される場
合がある。次にこのタスクトレースの動作について説明
する。タスクトレースハ、プロセス管理ルーチンのプロ
セススイッチャの中でタスクスイッチの記録が取られて
いる。
ここで取られている記録とはプロセススイッチャが収る
ことが可能なt′ft@iでるる。この情報は、どのタ
スクからどのタスクへスイッチが起こったというの情報
だけでるる。このタスクトレースの動作を第10図に従
い説明する。CRTなどのオペレータインタフェース装
置からタスクトレースに起動がかかる(STI)。プロ
セススイッチャにタスクトレースを収るということを知
らせる(ST2)。タスクスイッチが発生するとプロセ
ススイッチャがどのタスクからどのタスクへスイッチが
行われたかという情報を採取する(ST3)。採取した
情報をトレース用バッファに7Iamに蓄える(’5T
Y)。オペレータインタフェース装置tl−ラドレース
用バッファをCRT等装置に出力するように袂求r出す
(ST5 )。トレース用バッファの内容kCRTに表
示するrsT6) oン7トクエア表作者はこの出力さ
れた情報を基に自分が設計した通りにタスクスイッチが
行われているかNFdし、ソフトウェアの開発を進める
。
ことが可能なt′ft@iでるる。この情報は、どのタ
スクからどのタスクへスイッチが起こったというの情報
だけでるる。このタスクトレースの動作を第10図に従
い説明する。CRTなどのオペレータインタフェース装
置からタスクトレースに起動がかかる(STI)。プロ
セススイッチャにタスクトレースを収るということを知
らせる(ST2)。タスクスイッチが発生するとプロセ
ススイッチャがどのタスクからどのタスクへスイッチが
行われたかという情報を採取する(ST3)。採取した
情報をトレース用バッファに7Iamに蓄える(’5T
Y)。オペレータインタフェース装置tl−ラドレース
用バッファをCRT等装置に出力するように袂求r出す
(ST5 )。トレース用バッファの内容kCRTに表
示するrsT6) oン7トクエア表作者はこの出力さ
れた情報を基に自分が設計した通りにタスクスイッチが
行われているかNFdし、ソフトウェアの開発を進める
。
従来のタスクトレースs*h以上のように構成されてい
るので、どのタスクからどのタスクヘタスフスイッチが
起こったかというタスクの実行履歴(スイッチのHa)
はトレースとして残るが、どのタスクがどの原因で実行
が止められたのか、また、何が原因で再び起動させられ
たのかがわからなかった。この原因が分からないために
思ってもみなかったタスクスイッチの原因を発見するの
時間がかかり、マルチタスクで動いているシステムの開
発に時間がかかるという課題がめった0この発明は上記
のような課題を解消するためになされたもので、タスク
スイッチの原因となる割り込み、システムコールの発行
履歴を採取することが出来るタスクトレース装置を得る
ことを目的とする。
るので、どのタスクからどのタスクヘタスフスイッチが
起こったかというタスクの実行履歴(スイッチのHa)
はトレースとして残るが、どのタスクがどの原因で実行
が止められたのか、また、何が原因で再び起動させられ
たのかがわからなかった。この原因が分からないために
思ってもみなかったタスクスイッチの原因を発見するの
時間がかかり、マルチタスクで動いているシステムの開
発に時間がかかるという課題がめった0この発明は上記
のような課題を解消するためになされたもので、タスク
スイッチの原因となる割り込み、システムコールの発行
履歴を採取することが出来るタスクトレース装置を得る
ことを目的とする。
タスクの実行制御を行うオペレーティングシステムを持
つ装置において、タスクスイッチの原因となる割少込み
の発生原因等のr ′1iUJ込みfPI報」やシステ
ムコール発行時のシステムコール−II8等の「システ
ムコール情報」を格納する手段、蓄えるテーブルを各タ
スク毎に持ち、テーブルに割り込み発生時、システムコ
ールの発行時に上記情報を前記テーブルに格納する手段
、タスクの実行履歴を記録するタスクトレースが起動さ
れると、「タスクスイッチ情報」と共に前記格納してい
た「割り込み発生情報」「システムコール発行情報」を
出力する手段を設けたものである。
つ装置において、タスクスイッチの原因となる割少込み
の発生原因等のr ′1iUJ込みfPI報」やシステ
ムコール発行時のシステムコール−II8等の「システ
ムコール情報」を格納する手段、蓄えるテーブルを各タ
スク毎に持ち、テーブルに割り込み発生時、システムコ
ールの発行時に上記情報を前記テーブルに格納する手段
、タスクの実行履歴を記録するタスクトレースが起動さ
れると、「タスクスイッチ情報」と共に前記格納してい
た「割り込み発生情報」「システムコール発行情報」を
出力する手段を設けたものである。
この発明においては、割り込みが発生すると割り込み原
因、割り込まれたアドレスを格納する。
因、割り込まれたアドレスを格納する。
また、システムコールがタスクから発行されると、シス
テムコールの種類、発行アドレスを格納する〇タスクト
レースに起動がかかると、タスクスイッチが起こる度に
、どのタスクからどのタスクに移ったというタスク情報
が採取される。このタスク情報と共に上記の格納したタ
スクスイッチのIjA因となった割り込みの情報かシス
テムコール情報か少くとも一方を出力する。
テムコールの種類、発行アドレスを格納する〇タスクト
レースに起動がかかると、タスクスイッチが起こる度に
、どのタスクからどのタスクに移ったというタスク情報
が採取される。このタスク情報と共に上記の格納したタ
スクスイッチのIjA因となった割り込みの情報かシス
テムコール情報か少くとも一方を出力する。
以下、この発明の一実施例を図について説明する。第1
図において、(財)は割り込み発生時に割り込み要因を
取る手段、(4)はシステムコール発行時にそのシステ
ムコールの番号を取る手段、(2)は工10同期割り込
み発生時にどのデバイスへの工10要求が終了したのか
という工10同期割り込み情報を取る手段、上記3fl
i[mの情報を格納するためのタスク毎のテーブルはメ
モリ上に取られている。
図において、(財)は割り込み発生時に割り込み要因を
取る手段、(4)はシステムコール発行時にそのシステ
ムコールの番号を取る手段、(2)は工10同期割り込
み発生時にどのデバイスへの工10要求が終了したのか
という工10同期割り込み情報を取る手段、上記3fl
i[mの情報を格納するためのタスク毎のテーブルはメ
モリ上に取られている。
次に81作について説明する。ig2図は、タスクスイ
ッチが発生した時の動作を示す流れ図である。
ッチが発生した時の動作を示す流れ図である。
ただし、この説明では、割り込み発生時のタスクスイッ
チを示す。割り込みの発生したr8Tl)。その時の割
〕込み情報が現在実行中のタスクのテーブルに格納され
る(8T2)。その発生がスーパバイザ(2)に知らさ
れる(8T3) 、その後、スーパバイザ(2)では新
しいタスクにスイッチするためにプロセススイッチャa
4に知らせる(ST4)0プロセススイツチα噌はプロ
セスリストQalからスイッチを行うタスクの情報を取
ってくる(STY)。そして、その情報をCPUのレジ
スタ等にセットする(ST6)。割り込み以外のシステ
ムコールや工10同gA割り込みの場合でも同様にシス
テムコールの狛行時や割り込み発生時にその情報を採取
し、各タスクのテーブルに格納する。次にタスクトレー
ス実行時の動作を第3図にフローチャートに従って説明
する0CRTなどのオペレータインタフェース装置から
タスクトレースに起動がかかる(STI)。プロセスス
イッチャにタスクトレースを欧るということを知らせる
(sT2) oタスクスイッチが発生するとプロセスス
イッチャがどのタスクからどのタスクへスイッチが行わ
れたかという情報を採取する(3T3)。
チを示す。割り込みの発生したr8Tl)。その時の割
〕込み情報が現在実行中のタスクのテーブルに格納され
る(8T2)。その発生がスーパバイザ(2)に知らさ
れる(8T3) 、その後、スーパバイザ(2)では新
しいタスクにスイッチするためにプロセススイッチャa
4に知らせる(ST4)0プロセススイツチα噌はプロ
セスリストQalからスイッチを行うタスクの情報を取
ってくる(STY)。そして、その情報をCPUのレジ
スタ等にセットする(ST6)。割り込み以外のシステ
ムコールや工10同gA割り込みの場合でも同様にシス
テムコールの狛行時や割り込み発生時にその情報を採取
し、各タスクのテーブルに格納する。次にタスクトレー
ス実行時の動作を第3図にフローチャートに従って説明
する0CRTなどのオペレータインタフェース装置から
タスクトレースに起動がかかる(STI)。プロセスス
イッチャにタスクトレースを欧るということを知らせる
(sT2) oタスクスイッチが発生するとプロセスス
イッチャがどのタスクからどのタスクへスイッチが行わ
れたかという情報を採取する(3T3)。
採取した情報をトレース柑バッフ7に順番に蓄えるC3
T4) o各タスク毎のテーブルに持っている割り込み
、システムコール情報をトレース用バッファ書キ込む(
Sr5)。オペレータインタフェース装置からトレース
用バッファをCRI’等Jjeritに出力するように
要求を出す(Sr1)。トレース用バッファの内容をC
RTに表示する(Sr7) 。
T4) o各タスク毎のテーブルに持っている割り込み
、システムコール情報をトレース用バッファ書キ込む(
Sr5)。オペレータインタフェース装置からトレース
用バッファをCRI’等Jjeritに出力するように
要求を出す(Sr1)。トレース用バッファの内容をC
RTに表示する(Sr7) 。
ま九、上記実施例では、システムコールの情報としてシ
ステムコールの#号を採取したが、番号以外にそのシス
テムコールへのパラメータ、光行時のアプリケーション
タスクのアドレス等の情報、割夛込み発生時には、発生
時のアプリケーションタスクのアドレス情報を同時に採
取しても上記実施例と同様の効果が得られる。
ステムコールの#号を採取したが、番号以外にそのシス
テムコールへのパラメータ、光行時のアプリケーション
タスクのアドレス等の情報、割夛込み発生時には、発生
時のアプリケーションタスクのアドレス情報を同時に採
取しても上記実施例と同様の効果が得られる。
以上のように、この発明によれば、タスクの実行制御を
行うオペレーティングシステムを持つ装置において、タ
スクスイッチの原因となる割り込みの発生原因等の割り
込み情報、システムコール発行時ノシステムコール番号
等のシステムコール情報を割り込み発生時、システムコ
ールの発行時に上記情報を格納する手段、タスクの実行
履歴を記録するタスクトレースが起動されると、タスク
スイッチ情報と共に格納していた割り込み発生情報、シ
ステムコール発行情報を出力するようにしたので、タス
クスイッチの実行amを取る時にタスクスイッチの原因
となる割り込み、システムコールの発行履歴を採取する
ことが出来、タスクスイッチの原因がすぐにわかシ、マ
ルチタスクのン7トウエアの開発が簡単に行えるという
効果かめる〇
行うオペレーティングシステムを持つ装置において、タ
スクスイッチの原因となる割り込みの発生原因等の割り
込み情報、システムコール発行時ノシステムコール番号
等のシステムコール情報を割り込み発生時、システムコ
ールの発行時に上記情報を格納する手段、タスクの実行
履歴を記録するタスクトレースが起動されると、タスク
スイッチ情報と共に格納していた割り込み発生情報、シ
ステムコール発行情報を出力するようにしたので、タス
クスイッチの実行amを取る時にタスクスイッチの原因
となる割り込み、システムコールの発行履歴を採取する
ことが出来、タスクスイッチの原因がすぐにわかシ、マ
ルチタスクのン7トウエアの開発が簡単に行えるという
効果かめる〇
第1図はこの発明の一実施例によるタスクトレース装置
を示すブロック図、第2図はこの発明の−y施例による
割り込み、システムコールが発行した時の動作を示す流
れ図、第3図はこの発明の−y施例によるタスクトレー
スが行われている場合に、タスクスイッチが発生した時
のall″を示す流れ図、第4図は従来及びこの発明に
適用されるマルチタスク・オペレーティング・システム
の基本構成図、@5図は従来のプロセス管理ルーチンの
ブロック図、第6図は従来及びこの発明に適用されるH
/W構成図、第7図(a) 、 (b) 、 ((りは
従来のタスクスイッチの説明図、第8図は従来のl10
i#Jυ込み発生時のタスクスイッチのWr作を示す流
れ図、第9図は従来の割り込み、システムコールの発行
時のタスクスイッチの動作を示す流れ図である。 第10図は従来のタスクトレースが行われている場合に
、タスクスイッチが発生した時の動作を示す流れ図であ
る〇 図において、(1)はアプリケーションタスク、(2)
はO8の処理を行うスーパバイザ、(3)はO8の中で
メモリ管理を行う部分、(4)はO8の中でデータ管理
を行う部分、(5)はOSの中でプロセス管理を行う部
分、(6)は入出力管理を行う部分であり、(7)はこ
の(2)〜(6)を含みO81特にカーネルと呼はれて
いる部分、aυは入出力装置や他のタスクとの同期を取
る同期制御機構、(2)は各タスクの待ち行列ヲ作るプ
ロセススケジューラ、0はタスクの待ち行列のリストで
あるプロセスリスト、α◆は待ちタスクの中で最も優先
順位晶いタスクにCPUの実行権を与えるプロセススイ
ッチャ、なりは割り込み発生時に割り込み情報を取る手
段、(2)はシステムコール発行時にシステムコールの
情報を取る手段、脅はI10同期割り込み相生時にI1
0同期割り込み情報を取る手段。 なお、図中、同一符号は、同一または相当部分を示す。 代地人 大 岩 NI 雄 第2図 第4図 回に、為ト本ミ 第7図(芝の1) (b) タスクAの4 ′PcFll a タスク8の!%先T1色m 第6図 第7図(吃りす (C) タスクAの逼に鴫イ0 く タスクBの傷元順位 第8図
を示すブロック図、第2図はこの発明の−y施例による
割り込み、システムコールが発行した時の動作を示す流
れ図、第3図はこの発明の−y施例によるタスクトレー
スが行われている場合に、タスクスイッチが発生した時
のall″を示す流れ図、第4図は従来及びこの発明に
適用されるマルチタスク・オペレーティング・システム
の基本構成図、@5図は従来のプロセス管理ルーチンの
ブロック図、第6図は従来及びこの発明に適用されるH
/W構成図、第7図(a) 、 (b) 、 ((りは
従来のタスクスイッチの説明図、第8図は従来のl10
i#Jυ込み発生時のタスクスイッチのWr作を示す流
れ図、第9図は従来の割り込み、システムコールの発行
時のタスクスイッチの動作を示す流れ図である。 第10図は従来のタスクトレースが行われている場合に
、タスクスイッチが発生した時の動作を示す流れ図であ
る〇 図において、(1)はアプリケーションタスク、(2)
はO8の処理を行うスーパバイザ、(3)はO8の中で
メモリ管理を行う部分、(4)はO8の中でデータ管理
を行う部分、(5)はOSの中でプロセス管理を行う部
分、(6)は入出力管理を行う部分であり、(7)はこ
の(2)〜(6)を含みO81特にカーネルと呼はれて
いる部分、aυは入出力装置や他のタスクとの同期を取
る同期制御機構、(2)は各タスクの待ち行列ヲ作るプ
ロセススケジューラ、0はタスクの待ち行列のリストで
あるプロセスリスト、α◆は待ちタスクの中で最も優先
順位晶いタスクにCPUの実行権を与えるプロセススイ
ッチャ、なりは割り込み発生時に割り込み情報を取る手
段、(2)はシステムコール発行時にシステムコールの
情報を取る手段、脅はI10同期割り込み相生時にI1
0同期割り込み情報を取る手段。 なお、図中、同一符号は、同一または相当部分を示す。 代地人 大 岩 NI 雄 第2図 第4図 回に、為ト本ミ 第7図(芝の1) (b) タスクAの4 ′PcFll a タスク8の!%先T1色m 第6図 第7図(吃りす (C) タスクAの逼に鴫イ0 く タスクBの傷元順位 第8図
Claims (1)
- (1)タスクの実行制御を行なうオペレーティングシス
テムを有する装置において、 タスク切替時に切替前後のタスクの情報を「タスクスイ
ッチ情報」として格納する手段、 タスクスイッチの原因となる割り込みの発生原因等の「
割り込み発生情報」とシステムコール発行時のシステム
コール番号等の「システムコール発行情報」を格納する
手段、 タスクトレース時に、上記「タスクスイッチ情報」と、
上記「割り込み発生情報」と「システムコール発行情報
」の少なくとも一方の情報を出力する手段を備えたこと
を特徴とするタスクトレース装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1093709A JPH02271435A (ja) | 1989-04-13 | 1989-04-13 | タスクトレース装置 |
KR1019900000591A KR930000592B1 (ko) | 1989-04-13 | 1990-01-19 | 타스크 추적장치 |
US07/491,006 US5379427A (en) | 1989-04-13 | 1990-03-09 | Task tracing apparatus in a multitask operating system |
CN90102016A CN1021087C (zh) | 1989-04-13 | 1990-04-06 | 任务跟踪装置 |
DE4011745A DE4011745A1 (de) | 1989-04-13 | 1990-04-11 | Taskverfolgungseinrichtung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1093709A JPH02271435A (ja) | 1989-04-13 | 1989-04-13 | タスクトレース装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02271435A true JPH02271435A (ja) | 1990-11-06 |
Family
ID=14089945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1093709A Pending JPH02271435A (ja) | 1989-04-13 | 1989-04-13 | タスクトレース装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5379427A (ja) |
JP (1) | JPH02271435A (ja) |
KR (1) | KR930000592B1 (ja) |
CN (1) | CN1021087C (ja) |
DE (1) | DE4011745A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04344542A (ja) * | 1991-05-21 | 1992-12-01 | Mitsubishi Electric Corp | 割込みトレース方式 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5379432A (en) * | 1993-07-19 | 1995-01-03 | Taligent, Inc. | Object-oriented interface for a procedural operating system |
DE4332993C1 (de) * | 1993-09-28 | 1994-11-24 | Siemens Ag | Tracer-System zur Fehleranalyse in laufenden Realzeitsystemen |
JP2692609B2 (ja) * | 1994-09-26 | 1997-12-17 | 日本電気株式会社 | マルチタスクのプログラムデバッグ方法とその装置 |
US6226659B1 (en) * | 1996-09-16 | 2001-05-01 | Oracle Corporation | Method and apparatus for processing reports |
US6083281A (en) * | 1997-11-14 | 2000-07-04 | Nortel Networks Corporation | Process and apparatus for tracing software entities in a distributed system |
US6374367B1 (en) | 1997-11-26 | 2002-04-16 | Compaq Computer Corporation | Apparatus and method for monitoring a computer system to guide optimization |
US6175814B1 (en) | 1997-11-26 | 2001-01-16 | Compaq Computer Corporation | Apparatus for determining the instantaneous average number of instructions processed |
US6549930B1 (en) | 1997-11-26 | 2003-04-15 | Compaq Computer Corporation | Method for scheduling threads in a multithreaded processor |
US6442585B1 (en) * | 1997-11-26 | 2002-08-27 | Compaq Computer Corporation | Method for scheduling contexts based on statistics of memory system interactions in a computer system |
US6237059B1 (en) | 1997-11-26 | 2001-05-22 | Compaq Computer Corporation | Method for estimating statistics of properties of memory system interactions among contexts in a computer system |
US6332178B1 (en) | 1997-11-26 | 2001-12-18 | Compaq Computer Corporation | Method for estimating statistics of properties of memory system transactions |
US6195748B1 (en) | 1997-11-26 | 2001-02-27 | Compaq Computer Corporation | Apparatus for sampling instruction execution information in a processor pipeline |
US6163840A (en) * | 1997-11-26 | 2000-12-19 | Compaq Computer Corporation | Method and apparatus for sampling multiple potentially concurrent instructions in a processor pipeline |
US6237073B1 (en) | 1997-11-26 | 2001-05-22 | Compaq Computer Corporation | Method for providing virtual memory to physical memory page mapping in a computer operating system that randomly samples state information |
US6212653B1 (en) | 1998-02-18 | 2001-04-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Logging of events for a state driven machine |
US6334159B1 (en) * | 1998-12-22 | 2001-12-25 | Unisys Corporation | Method and apparatus for scheduling requests within a data processing system |
US6345295B1 (en) | 1999-01-22 | 2002-02-05 | International Business Machines Corporation | Conducting traces in a computer system attachment network |
GB0022952D0 (en) * | 2000-09-19 | 2000-11-01 | Sgs Thomson Microelectronics | Monitoring interrupts |
US7111283B2 (en) * | 2000-11-29 | 2006-09-19 | Microsoft Corporation | Program history in a computer programming language |
US7032816B2 (en) * | 2001-12-28 | 2006-04-25 | Kimberly-Clark Worldwide, Inc. | Communication between machines and feed-forward control in event-based product manufacturing |
US6968250B2 (en) * | 2001-12-28 | 2005-11-22 | Kimberly-Clark Worldwide, Inc. | Intelligent agent system and method for evaluating data integrity in process information databases |
US7380213B2 (en) | 2001-12-28 | 2008-05-27 | Kimberly-Clark Worldwide, Inc. | User interface for reporting event-based production information in product manufacturing |
US7357298B2 (en) * | 2001-12-28 | 2008-04-15 | Kimberly-Clark Worldwide, Inc. | Integrating event-based production information with financial and purchasing systems in product manufacturing |
US8799113B2 (en) * | 2001-12-28 | 2014-08-05 | Binforma Group Limited Liability Company | Quality management by validating a bill of materials in event-based product manufacturing |
US7035877B2 (en) | 2001-12-28 | 2006-04-25 | Kimberly-Clark Worldwide, Inc. | Quality management and intelligent manufacturing with labels and smart tags in event-based product manufacturing |
JP2004199265A (ja) * | 2002-12-17 | 2004-07-15 | Mitsubishi Electric Corp | プロセス制御のトラッキング機能自動生成システムおよび制御プログラム自動生成システム |
US20060101415A1 (en) * | 2004-11-01 | 2006-05-11 | Evans Mark S | Service logic program tracing |
EP1820100B1 (en) * | 2004-11-30 | 2008-08-27 | Koninklijke Philips Electronics N.V. | Efficient switching between prioritized tasks |
US7707394B2 (en) * | 2006-05-30 | 2010-04-27 | Arm Limited | Reducing the size of a data stream produced during instruction tracing |
EP1909173B1 (en) * | 2006-10-06 | 2010-02-24 | Hewlett-Packard Development Company, L.P. | Management of data of settings in an operating system of a computer |
JP2008102778A (ja) * | 2006-10-19 | 2008-05-01 | Fujitsu Ltd | 情報処理装置、情報処理装置の制御方法及びプログラム |
SG163452A1 (en) * | 2009-01-23 | 2010-08-30 | Yokogawa Electric Corp | An apparatus and method for managing task information of a plant |
CN108920267B (zh) * | 2012-05-24 | 2022-03-15 | 瑞萨电子株式会社 | 任务处理装置 |
US10990439B1 (en) * | 2019-09-26 | 2021-04-27 | Facebook Technologies, Llc | Tracing task execution across services in microkernel-based operating systems |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6011948A (ja) * | 1983-07-01 | 1985-01-22 | Matsushita Electric Ind Co Ltd | タスク状態遷移監視装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4598364A (en) * | 1983-06-29 | 1986-07-01 | International Business Machines Corporation | Efficient trace method adaptable to multiprocessors |
US4845615A (en) * | 1984-04-30 | 1989-07-04 | Hewlett-Packard Company | Software performance analyzer |
DD239481A1 (de) * | 1985-07-15 | 1986-09-24 | Robotron Rationalisierung | Einrichtung zum protokollieren von programmablaeufen |
US4809170A (en) * | 1987-04-22 | 1989-02-28 | Apollo Computer, Inc. | Computer device for aiding in the development of software system |
-
1989
- 1989-04-13 JP JP1093709A patent/JPH02271435A/ja active Pending
-
1990
- 1990-01-19 KR KR1019900000591A patent/KR930000592B1/ko not_active IP Right Cessation
- 1990-03-09 US US07/491,006 patent/US5379427A/en not_active Expired - Fee Related
- 1990-04-06 CN CN90102016A patent/CN1021087C/zh not_active Expired - Fee Related
- 1990-04-11 DE DE4011745A patent/DE4011745A1/de active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6011948A (ja) * | 1983-07-01 | 1985-01-22 | Matsushita Electric Ind Co Ltd | タスク状態遷移監視装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04344542A (ja) * | 1991-05-21 | 1992-12-01 | Mitsubishi Electric Corp | 割込みトレース方式 |
Also Published As
Publication number | Publication date |
---|---|
US5379427A (en) | 1995-01-03 |
DE4011745A1 (de) | 1990-10-18 |
DE4011745C2 (ja) | 1992-07-16 |
CN1021087C (zh) | 1993-06-02 |
KR930000592B1 (ko) | 1993-01-25 |
KR900016884A (ko) | 1990-11-14 |
CN1046404A (zh) | 1990-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02271435A (ja) | タスクトレース装置 | |
US5632032A (en) | Cross address space thread control in a multithreaded environment | |
TWI511049B (zh) | 用於虛擬處理設備之中斷控制的方法及設備 | |
US6006247A (en) | Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system | |
US4887202A (en) | Input-output control method in a virtual machine system | |
JP2692609B2 (ja) | マルチタスクのプログラムデバッグ方法とその装置 | |
EP1870810A2 (en) | Kernel-aware debugging system, medium, and method | |
US5291608A (en) | Display adapter event handler with rendering context manager | |
US10613895B2 (en) | Virtualization of storage buffers used by asynchronous processes | |
JP2000066904A (ja) | マルチタスク制御方法及び記憶媒体 | |
JP3245500B2 (ja) | マルチプログラミングにおける事象管理方式 | |
JP2636722B2 (ja) | マルチタスク実行管理方式 | |
US5642507A (en) | Apparatus for collecting control data of a virtual machine and method of thereof | |
IE881984L (en) | Apparatus and method for providing an extended processing¹enviroment on nonmicrocoded data processing system | |
JP2000242522A (ja) | マルチタスクデバッグ装置及びその方法 | |
JPH10333938A (ja) | 計算機システムにおける実行ログの記録、表示方法、ならびに同方法を用いた計算機システム、及び同方法がプログラムされ記録される記録媒体 | |
CN108140363A (zh) | 基于翻转队列管理的图形上下文调度 | |
US6223246B1 (en) | Computer system having an interrupt handler | |
JPH07105120A (ja) | 入出力制御装置 | |
JP3184380B2 (ja) | 割り込み制御方法及びそれを実現するマルチタスクシステム | |
JP2581659B2 (ja) | 仮想計算機システム | |
JPH0424828A (ja) | マルチタスク管理方式 | |
JPH0981526A (ja) | マルチプロセッサシステム | |
EP0442714A2 (en) | Interrupt handling in a data processing system | |
JPH11184716A (ja) | キュー管理方式 |