JP2882860B2 - オンライン中タスク中断時間分析方式 - Google Patents

オンライン中タスク中断時間分析方式

Info

Publication number
JP2882860B2
JP2882860B2 JP2185626A JP18562690A JP2882860B2 JP 2882860 B2 JP2882860 B2 JP 2882860B2 JP 2185626 A JP2185626 A JP 2185626A JP 18562690 A JP18562690 A JP 18562690A JP 2882860 B2 JP2882860 B2 JP 2882860B2
Authority
JP
Japan
Prior art keywords
task
interrupt
routine
information collection
online
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
JP2185626A
Other languages
English (en)
Other versions
JPH0476640A (ja
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2185626A priority Critical patent/JP2882860B2/ja
Publication of JPH0476640A publication Critical patent/JPH0476640A/ja
Application granted granted Critical
Publication of JP2882860B2 publication Critical patent/JP2882860B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はオンライン中タスク中断時間分析方式に係
り、詳しくは、主にオンラインシステムで発生するレス
ポンス/ターンアラウンドの低下等の異常原因を解明す
るために、計算機システムがオンラインサービスを続行
した環境で、タスクの長時間沈込みが生じた割込み種
別、割込み処理時間など必要なデータを実測・分析可能
とする方式に関する。
〔従来の技術〕
従来、オンラインサービスを続行した環境で、割込み
等の必要なデータを実測・分析する方式としては、シス
テムプログラム修正方式がある。この方式は、オペレー
ティングシステム等のシステムプログラム(割込み解析
・実行ルーチン、タスクディスクパッチャなど)の中
に、一時的に性能分析用情報収集ルーチンを埋め込み、
オンラインでの分析が終われば、元に戻す方式である。
〔発明が解決しようとする課題〕
このシステムプログラム修正方式では、すべての割込
みを対象に情報収集処理を行うため、その情報収集オー
バヘッドが大きく、オンライン性能が大幅低下するとい
う問題がある。また、仮にこのオンライン性能低下が一
時的に許容できるシステムでも、オンラインで動作する
システムプログラムへの情報収集ルーチンの埋め込みや
除去のためのプログラムの差し替えに伴い、当該オンラ
イン・サービスの中断が必要である。さらに、多数の情
報収集ルーチンの埋め込みや除去により、プログラムバ
グの混入によるオンライン品質の低下を招き易いという
問題もある。
本発明は、以上述べた従来技術の問題を解決すること
を目的としており、オンライン用プログラムの修正を不
要とすることでオンラインサービスの運転を継続可能と
し、かつ、タスク名の長時間沈込みが生じた割込み原
因、割込み処理時間など具体的な性能分析情報を、オン
ライン性能の劣化を最小化しつつシステムが自動収集す
ることにより、性能ボトルネックへの早期対処を図るこ
とにある。
〔課題を解決するための手段〕
上記目的を達成するため、本発明は、オンライン処理
性能測定中か否かを示す状態フラグと、測定対象のタス
クIDを保持している記憶部と、第1,第2及び第3の情報
収集処理ルーチンを備え、 割込み解析ルーチンは、オンラインタスク走行中に割
込みが発生した時、それが測定対象タスクでの割込みで
ある場合は、当該タスクIDを設定し、割込み後の経過時
間を表示するタイマを作動させると共に、第1の情報収
集処理ルーチンを起動して、当該ルーチンにてタスクI
D、割込み発生時刻やタイムスライス/メモリフォール
ト等の割込み原因種別などの情報収集を行った後で、割
込み実行ルーチンを起動し、それ以外の場合は割込み実
行ルーチンを直接起動し、 割込み実行ルーチンは、所定の割込み処理を終了した
時点で、当該割込み発生元のタスクIDが設定されてい
て、上記タイマの値があらかじめ定めた値を超えている
場合、第2の情報収集処理ルーチンを起動して、タスク
ID、現在の時刻などを収集し、その後で、タスクディス
パッチャに制御を渡し、それ以外では、タスクディスパ
ッチャに直接に制御を渡し、 タスクディスパッチャは、タスクへのディスパッチ契
機で、 ディスパッチ先タスクのIDと割込み発生元のタスクID
が一致するか調べ、一致する場合、タイマの値があらか
じめ定めた値を超えていると、第3の情報収集処理ルー
チンを呼び、ディスパッチ先タスクの実行優先度、タス
クID、現在の時刻などを収集せしめ、さらに、設定され
ている割込み発生元のタスクIDの初期化、上記タイマの
停止を行った後で通常通りディスパッチを行い、それ以
外では、単に通常通りディスパッチを行うことを特徴と
する。
〔作 用〕
本発明では、性能分析情報の収集対象は指定タスクに
関するものに限定し、長時間のタスクの沈込みや割込み
が発生した場合にのみ情報収集する機構を持つことによ
り、オンライン性能への影響を最小限度することができ
る。また、割込み解析ルーチン、割込み実行ルーチン、
タスクディスパッチャでそれぞれ情報収集処理ルーチン
を起動することにより、オンライン性能ネックの直接的
原因を解明できる具体的オンラインの生データ(タスク
の長時間沈み込みを生じさせた割込み原因、割込み処理
時間、実行優先度の高い他のタスクの走行履歴など)
を、オンライン・プログラムの修正なしで得られる。
〔実施例〕
以下、本発明の一実施例について図面により説明す
る。
第1図は本発明方式の概念図を示したもので、1は割
込み発生元タスク、2は割込み解析ルーチン、3は割込
み実行ルーチン、4はタスクディスパッチャ、5は記憶
領域、6〜8は情報収集処理ルーチン群である。
記憶領域5には、本発明に関連するものとして、オン
ライン中測定中か否かを示す状態フラグ(ONは測定中、
OFFは非測定中)を記憶する領域51、測定対象タスクID
を記憶する領域52、タスク中断後情報収集を開始する時
間の閾値を記憶する領域53、割込み発生元タスクIDを記
憶する領域54、及び、割込み後の経過時間を示すタイマ
(所謂ソフトタイマ)を記憶する領域55がある。ここ
で、領域51〜53の状態フラグ、測定対象タスクID、収集
開始経過時間閾値などは、オペレータや自動運転プログ
ラムによりあらかじめ設定されるものである。また、領
域54の割込み発生元タスクIDは割込み解析ルーチン2に
より設定され、領域55のタイマは割込み解析ルーチン2
で起動され、タスクディスパッチャ4で停止される。
第2図(a),(b)及び(c)は割込み解析ルーチ
ン2、割込み実行ルーチン3、タスクディスパッチャ4
の各処理フローであり、第3図は情報収集処理ルーチン
6,7,8での各最低収集情報を示したものである。以下、
第2図、第3図を参考に第1図の動作概要を説明する。
タスク1の走行中、割込みが発生すると、割込み解析
ルーチン2は割込み種別等を解析し、その割込み発生元
タスクのタスクID(各タスクに対しては、システム内で
一意に識別できるタスクIDが設定されている)が測定対
象タスクID記憶領域52に登録されており、かつ、記憶領
域51の状態フラグがON(測定中;測定許容)の場合、記
憶領域54に当該割込み発生元タスクを設定し、さらに、
記憶領域55を用いてタイマを作動させた後、情報収集処
理ルーチン6を起動し、情報収集後、割込み処理ルール
3を起動し、また、状態フラグがOFF(非測定;測定抑
止)、あるいはONでも測定対象タスクIDが登録されてい
ない場合には、通常通りに割込み処理ルーチン3を直接
起動する(第2図(a))。情報収集ルーチン6は起動
を受けると、当該割込み発生元タスクID、割込み発生時
刻、タイムスライス/メモリフォールト等の割込み原因
種別などの情報収集を行う(第3図)。
割込みルーチン3は、割込み処理を実行し、その終了
時点で、記憶領域54に割込み発生元タスクIDが設定され
ており、かつ、記憶領域55のタイマ値tが記憶領域53の
収集開始経過時間閾値t1を超えている場合、情報収集処
理ルーチン7を起動し、情報収集後、タスクディスパッ
チャ4に制御を渡し、それ以外では、通常通り直接タス
クディスパッチャ4に制御を渡す(第2図(b))。情
報収集処理ルーチン7は起動を受けると、当該タスクI
D、現在の時刻などの収集する(第3図)。
タスクディスパッチャ4では、タスクへのディスパッ
チ契機で、ディスパッチャ先タスクのタスクIDと記憶領
域54のタスクIDが一致するか調べ、一致する場合、記憶
領域55のタイマ値ttを調べ、この値が記憶領域53の収集
開始時間閾値t2を超えている場合にのみ、情報収集処理
ルーチン8を起動し、さらに、記憶領域54のタスクIDを
初期化し、タイマを停止して記憶領域55のタイマ値を初
期値に戻した後、通常通りディスパッチを行い、それ以
外では、単に通常通りのディスパッチャ4を直接行う
(第2図(c))。情報収集処理ルーチン8は起動を受
けると、ディスパッチ先タスクIDなどを収集する(第3
図)。
第4図及び第5図は処理の具体例を示したものであ
る。
第4図はオンライン通常運転状態の例である。この場
合、状態フラグはOFF(非測定)である。なお、測定対
象タスクID記憶領域はNULL(測定対象タスク無し)とす
る。オンラインタスク(タスクID=Aとする)で割込み
αが発生する()、割込み解析ルーチン2は割込み種
別等を解析後、状態フラグがOFF、また、タスクID=A
が登録されていないということで、直ちに割込み実行ル
ーチン3に制御を渡す()。割込み実行ルーチン3で
は、割込みαに対応する処理を実行し、その処理終了
後、割込み発生元記憶領域にタスクIDが設定されていな
いということで、やはり直ちにタスクディスパッチャ4
に制御を渡す()。タスクディスパッチャ4では、他
タスク(タスクID=B、一般に複数タスク)へのディス
パッチを行い()、その後最終的に元のタスク(ID=
A)が走行を再開する()。
第5図はオンライン性能測定状態中の例である。この
場合、状態フラグはON(測定中)である。測定対象タス
クID記憶領域にはID=Aが登録されているとする。
オンラインタスク(ID=A)で割込みαが発生した場
合()、割込み解析ルーチン2では、割込み値別等の
解析後、状態フラグON、割込み発生元タスク(ID=A)
が測定対象であるため、割込み発生元記憶領域に割込み
発生元タスクのID(=A)を設定し、かつ割込み後の経
過時間のタイマを作動させ()、情報収集ルーチン6
を実行した後、割込み実行ルーチン3に制御を渡す
()。割込み実行ルーチン3では、割込み処理を実行
し、その終了後、情報収集ルーチン7を実行した後でタ
スクディスパッチャ4に制御を渡す()。タスクディ
スパッチャ4にて、割込み後の経過時間のタイマの値
が、タスク中断後情報収集を開始する時間の閾値を超え
てれば、他タスク(図ではタスクID=B、一般に複数タ
スク)へのディスパッチの度ごとに情報収集ルーチン8
を実行し()、最終的に元のタスク(ID=A)へのデ
ィスパッチ時、割込み元記憶領域をクリア(NULL)し、
割込み後の経過時間のタイマを停止し、初期値に戻すと
ともに、情報収集ルーチンDを実行した後で()、タ
スク(ID=A)を走行再開させる()。
第6図に、情報収集処理ルーチン6,7,8でのオンライ
ン中収集情報の例、及びその分析例を示す。
ここで、上記情報収集処理プログラムとの間の制御移
行に伴い、本来のプログラム間制御移行が従来通りに行
われる必要がある。このため、図では簡略化されている
が、当然ながら、新・旧PSW、レジスタ等のプログラム
間制御移行用の引継ぎ情報を本来のプログラムの呼び出
し前の状態(次の実行アドレスは当該SVC処理プログラ
ムの実行アドレス)でセーブし、終了後その状態にリバ
イブする機能を持ち合わせている。
また、実施例では、一般的な割込みを例に説明してい
るが、タイムスライスによる割込みの場合、割込み解析
ルーチン2から直接タスクディスパッチャ4へ制御移行
するケースもある。本ケースの場合には、割込み実行ル
ーチン3がタスクディスパッチャ4内に吸収され、情報
収集ルーチン7が省略された形で、構成される。
また、第5図のオンライン性能設定中の状態では、タ
スク走行中の割込み処理について説明したものでだが、
割込み処理中の割込みの場合は、2度目の割込み処理が
完了後処理を続行する場合は、情報収集ルーチン8の実
行後の制御移行先がタスクディスパッチャの代わりに2
度目の割込み発生元のアドレスに変わる。3重以上の割
込みも同様に処理される。
また、実施例で、各情報収集処理ルーチンは、OSと同
等の権限を持たせたプログラムで構成し、必要機能を加
えることで、第3図の例以外の情報収集も可能である。
〔発明の効果〕
以上述べたように、本発明では、性能分析情報の収集
対象は指定タスクに関するものに限定し、長時間のタス
ク中の沈込みや割込みが発生した場合にのみ情報収集す
る機構を持つことにより、オンライン性能への影響を最
小限度とするものである。また、その後この収集情報を
オフラインシステムのみで編集・分析することにより、
オンライン性能への影響をさらに減少させることができ
る。
また、オンライン性能ネックの直接的原因を解明でき
る具体的オンラインの生データ(タスクの長時間沈込み
を生じさせた割込み原因、割込み処理時間、実行優先度
の高い他タスクの走行履歴など)を、オンライン・プロ
グラムの修正なしで得られることから、性能ボトルネッ
クの原因究明に係わる所要稼動を大幅に削減するととも
に、その早期解消が図られる。
今後、オンラインシステムの業務の高度化に伴い、ハ
ード/ソフトが様々大規模・複雑化する傾結にあり、シ
ステム性能問題の早期かつ簡易な究明手段の提供の重要
性は高まる一方である。本発明はこれに応える新方式と
位置づけられる。
【図面の簡単な説明】
第1図は本発明方式の概念図、第2図は割込み解析ルー
チン、割込み実行ルーチン、タスクディスパッチャの各
処理フロー図、第3図は情報収集処理ルーチン群と収集
情報を示す図、第4図及び第5図は具体的処理例を示す
図、第6図は情報収集・分析の具体例を示す図である。 1……割込み発生元タスク、 2……割込み解析ルーチン、 3……割込み実行ルーチン、 4……タスクディスパッチャ、5……記憶領域、 6〜8……情報収集処理ルーチン。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】走行状態のタスク処理の一時中断がタイム
    スライス/メモリフォールトなどによる割込みにより行
    われ、タスクのレディ状態への移行が、割込み処理の終
    了後に行われ、また走行状態への復帰がタスクディスパ
    ッチャにより行われる計算機システムにおいて、 オンライン処理性能測定中か否かを示す状態フラグと、
    測定対象のタスクIDを保持している記憶部と、第1,第2
    及び第3の情報収集処理ルーチンを備え、 割込み解析ルーチンは、オンラインタスク走行中に割込
    みが発生した時、それが測定対象タスクでの割込みであ
    る場合は、当該タスクIDを設定し、割込み後の経過時間
    を表示するタイマを作動させると共に、第1の情報収集
    処理ルーチンを起動して、当該ルーチンにてタスクID、
    割込み発生時刻やタイムスライス/メモリフォールト等
    の割込み原因種別などの情報収集を行った後で、割込み
    実行ルーチンを起動し、それ以外の場合は割込み実行ル
    ーチンを直接起動し、 割込み実行ルーチンは、所定の割込み処理を終了した時
    点で、当該割込み発生元のタスクIDが設定されていて、
    上記タイマの値があらかじめ定めた値を超えている場
    合、第2の情報収集処理ルーチンを起動して、タスクI
    D、現在の時刻などを収集し、その後で、タスクディス
    パッチャに制御を渡し、それ以外では、タスクディスパ
    ッチャに直接に制御を渡し、 タスクディスパッチャは、タスクへのディスパッチ契機
    で、 ディスパッチ先タスクのIDと割込み発生元のタスクIDが
    一致するか調べ、一致する場合、タイマの値があらかじ
    め定めた値を超えていると、第3の情報収集処理ルーチ
    ンを呼び、ディスパッチ先タスクの実行優先度、タスク
    ID、現在の時刻などを収集せしめ、さらに、設定されて
    いる割込み発生元のタスクIDの初期化、上記タイマの停
    止を行った後で通常通りディスパッチを行い、それ以外
    では、単に通常通りディスパッチを行う、 ことを特徴とするオンライン中タスク中断時間分析方
    式。
JP2185626A 1990-07-13 1990-07-13 オンライン中タスク中断時間分析方式 Expired - Fee Related JP2882860B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2185626A JP2882860B2 (ja) 1990-07-13 1990-07-13 オンライン中タスク中断時間分析方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2185626A JP2882860B2 (ja) 1990-07-13 1990-07-13 オンライン中タスク中断時間分析方式

Publications (2)

Publication Number Publication Date
JPH0476640A JPH0476640A (ja) 1992-03-11
JP2882860B2 true JP2882860B2 (ja) 1999-04-12

Family

ID=16174079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2185626A Expired - Fee Related JP2882860B2 (ja) 1990-07-13 1990-07-13 オンライン中タスク中断時間分析方式

Country Status (1)

Country Link
JP (1) JP2882860B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495652B2 (en) 2008-02-22 2013-07-23 Nec Corporation IT system behavior measurement and analysis system and method thereof

Also Published As

Publication number Publication date
JPH0476640A (ja) 1992-03-11

Similar Documents

Publication Publication Date Title
US5109514A (en) Method and apparatus for executing concurrent CO processor operations and precisely handling related exceptions
US7328331B2 (en) Method and system of aligning execution point of duplicate copies of a user program by copying memory stores
US7752494B2 (en) Method and system of aligning execution point of duplicate copies of a user program by exchanging information about instructions executed
JPS62298839A (ja) 障害時に計算機システムを再始動する方法
JPH0668726B2 (ja) レジスタ管理システム
US5404466A (en) Apparatus and method to set and reset a pipeline instruction execution control unit for sequential execution of an instruction interval
JPH04223532A (ja) 改良されたプロセッサ
US10613895B2 (en) Virtualization of storage buffers used by asynchronous processes
JP2882860B2 (ja) オンライン中タスク中断時間分析方式
US20050283586A1 (en) Stepping a virtual machine guest
JP3097750B2 (ja) オンライン中の情報収集方式
JPH10198454A (ja) 情報処理装置の保守操作誘導方法および情報記録媒体
JP2998793B2 (ja) 情報処理装置の試験方式
JPH0144629B2 (ja)
JPH0895771A (ja) サ−ビス処理システム
JPH0934753A (ja) 事象識別方法、事象識別装置及び識別子参照装置
JP2000076095A (ja) プログラムトレース装置およびプログラムトレース方法およびそのプログラムを記憶した記憶媒体
JPS61141047A (ja) 障害情報の退避方式
JPH07210421A (ja) スレッド環境におけるデバッグ方法
JP2902769B2 (ja) ロボットのシーケンス制御方式
JPH01211048A (ja) プログラムの実行命令数測定方式
JPH08314766A (ja) 情報処理装置
JPH0764909A (ja) オンライン業務処理実行順序管理装置
JPH0438011B2 (ja)
JPS631630B2 (ja)

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees