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

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

Info

Publication number
JPH0476640A
JPH0476640A JP2185626A JP18562690A JPH0476640A JP H0476640 A JPH0476640 A JP H0476640A JP 2185626 A JP2185626 A JP 2185626A JP 18562690 A JP18562690 A JP 18562690A JP H0476640 A JPH0476640 A JP H0476640A
Authority
JP
Japan
Prior art keywords
task
interrupt
routine
information
interruption
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.)
Granted
Application number
JP2185626A
Other languages
English (en)
Other versions
JP2882860B2 (ja
Inventor
Hiroshi Otaka
浩 大高
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

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

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

Claims (1)

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

Cited By (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

Cited By (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
JP2882860B2 (ja) 1999-04-12

Similar Documents

Publication Publication Date Title
US6269478B1 (en) Monitoring method for recognizing endless loops and blocked processes in a computer system using task state comparisons
EP0943996B1 (en) Processor having real-time execution control for debug functions without a debug monitor
US20070180322A1 (en) Debug support device, and program for directing computer to perform debugging method
US7168075B1 (en) Automation device and updating method
CN115391079A (zh) 一种基于五级流水线处理器的中断与异常处理方法
JPH0476640A (ja) オンライン中タスク中断時間分析方式
JPH0245838A (ja) プログラム実行状態監視方法
JPH03259349A (ja) 障害処理方式
JP2882859B2 (ja) オンライン中イベント処理時間分析方式
CN110955507B (zh) 基于vxWorks系统的多任务访问同一IIC总线的方法
JP2998793B2 (ja) 情報処理装置の試験方式
KR100289039B1 (ko) 교차디버깅서버에서프로세스실행제어서비스실현방법
JPH04107644A (ja) オンライン中の情報収集方式
JP2574938B2 (ja) システム起動方式
CN117891569A (zh) 一种基于eBPF的linux实时系统调试方法
JPS61251940A (ja) 障害時デ−タ収集方式
JPH07248810A (ja) 数値制御装置
Crain et al. Modeling efficiently with GPSS/H
JPH0411890B2 (ja)
JPS6346861B2 (ja)
JPS6259816B2 (ja)
CN114647540A (zh) 嵌入式调度器故障恢复方法、嵌入式系统及存储介质
CN117312092A (zh) 多核mcu的监控方法、装置、车辆及可读存储介质
JPH02118855A (ja) 処理管理方式
JPH0416811B2 (ja)

Legal Events

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