JP2882859B2 - オンライン中イベント処理時間分析方式 - Google Patents
オンライン中イベント処理時間分析方式Info
- Publication number
- JP2882859B2 JP2882859B2 JP2185625A JP18562590A JP2882859B2 JP 2882859 B2 JP2882859 B2 JP 2882859B2 JP 2185625 A JP2185625 A JP 2185625A JP 18562590 A JP18562590 A JP 18562590A JP 2882859 B2 JP2882859 B2 JP 2882859B2
- Authority
- JP
- Japan
- Prior art keywords
- task
- event
- processing
- svc
- information collection
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、オンライン中イベント処理時間分析方式に
係り、詳しくは、主にオンラインシステムで発生するレ
スポンス/ターンアラウンドの低下等を引き起こすI/O
などのイベント実行/イベント待ちの長時間化の原因を
解明するために、オンラインサービスを続行した環境
で、問題に起因する資源名、タスク名など必要なデータ
を実測・分析可能とする方式に関する。
係り、詳しくは、主にオンラインシステムで発生するレ
スポンス/ターンアラウンドの低下等を引き起こすI/O
などのイベント実行/イベント待ちの長時間化の原因を
解明するために、オンラインサービスを続行した環境
で、問題に起因する資源名、タスク名など必要なデータ
を実測・分析可能とする方式に関する。
従来、オンラインサービスを続行した環境で、必要な
データの実測・分析を可能とする方式としては、システ
ムプログラム修正方式がある。この方式は、オペレーテ
ィングシステム等のシステムプログラム(システムタス
ク/非タスクやタスクディスパッチャ)の中に、一時的
に性能分析用情報収集ルーチンを埋め込み、オンライン
での分析が終われば、元に戻す方式である。
データの実測・分析を可能とする方式としては、システ
ムプログラム修正方式がある。この方式は、オペレーテ
ィングシステム等のシステムプログラム(システムタス
ク/非タスクやタスクディスパッチャ)の中に、一時的
に性能分析用情報収集ルーチンを埋め込み、オンライン
での分析が終われば、元に戻す方式である。
このシステムプログラム修正方式では、すべてのイベ
ントを対象に情報収集処理を行うため、その情報収集オ
ーバヘッドが大きく、オンライン性能が大幅低下すると
いう問題がある。
ントを対象に情報収集処理を行うため、その情報収集オ
ーバヘッドが大きく、オンライン性能が大幅低下すると
いう問題がある。
また、仮にこのオンライン性能低下が一時的に許容で
きるシステムでも、オンラインで動作するシステムプロ
グラムへの情報収集ルーチンの埋め込みや除去のための
プログラムの差し替えに伴い、当該オンライン・サービ
スの中断が必要である。さらに、多数の情報収集ルーチ
ンの埋め込みや除去により、プログラムバグの混入によ
るオンライン品質の低下を招き易いという問題もある。
きるシステムでも、オンラインで動作するシステムプロ
グラムへの情報収集ルーチンの埋め込みや除去のための
プログラムの差し替えに伴い、当該オンライン・サービ
スの中断が必要である。さらに、多数の情報収集ルーチ
ンの埋め込みや除去により、プログラムバグの混入によ
るオンライン品質の低下を招き易いという問題もある。
本発明は、以上述べた従来技術の問題を解決すること
を目的としており、オンライン用プログラムの修正を不
要とすることでオンラインサービスの運転を継続可能と
し、かつ、I/O実行時間や待ち時間の増大を招いた資源
名、タスク名など具体的な性能分析情報を、オンライン
性能の劣化を最小化しつつシステムが自動収集すること
により、性能ボトルネックへの早期対処を図るものであ
る。
を目的としており、オンライン用プログラムの修正を不
要とすることでオンラインサービスの運転を継続可能と
し、かつ、I/O実行時間や待ち時間の増大を招いた資源
名、タスク名など具体的な性能分析情報を、オンライン
性能の劣化を最小化しつつシステムが自動収集すること
により、性能ボトルネックへの早期対処を図るものであ
る。
上記目的を達成するために、本発明は、走行中のタス
クから他への処理依頼イベントがI/O系マクロ、CPU/メ
モリ等の資源確保・占有系マクロなどのSVC発行により
行われ、またタスクのレディ状態への移行が、POST系/G
AP系各マクロのSVC発行により行われ、また走行状態へ
の復帰がタスクバィスパッチャにより行われる計算機シ
ステムにおいて、オンライン処理性能測定中か否かを示
す状態フラグと、測定対象のタスクIDを保持しているタ
スクIDリストと、SVC毎にSVC処理ルーチンアドレスに加
えて情報収集処理ルーチンアドレスも保持するSVC管理
テーブルを設け、オンラインタスクからSVCが発行され
た場合、前記状態フラグが性能測定中を示し、かつ、前
記タスクIDリストに当該タスクIDが存在すると、前記SV
Cテーブルを参照し、第1の情報収集処理ルーチンを起
動して、時刻やタスクIDやSVC名などを収集し、その
後、SVC処理ルーチンを実行することを前提とする。
クから他への処理依頼イベントがI/O系マクロ、CPU/メ
モリ等の資源確保・占有系マクロなどのSVC発行により
行われ、またタスクのレディ状態への移行が、POST系/G
AP系各マクロのSVC発行により行われ、また走行状態へ
の復帰がタスクバィスパッチャにより行われる計算機シ
ステムにおいて、オンライン処理性能測定中か否かを示
す状態フラグと、測定対象のタスクIDを保持しているタ
スクIDリストと、SVC毎にSVC処理ルーチンアドレスに加
えて情報収集処理ルーチンアドレスも保持するSVC管理
テーブルを設け、オンラインタスクからSVCが発行され
た場合、前記状態フラグが性能測定中を示し、かつ、前
記タスクIDリストに当該タスクIDが存在すると、前記SV
Cテーブルを参照し、第1の情報収集処理ルーチンを起
動して、時刻やタスクIDやSVC名などを収集し、その
後、SVC処理ルーチンを実行することを前提とする。
そして、I/O等の処理要求イベントを実行するシステ
ムタスク/非タスクは、処理時間要求イベントを記憶す
るイベント制御ブロック(ECB)を待ちイベントキュー
から取り出す時、イベント制御ブロックのタスクID領域
を調べ、測定対象イベントである(タスクIDが設定され
ている)場合には、イベントの実行開始契機に第2の情
報収集処理を起動して、時刻、タスクID、処理対象資源
名やREAD/WRITEなどの実行イベント種別、待ちECB数、
他の待ちタスクのIDを収集した後で、通常のイベント実
行を行い、さらにその後、イベント完了契機で第3の情
報収集処理ルーチンを起動して、時刻、タスクID、処理
対象資源名やイベント処理結果(正常/異常等)を収集
し、それ以外の場合には、直接通常のイベントを実行せ
しめる。
ムタスク/非タスクは、処理時間要求イベントを記憶す
るイベント制御ブロック(ECB)を待ちイベントキュー
から取り出す時、イベント制御ブロックのタスクID領域
を調べ、測定対象イベントである(タスクIDが設定され
ている)場合には、イベントの実行開始契機に第2の情
報収集処理を起動して、時刻、タスクID、処理対象資源
名やREAD/WRITEなどの実行イベント種別、待ちECB数、
他の待ちタスクのIDを収集した後で、通常のイベント実
行を行い、さらにその後、イベント完了契機で第3の情
報収集処理ルーチンを起動して、時刻、タスクID、処理
対象資源名やイベント処理結果(正常/異常等)を収集
し、それ以外の場合には、直接通常のイベントを実行せ
しめる。
また、タスクディスパッチャは、ディスパッチ契機
で、イベント制御ブロックのタスクID領域を調べ、測定
対象イベントである場合、第4の情報収集処理ルーチン
を起動して、時刻、タスクID、ディスパッチ完了記録を
収集し、その後、ディスパッチを行い、それ以外では直
接ディスパッチを実行せしめる。
で、イベント制御ブロックのタスクID領域を調べ、測定
対象イベントである場合、第4の情報収集処理ルーチン
を起動して、時刻、タスクID、ディスパッチ完了記録を
収集し、その後、ディスパッチを行い、それ以外では直
接ディスパッチを実行せしめる。
本発明では、性能分析情報の収集は、指定タスクに関
するイベントに限定した情報収集を行うことにより、オ
ンライン性能への影響を最小限度とすることができる。
また、各種情報収集処理ルーチンを、SVC処理、システ
ムタスク/非タスク、タスクディスパッチャで必要に応
じて呼ぶことにより、ログ情報では得られない、性能ネ
ックの直接的原因を解明できる具体的オンラインの生デ
ータ(I/O実行時間や待ち時間の増大を招いた資源名、
タスク名など)を、オンライン・プログラムの修正なし
で得られる。
するイベントに限定した情報収集を行うことにより、オ
ンライン性能への影響を最小限度とすることができる。
また、各種情報収集処理ルーチンを、SVC処理、システ
ムタスク/非タスク、タスクディスパッチャで必要に応
じて呼ぶことにより、ログ情報では得られない、性能ネ
ックの直接的原因を解明できる具体的オンラインの生デ
ータ(I/O実行時間や待ち時間の増大を招いた資源名、
タスク名など)を、オンライン・プログラムの修正なし
で得られる。
以下、本発明の一実施例について図面により説明す
る。
る。
第1図は本発明方式の概念図で、10はイベント発行元
タスク(走行中のオンラインタスク)、11は情報収集処
理ルーチン呼出し部、12はSVC処理部、13はシステムタ
スク/非タスク、14と15は別の情報収集処理ルーチン呼
出し部、16はタスクディスパッチャ、17は更に別の情報
収集処理ルーチン呼出し部である。21はSVC処理部12で
実行されるSVC処理実行ルーチン、22〜25は各情報収集
処理ルーチン呼出し部11、14,15,17で呼出される情報収
集処理ルーチンである。
タスク(走行中のオンラインタスク)、11は情報収集処
理ルーチン呼出し部、12はSVC処理部、13はシステムタ
スク/非タスク、14と15は別の情報収集処理ルーチン呼
出し部、16はタスクディスパッチャ、17は更に別の情報
収集処理ルーチン呼出し部である。21はSVC処理部12で
実行されるSVC処理実行ルーチン、22〜25は各情報収集
処理ルーチン呼出し部11、14,15,17で呼出される情報収
集処理ルーチンである。
26はタスクからのI/O、資源確保・占有、一定時間処
理中断等、タスクの待ち合わせを伴う処理要求イベント
を記録するイベント制御ブロック(ECB)であり、これ
にタスクID情報(初期値はゼログリア)を記録する領域
を設ける。27はファイル、端末、通信相手タスク/コン
ピュータなどの目的資源である。
理中断等、タスクの待ち合わせを伴う処理要求イベント
を記録するイベント制御ブロック(ECB)であり、これ
にタスクID情報(初期値はゼログリア)を記録する領域
を設ける。27はファイル、端末、通信相手タスク/コン
ピュータなどの目的資源である。
第1図では省略したが、本発明を実施する計算機シス
テムは、オンライン性能測定中か否かを示す状態フラ
グ、各タスクに対してシステム内で一意に識別できるID
を割当て、測定対象のタスクIDをあらかじめ登録してお
く測定対象タスクIDリスト、SVC番号とSVC処理ルーチン
アドレス等の対応を管理しているSVC管理テーブルを有
している。この状態フラグ、測定対象、タスクIDリス
ト、SVC管理テーブルの詳細を第2図に示す。(a)は
性能測定状態フラグ31であり、オペレータや自動運転プ
ログラム等の指示に基づき、オンライン中の性能実測開
始時刻/終了時刻にそれぞれON/OFFに切り替えられる。
即ち、「ON」は性能測定中(性能実測許容)、「OFF」
は性能非測定中(性能実測抑止)を示す。(b)は測定
対象タスクIDリスト32であり、オペレータや自動運転プ
ログラム等が指定する測定対象タスクのID(AやRな
ど)が記憶される。未登録のところは「NULL」である。
(c)はSVC管理テーブル33であり、SVCの種類をSVC番
号で表わし、各SVC番号ごとに、常駐/非常駐ビット、
該当SVC処理実行ルーチンのポインタを示すSVCルーチン
アドレスが登録される。このSVC等でテーブル33に、さ
らに、情報収集処理ルーチン(1)のポインタを示す情
報収集ルーチアドレスを登録しておく。
テムは、オンライン性能測定中か否かを示す状態フラ
グ、各タスクに対してシステム内で一意に識別できるID
を割当て、測定対象のタスクIDをあらかじめ登録してお
く測定対象タスクIDリスト、SVC番号とSVC処理ルーチン
アドレス等の対応を管理しているSVC管理テーブルを有
している。この状態フラグ、測定対象、タスクIDリス
ト、SVC管理テーブルの詳細を第2図に示す。(a)は
性能測定状態フラグ31であり、オペレータや自動運転プ
ログラム等の指示に基づき、オンライン中の性能実測開
始時刻/終了時刻にそれぞれON/OFFに切り替えられる。
即ち、「ON」は性能測定中(性能実測許容)、「OFF」
は性能非測定中(性能実測抑止)を示す。(b)は測定
対象タスクIDリスト32であり、オペレータや自動運転プ
ログラム等が指定する測定対象タスクのID(AやRな
ど)が記憶される。未登録のところは「NULL」である。
(c)はSVC管理テーブル33であり、SVCの種類をSVC番
号で表わし、各SVC番号ごとに、常駐/非常駐ビット、
該当SVC処理実行ルーチンのポインタを示すSVCルーチン
アドレスが登録される。このSVC等でテーブル33に、さ
らに、情報収集処理ルーチン(1)のポインタを示す情
報収集ルーチアドレスを登録しておく。
オンラインタスク10からあるSVCが発行されると、情
報収集処理ルーチン呼出し部11では、状態フラグ31、タ
スクIDリストテーブル32を参照し、状態フラグ31がNO
(性能実測許容)で、かつ、測定対象タスクIDリスト32
に当該タスクIDが登録されている場合、SVC番号をキー
にSVC管理テーブル33から情報収集ルーチンアドレスを
検索し、情報収集処理ルーチン(1)22を起動する。そ
して、情報収集処理ルーチン(1)22による情報収集処
理後、SVC処理部12に制御を渡す。一方、状態フラグ31
がOFF(性能実測抑止)の場合、あるいは状態フラグ31
がONでもタスクIDリスト32に当該タスクIDが記憶されて
いない場合には、情報収集処理ルーチン呼出し部11は情
報収集処理ルーチン(1)22を起動することなく、直ち
にSVC処理部12に制御を渡す。この情報収集処理ルーチ
ン呼出し部11の処理フローを第3図に示す。
報収集処理ルーチン呼出し部11では、状態フラグ31、タ
スクIDリストテーブル32を参照し、状態フラグ31がNO
(性能実測許容)で、かつ、測定対象タスクIDリスト32
に当該タスクIDが登録されている場合、SVC番号をキー
にSVC管理テーブル33から情報収集ルーチンアドレスを
検索し、情報収集処理ルーチン(1)22を起動する。そ
して、情報収集処理ルーチン(1)22による情報収集処
理後、SVC処理部12に制御を渡す。一方、状態フラグ31
がOFF(性能実測抑止)の場合、あるいは状態フラグ31
がONでもタスクIDリスト32に当該タスクIDが記憶されて
いない場合には、情報収集処理ルーチン呼出し部11は情
報収集処理ルーチン(1)22を起動することなく、直ち
にSVC処理部12に制御を渡す。この情報収集処理ルーチ
ン呼出し部11の処理フローを第3図に示す。
上記処理要求を引き起こすSVCと対応し、性能評価中
でかつ性能測定対象のタスクからの処理要求の場合のみ
起動される情報収集処理ルーチン(1)22に於いては、
最低限、時刻、タスクIDやSVC名を収集する。
でかつ性能測定対象のタスクからの処理要求の場合のみ
起動される情報収集処理ルーチン(1)22に於いては、
最低限、時刻、タスクIDやSVC名を収集する。
SVC処理部12では、SVC番号をキーにSVC管理テーブル3
3からSVCルーチンアドレスを検索し、当該SVC処理実行
ルーチン21を起動し、その処理を実行する。このSVC処
理部12におけるI/O等を処理するSVC実行ルーチンの中
で、イベント制御ブロック(ECB)26にタスクID情報を
設定する。
3からSVCルーチンアドレスを検索し、当該SVC処理実行
ルーチン21を起動し、その処理を実行する。このSVC処
理部12におけるI/O等を処理するSVC実行ルーチンの中
で、イベント制御ブロック(ECB)26にタスクID情報を
設定する。
I/O等の処理要求イベントを実行するシステムタスク
/非タスク13に於いては、イベント制御ブロック(EC
B)を待ちイベントキューから取り出す時、まず、情報
収集処理ルーチン呼出し部14を起動する。イベント制御
ブロックのタスクID領域を調べ、測定対象イベントであ
る(タスクIDが設定されている)場合には、イベントの
実行開始契機に情報収集処理ルーチン(2)23を呼び、
そこで最低限、時刻、タスクUID、処理対象資源名やREA
D/WRITEなどの実行イベント種別、待ちECB数、他の待ち
タスクのIDを収集する。その後、システムタスク/非タ
スク13では、通常のイベント実行を行い、その後、情報
収集処理ルーチン呼出し部15を起動する。情報収集処理
ルーチン呼出し部15は、上記と同様の条件の場合、情報
収集処理ルーチン(3)24を呼び、最低限、時刻、タス
クID、処理対象資源名やイベント処理結果(正常/異常
等)を収集する。
/非タスク13に於いては、イベント制御ブロック(EC
B)を待ちイベントキューから取り出す時、まず、情報
収集処理ルーチン呼出し部14を起動する。イベント制御
ブロックのタスクID領域を調べ、測定対象イベントであ
る(タスクIDが設定されている)場合には、イベントの
実行開始契機に情報収集処理ルーチン(2)23を呼び、
そこで最低限、時刻、タスクUID、処理対象資源名やREA
D/WRITEなどの実行イベント種別、待ちECB数、他の待ち
タスクのIDを収集する。その後、システムタスク/非タ
スク13では、通常のイベント実行を行い、その後、情報
収集処理ルーチン呼出し部15を起動する。情報収集処理
ルーチン呼出し部15は、上記と同様の条件の場合、情報
収集処理ルーチン(3)24を呼び、最低限、時刻、タス
クID、処理対象資源名やイベント処理結果(正常/異常
等)を収集する。
タスクディスパッチャ16に於いては、ディスパッチ契
機で、やはり情報収集処理ルーチン呼出し部17を起動す
る。情報収集処理ルーチン呼出し部17はイベント制御ブ
ロックのタスクID領域を調べ、測定対象イベントである
場合、情報処理ルーチン(4)25を呼び、最低限、時
刻、タスクID、ディスパッチ完了記録を収集し、その
後、従来通りディスパッチを行う。
機で、やはり情報収集処理ルーチン呼出し部17を起動す
る。情報収集処理ルーチン呼出し部17はイベント制御ブ
ロックのタスクID領域を調べ、測定対象イベントである
場合、情報処理ルーチン(4)25を呼び、最低限、時
刻、タスクID、ディスパッチ完了記録を収集し、その
後、従来通りディスパッチを行う。
第4図は上記情報収集処理ルーチン呼出し部14,15,17
の処理フローをまとめて示したものである。また、第5
図は各情報収集処理ルーチン(1)〜(4)とその収集
情報の対応を示したものである。
の処理フローをまとめて示したものである。また、第5
図は各情報収集処理ルーチン(1)〜(4)とその収集
情報の対応を示したものである。
第6図及び第7図は、本発明による具体的処理例であ
り、はI/O等のイベントの発行元タスク、はイベン
ト制御ブロック、はシステムタスクまたは非タスク、
はファイル・端末等の目的資源、は情報収集処理ル
ーチン群(1)〜(4)をそれぞれ示している。
り、はI/O等のイベントの発行元タスク、はイベン
ト制御ブロック、はシステムタスクまたは非タスク、
はファイル・端末等の目的資源、は情報収集処理ル
ーチン群(1)〜(4)をそれぞれ示している。
例えば、オンライン通常運転状態では、状態フラグは
OFF(非性能測定状態)となっており、オンラインタス
ク(ID=A)でSVCαの発行を契機としてイベントが発
生した場合、本来のイベント対応の処理は次の通りとな
る。即ち、第6図に於いて、(i)SVCαの実行ルーチ
ンが当該タスクID情報をイベント制御ブロック(ECB)
に書き込み、これをシステムタスク/非タスクへ伝達→
(ii)システムタスク/非タスクでのイベントのキュー
イング→(iii)イベントの実行開始処理→(iv)イベ
ント実行結果の受信処理(この時点で再試行可能なエラ
ーの場合、(iii)の段階に戻り、何回かイベント実行
が繰り返されることもある)→(v)システムタスク/
非タスクからタスクディスパッチャに対する、イベント
発行先へのPOST通知依頼→(vi)タスクディスパッチャ
からイベント発行元へのPOST処理の順に従い実行され
る。
OFF(非性能測定状態)となっており、オンラインタス
ク(ID=A)でSVCαの発行を契機としてイベントが発
生した場合、本来のイベント対応の処理は次の通りとな
る。即ち、第6図に於いて、(i)SVCαの実行ルーチ
ンが当該タスクID情報をイベント制御ブロック(ECB)
に書き込み、これをシステムタスク/非タスクへ伝達→
(ii)システムタスク/非タスクでのイベントのキュー
イング→(iii)イベントの実行開始処理→(iv)イベ
ント実行結果の受信処理(この時点で再試行可能なエラ
ーの場合、(iii)の段階に戻り、何回かイベント実行
が繰り返されることもある)→(v)システムタスク/
非タスクからタスクディスパッチャに対する、イベント
発行先へのPOST通知依頼→(vi)タスクディスパッチャ
からイベント発行元へのPOST処理の順に従い実行され
る。
一方、性能測定期間では、状態フラグはオンライン性
能測定中(ON)の状態で、タスクID=Aが測定対象とな
っており、オンラインタスク(ID=A)がSVCαが発生
した場合、第7図の(i)〜(vi)の手順にて実行され
る。即ち、(i)まず、情報収集処理ルーチン(1)に
制御移行し、そこでイベント発生に係わる情報をメモリ
バッファ等へ記録し、→(ii)次にSVCαの実行ルーチ
ンに於いて、ECBにタスクID情報を記録し、これをシス
テムタスク/非タスクへ伝達し、→(iii)これを受
け、システムタスク/非タスクではイベントをキューイ
ングし、→(iv)測定対象タスクからのイベントの実行
時点で、システムタスク/非タスクは情報収集処理ルー
チン(2)を走行させ、そこでイベント実行開始に係わ
る情報をメモリバッファ等へ記録した後で、イベントの
実行開始処理を行い、→(v)測定対象タスクからのイ
ベントの実行結果を受信した時点で、システムタスク/
非タスクは情報収集処理ルーチン(3)を走行させ、そ
こでイベント完了に係わる情報をメモリバッファ等へ記
録した後で、本来のイベント受信処理を行い、→(vi)
システムタスク/非タスクはタスクディスパッチャに対
する、イベント発行元へのPOST通知依頼を行い、→(vi
i)タスクディスパッチャでは、情報収集処理ルーチン
(4)を走行させ、そこで時刻、ディスパッチャ実行表
示、発行元タスクID等の収集情報をメモリバッファ等へ
記録させた後で、イベント発行元へのPOST処理を行う。
能測定中(ON)の状態で、タスクID=Aが測定対象とな
っており、オンラインタスク(ID=A)がSVCαが発生
した場合、第7図の(i)〜(vi)の手順にて実行され
る。即ち、(i)まず、情報収集処理ルーチン(1)に
制御移行し、そこでイベント発生に係わる情報をメモリ
バッファ等へ記録し、→(ii)次にSVCαの実行ルーチ
ンに於いて、ECBにタスクID情報を記録し、これをシス
テムタスク/非タスクへ伝達し、→(iii)これを受
け、システムタスク/非タスクではイベントをキューイ
ングし、→(iv)測定対象タスクからのイベントの実行
時点で、システムタスク/非タスクは情報収集処理ルー
チン(2)を走行させ、そこでイベント実行開始に係わ
る情報をメモリバッファ等へ記録した後で、イベントの
実行開始処理を行い、→(v)測定対象タスクからのイ
ベントの実行結果を受信した時点で、システムタスク/
非タスクは情報収集処理ルーチン(3)を走行させ、そ
こでイベント完了に係わる情報をメモリバッファ等へ記
録した後で、本来のイベント受信処理を行い、→(vi)
システムタスク/非タスクはタスクディスパッチャに対
する、イベント発行元へのPOST通知依頼を行い、→(vi
i)タスクディスパッチャでは、情報収集処理ルーチン
(4)を走行させ、そこで時刻、ディスパッチャ実行表
示、発行元タスクID等の収集情報をメモリバッファ等へ
記録させた後で、イベント発行元へのPOST処理を行う。
第8図に、各情報収集処理ルーチン(1)〜(4)で
のオンライン中収集情報の例、及びそれによる分析例を
示す。なお、分析処理はオフラインで行う。このよう
に、オンライン動作中にシステムプログラムの修正をす
ることなく、かつ情報収集オーバーヘッドが特定イベン
トに関する処理に限定した形で、イベント処理時間の分
析が可能となる。
のオンライン中収集情報の例、及びそれによる分析例を
示す。なお、分析処理はオフラインで行う。このよう
に、オンライン動作中にシステムプログラムの修正をす
ることなく、かつ情報収集オーバーヘッドが特定イベン
トに関する処理に限定した形で、イベント処理時間の分
析が可能となる。
ここで、上記情報収集処理プログラムとの間の制御移
行に伴い、本来のプログラム間制御移行が従来通りに行
われる必要がある。このため、図では簡略化のために省
略されているが、当然ながら、新・旧PSW、レジスタ等
のプログラム間制御移行用の引継ぎ情報を本来のプログ
ラムの呼び出し前の状態(次の実行アドレスは当該SVC
処理プログラムの実行アドレス)でセーブし、終了後そ
の状態にリバイブする機能を持ち合せている。
行に伴い、本来のプログラム間制御移行が従来通りに行
われる必要がある。このため、図では簡略化のために省
略されているが、当然ながら、新・旧PSW、レジスタ等
のプログラム間制御移行用の引継ぎ情報を本来のプログ
ラムの呼び出し前の状態(次の実行アドレスは当該SVC
処理プログラムの実行アドレス)でセーブし、終了後そ
の状態にリバイブする機能を持ち合せている。
また、第6図及び第7図の例では、I/O系イベント処
理の例を示したが、一定時間待ち合わせるマクロの場合
も、本発明方式に包含される。即ち、これは目的資源と
システムタスク/非タスクによるイベントの実行や実行
完了処理並びに、情報収集処理ルーチン(2)及び
(3)を省略した縮退例に該当する。
理の例を示したが、一定時間待ち合わせるマクロの場合
も、本発明方式に包含される。即ち、これは目的資源と
システムタスク/非タスクによるイベントの実行や実行
完了処理並びに、情報収集処理ルーチン(2)及び
(3)を省略した縮退例に該当する。
また、第1図の実施例で、各情報収集処理ルーチン
は、OSと同等の権限を持たせたプログラムで構成し、必
要機能を加えることで、第8図の例以外の情報収集も可
能である。
は、OSと同等の権限を持たせたプログラムで構成し、必
要機能を加えることで、第8図の例以外の情報収集も可
能である。
以上述べたように、本発明では、性能分析情報の収集
は、指定タスクに関するイベントに限定した情報収集を
行うことにより、オンライン性能への影響を最小限度と
するものである。また、その後この収集情報をオフライ
ンシステムのみで編集・分析することにより、オンライ
ン性能への影響をさらに減少させることができる。
は、指定タスクに関するイベントに限定した情報収集を
行うことにより、オンライン性能への影響を最小限度と
するものである。また、その後この収集情報をオフライ
ンシステムのみで編集・分析することにより、オンライ
ン性能への影響をさらに減少させることができる。
また、ログ情報では得られない、性能ネックの直接的
原因を解明できる具体的オンラインの生データ(I/O実
行時間や待ち時間の増大を招いた資源名、タスク名な
ど)を、オンライン・プログラムの修正なしで得られる
ことから、性能ボトルネックの原因究明に係わる所要稼
動を大幅に削減するとともに、その早期解消が図られ
る。
原因を解明できる具体的オンラインの生データ(I/O実
行時間や待ち時間の増大を招いた資源名、タスク名な
ど)を、オンライン・プログラムの修正なしで得られる
ことから、性能ボトルネックの原因究明に係わる所要稼
動を大幅に削減するとともに、その早期解消が図られ
る。
今後、オンラインシステムの業務の高度化に伴い、ハ
ード/ソフトが増々大規模・複雑化し、イベントのやり
取りが複雑化する傾向にあり、イベント処理に係わるシ
ステム性能問題の早期かつ簡易な究明手段の提供の重要
性は高まる一方である。本発明はこれに応える新方式と
位置づけられる。
ード/ソフトが増々大規模・複雑化し、イベントのやり
取りが複雑化する傾向にあり、イベント処理に係わるシ
ステム性能問題の早期かつ簡易な究明手段の提供の重要
性は高まる一方である。本発明はこれに応える新方式と
位置づけられる。
第1図は本発明方式の概念図、第2図は状態タスク、測
定対象タスクIDリスト、SVC管理テーブルの詳細説明
図、第3図及び第4図は情報収集処理ルーチン呼出し部
の処理フロー図、第5図は情報収集処理ルーチン群の収
集情報を示す図、第6図及び第7図は第1図による具体
的処理例を示す図、第8図は具体的処理結果を示す図で
ある。 10……オンラインタスク、11,14,15,17……情報収集処
理ルーチン呼出し部、12……SVC処理部、13……システ
ムタスク/非タスク、16……タスクディスパッチャ、21
……SVC処理実行ルーチン、22〜25……情報収集処理ル
ーチン。
定対象タスクIDリスト、SVC管理テーブルの詳細説明
図、第3図及び第4図は情報収集処理ルーチン呼出し部
の処理フロー図、第5図は情報収集処理ルーチン群の収
集情報を示す図、第6図及び第7図は第1図による具体
的処理例を示す図、第8図は具体的処理結果を示す図で
ある。 10……オンラインタスク、11,14,15,17……情報収集処
理ルーチン呼出し部、12……SVC処理部、13……システ
ムタスク/非タスク、16……タスクディスパッチャ、21
……SVC処理実行ルーチン、22〜25……情報収集処理ル
ーチン。
Claims (1)
- 【請求項1】走行中のタスクから他への処理依頼イベン
トがI/O系マクロ、CPU/メモリ等の資源確保・占有系マ
クロなどのSVC発行により行われ、またタスクのレディ
状態への移行が、POST系/GAP系各マクロのSVC発行によ
り行われ、また走行状態への復帰がタスクバィスパッチ
ャにより行われる計算機システムであって、 オンライン処理性能測定中か否かを示す状態フラグと、
測定対象のタスクIDを保持しているタスクIDと、SVC毎
にSVC処理ルーチンアドレスに加えて情報収集処理ルー
チンアドレスも保持するSVC管理テーブルを設け、オン
ラインタスクからSVCが発行された場合、前記状態フラ
グが性能測定中を示し、かつ、前記タスクIDリストに当
該タスクIDが存在すると、前記SVCテーブルを参照し、
第1の情報収集処理ルーチンを起動して、時刻やタスク
IDやSVC名などを収集して、その後、SVC処理ルーチンを
実行する計算機システムにおいて、 I/O等の処理要求イベントを実行するシステムタスク/
非タスクは、処理時間要求イベントを記憶するイベント
制御ブロック(ECB)を待ちイベントキューから取り出
す時、イベント制御ブロックのタスクID領域を調べ、測
定対象イベントである(タスクIDが設定されている)場
合には、イベントの実行開始契機に第2の情報収集処理
ルーチンを起動して、時刻、タスクID、処理対象資源名
やREAD/WRITEなどの実行イベント種別、待ちECB数、他
の待ちタスクのIDを収集した後で、通常のイベント実行
を行い、さらにその後、イベント完了契機で第3の情報
収集処理ルーチンを起動して、時刻、タスクID、処理対
象資源名やイベント処理結果(正常/異常等)を収集
し、それ以外の場合には、直接通常のイベントを実行
し、 タスクディスパッチャは、ディスパッチ契機で、イベン
ト制御ブロックのタスクID領域を調べ、測定対象イベン
トである場合、第4の情報収集処理ルーチンを起動し
て、時刻、タスクID、ディスパッチ完了記録を収集し、
その後、ディスパッチを行い、それ以外では直接ディス
パッチを行う、ことを特徴とするオンライン中イベント
処理時間分析方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2185625A JP2882859B2 (ja) | 1990-07-13 | 1990-07-13 | オンライン中イベント処理時間分析方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2185625A JP2882859B2 (ja) | 1990-07-13 | 1990-07-13 | オンライン中イベント処理時間分析方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0476639A JPH0476639A (ja) | 1992-03-11 |
JP2882859B2 true JP2882859B2 (ja) | 1999-04-12 |
Family
ID=16174063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2185625A Expired - Fee Related JP2882859B2 (ja) | 1990-07-13 | 1990-07-13 | オンライン中イベント処理時間分析方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2882859B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4983636B2 (ja) * | 2008-02-12 | 2012-07-25 | 日本電気株式会社 | トランザクション装置、遅延障害分析装置、遅延障害分析方法およびプログラム |
JP5696603B2 (ja) | 2011-06-29 | 2015-04-08 | 富士通株式会社 | 計算機システム、計算機システムの電力制御方法およびプログラム |
-
1990
- 1990-07-13 JP JP2185625A patent/JP2882859B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0476639A (ja) | 1992-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5649184A (en) | Symmetric/asymmetric shared processing operation in a tightly coupled multiprocessor | |
US5247664A (en) | Fault-tolerant distributed database system and method for the management of correctable subtransaction faults by the global transaction source node | |
US8141087B2 (en) | Resolving computing resource deadlocks based on priority and dependent processes | |
US5634120A (en) | Computer system supporting utilization of utility functions applicable to concurrently executing jobs by monitoring job excution characteristics and determining eligible job combinations for utility function | |
US6308243B1 (en) | Method and system for controlling exclusive access to shared resources in computers | |
CN112130976A (zh) | 一种基于rest的多引擎大数据任务管理方法 | |
US5745757A (en) | Multiprocessor system with microprogrammed means for dispatching processes to processors | |
JP2882859B2 (ja) | オンライン中イベント処理時間分析方式 | |
JP4928480B2 (ja) | ジョブ処理システムおよびジョブ管理方法 | |
US5613133A (en) | Microcode loading with continued program execution | |
JP3318121B2 (ja) | 仮想計算機システム | |
US5848411A (en) | Method for distributedly processing a plurality of jobs in a data processing system | |
JP3097750B2 (ja) | オンライン中の情報収集方式 | |
US6173249B1 (en) | Method of determining termination of a process under a simulated operating system | |
CN110955507B (zh) | 基于vxWorks系统的多任务访问同一IIC总线的方法 | |
JP3437284B2 (ja) | サ−ビス処理システム | |
JPH086819A (ja) | デバイスドライバプログラムのテスト装置およびその方法 | |
JPH04213126A (ja) | ソフトウェアテスト方式 | |
JPH11265278A (ja) | オペレーティングシステムの動的機能管理方法 | |
JP2517859B2 (ja) | 並列プロセス管理方法 | |
JP2882860B2 (ja) | オンライン中タスク中断時間分析方式 | |
JP2564978B2 (ja) | 通信制御プログラムのトレースデータ収集方式 | |
JP2919457B1 (ja) | 二重化装置i/o制御方式およびそのプログラム記録媒体 | |
JPH08286950A (ja) | 情報処理装置及びトレース情報格納方法 | |
JPH10161915A (ja) | 後発ジョブ優先の排他制御を実現するデータ引き継ぎ方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |