JPH05197594A - データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム - Google Patents

データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム

Info

Publication number
JPH05197594A
JPH05197594A JP4135659A JP13565992A JPH05197594A JP H05197594 A JPH05197594 A JP H05197594A JP 4135659 A JP4135659 A JP 4135659A JP 13565992 A JP13565992 A JP 13565992A JP H05197594 A JPH05197594 A JP H05197594A
Authority
JP
Japan
Prior art keywords
resource
event
data
memory
time
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
JP4135659A
Other languages
English (en)
Other versions
JPH0816877B2 (ja
Inventor
David Addy Bishop
ダビド・アディ・ビショップ
Timothy Manfred Holck
チモスィ・マンフレッド・ホルク
Telford Knox Jr
テルホード・ノックス・ジュニア
Charles Lincoln Raby
チャールス・リンカーン・ラビィ
Robert Charles Shay
ロバート・チャールス・シャイ
Mark David Turner
マーク・ダビド・ターナ
Stephen Asa Yeamans
ステハン・アサ・イーマンズ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05197594A publication Critical patent/JPH05197594A/ja
Publication of JPH0816877B2 publication Critical patent/JPH0816877B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/835Timestamp
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

(57)【要約】 【目的】 データ処理システムの資源事象追跡データを
実時間で捕獲し、減縮処理して、データ解析を実時間で
実行することを図る。 【構成】 資源31の多重処理事象データを実時間で収
集し23、該事象データのうち関連のあるもののみを通
し、同類事象を併合して処理を要求するデータを減縮
し、データ処理システムのかかる動作を直ちに正確に表
示して25、実時間の支援を与えうるようになし、資源
データの実時間による捕獲及び減縮を行うことを特徴と
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ処理システムに関
し、特にデータ処理システムの資源利用における図形監
視に関する。
【0002】
【従来の技術】本特許書類の開示の一部には著作権によ
る保護を受ける資料が含まれている。本著作権所有者は
特許商標局の特許ファイル又は記録に開示されている特
許書類又は特許公開の何人によるファクシミリ複写に対
しては異議を唱えることはないが、それ以外の場合はそ
れが何であろうとすべて著作権を留保する。
【0003】次に、関連がある特許出願を相互参照す
る。1989年12月27日に出願され、本願と同一譲
受人に譲渡された出願の出願番号第07/458045
号“ソフトウェア監視(又はモニタ)及び開発方法及び
装置”をここに参照のため編入する。
【0004】ジェイ・イー・デウィトほかの名義により
1991年6月10日に提出された出願の出願番号(I
BM内部整理番号AT9−91−028)“データ処理
システム用実時間システムの資源監視”をここに参照の
ため編入する。
【0005】ディー・アール・ガートナーほかの名義に
より1991年6月10日に提出された出願の出願番号
(IBM内部整理番号AT9−91−036)“動的可
変更新及び自動境界付に対する支援を有するデータ処理
システム用実時間システムの資源監視”をここに参照の
ため編入する。
【0006】データ処理システムの効率及び利用を継続
的に改良するため利用者側に立ち、これらシステムの動
作の下に何が発生したかを使用者に理解させる助けとし
て各種のデータ監視手段が開発されてきた。関係のある
データ処理システムの資源は、例えばランダム・アクセ
ス・メモリー(RAM)の使用、周辺装置の使用、及び中央
処理システム (CPU)の使用中/遊休時間等のようなもの
から成る。これら資源はデータ処理システム全体の処理
能力の効率を更に高めるため、データ処理システムのオ
ペレータに対し、種々のシステム・パラメータを精細に
同調させる鍵情報を与えることができる。
【0007】オペレーティング・システムのユーザーは
如何に多くのメモリーが使用されているかに関する情報
を必要とする。メモリーの利用、特にメモリーの実効ペ
ージ・セットに関する情報は、コンピュータの物理的メ
モリーが現在活動状態にあるアプリケーションに対して
十分であるかどうかを示すものとして有益である。不十
分なメモリーの割振りは、その不十分さに基づき発生し
うる余分なスワッピング又はページングのために、不十
分なシステム動作を引き起こす可能性がある。先行する
システム・メモリーを解析する製品は、システムに存在
するシステム・メモリーの実際の量に依存して、その実
行に15−45秒程度の時間を消費している。
【0008】監視中のシステムにおいて、提供を受ける
情報は手段の割込みが演算項目でないときにおいての
み、個々のアプリケーションによって消費される RAMの
確認のために有益である。これら先行する製品はテキス
ト・スクリーンを使用する。その他、従来報告された技
術及び手段は RAMの使用を評価し又は計算するために専
門化したハードウェアの補助を必要とする。
【0009】他の種類のデータ処理システムの資源を測
定するためには、別の技術が使用されてきた。システム
自体による直接内部監視も既知方式の1つである。これ
ら技術は典型的に、データの捕獲及びある種類の大容量
記憶装置に対する捕獲されたデータの書込みのために、
データ処理システム自体の資源を大きな割合で消費す
る。その後、そのデータの読出し及び解析にそれに続く
処理手順が使用される(すなわち、実時間ではない解
析)。
【0010】周辺装置に対する装置の利用率は、歴史的
に、各I/O (入力/出力)に対する開始時間及び終了時
間を精密に測定することによって直接測定されてきた。
それにより個々のI/O 時間を計算することができる。従
って、与えられた期間中のこれらI/O 時間を総和するこ
とによって、合計使用中時間の計算が可能であった。そ
の後、装置の利用率は合計使用中時間を合計経過時間で
割ることによって計算される。このような取りかかり方
は2つの問題を生み出した。第1に、それは、エンティ
ティがI/O の制御により(通常、装置のハードウェア及
び(又は)オペレーティング・システムのどちらかで)
直接I/O の開始及び停止時間が測定され、及び記録する
ことが要求されることである。
【0011】次に、それは、これらI/O 事象を正確に刻
時するために十分な分解能を有するハードウェア・タイ
マを必要とすることである。例えば、パーソナル・コン
ピュータのようなあるシステムにおいては、これら評価
基準のどちらにも合致しない。換言すると、そのハード
ウェア又はオペレーティング・システムは I/O時間を測
定しない。その上、現在の多くのパーソナル・コンピュ
ータのハードウェア・タイマは正しい I/O時間を刻時す
ることができない程その分解能は悪い(32ミリ秒)。
従って、現存のパーソナル・コンピュータ・システムに
対する装置の利用率はこれら従来の方法の使用では得る
ことができない。
【0012】データ処理システムの CPUの遊休時間と
は、コンピュータの中央処理装置(CPU) が如何なるタス
クにも利用されていない時間量をいう。前述の CPU遊休
時間の測定方法は一連のタスクを実行するためスレッド
を使用した。すなわち、全使用可能な CPU時間にスレッ
ドの使用が許された場合、スレッドが実行したタスクの
数と実行することができると仮定したタスクの数とが比
較された。しかし、この処理手順は、仮定的タスクの数
は異なるデータ処理システムでは異なるということを考
慮していない。又、タスクを遂行するに必要な最短時間
を決定するに、システム特定の目盛調整アルゴリズムが
要求される。この目盛調整方法は信頼できるものではな
く、システム間を移動するとき多くの実際的問題を提供
する。
【0013】
【発明が解決しようとする課題】一般に、上記の型のシ
ステムはそこでパホーマンス・データが収集されるもの
ではなく、更に解析するため、収集システムにより比較
的遅い大容量記憶装置にパホーマンス・データを書込む
ようにしている。これは、データ捕獲方法がデータ解析
に使用される方法より相当高速に動作するためである。
かくして、大容量記憶装置は異なる演算速度で動作する
方法を許容するための緩衝記憶機構として使用される。
更にその上、データ収集システムから発生したデータ
は、その解析方法がそのように大量のデータを管理し、
又は維持することができない程、本質的に多量のもので
ある。この強制的事項は更に中間的大容量記憶装置に対
し追加の記憶容量を要求する元になった。
【0014】この中間緩衝記憶方式の結果として、その
解析は実時間で実行できず、むしろ遅延することにな
る。かかる如く、システム・パホーマンス及びオペレー
ションの如何なる報告書も、又は他の型のフィードバッ
クも実際のパホーマンスと共に長年の間時代遅れであっ
た。今日のデータ処理システムは多重タスク及び複数ユ
ーザーに対する支援を含み、更に複雑な操作環境を支援
するため、このようなパホーマンス・データの遅延は重
大なシステムの隘路を引起こし、いずれか問題が発生し
たとき、それが検出される前に通過してしまい、報告さ
れずに続行してしまうかもしれないという問題があっ
た。
【0015】データ解析に使用される他の方法は著しい
量の、CPU のような、収集システムの資源を要求する。
その結果、その解析はそのような大きな割合いの資源を
消費するため、データが偏倚して基本的システム・オペ
レーションの意味がなくなる程、実時間でその解析を実
行することができない。
【0016】あるシステムでは、上記のような欠点の克
服が試みられたが、それを実行する際、多重処理システ
ムの処理レベルにおける情報の捕獲及び維持に失敗し
た。全体的システムの使用により、むしろ監視すること
はできるが、システムの実行を不完全にするかもしれな
い特定の処理に焦点を当てる能力を持たない。このよう
な処理分解能の欠陥はシステム全体の実行が不完全かも
しれないにも拘らず、システムの処理が犯人であるとい
う意味のない表示を示す結果となった。
【0017】従って、本発明の目的は改良した資源モニ
タを提供することである。更に、本発明の目的は実時間
で動作する資源モニタを提供することである。更に、本
発明の他の目的は事象追跡データを捕獲する改良方法を
提供することである。更に、本発明の他の目的は事象追
跡データを実時間で縮小する改良方法を提供することで
ある。
【0018】
【課題を解決するための手段】本発明は、実時間で利用
可能な又は利用するメモリー、CPU 、又は周辺装置のよ
うなユーザ指定の内部システム資源の図形表示を供給す
ることによって上記の問題及び欠点を解決する。データ
処理システムの資源の“状態”の図形表示は実時間で保
持される上、更に、かかる情報の供給によるシステム・
パホーマンスに対する衝撃は最小限に維持される。これ
は、固有のデータ縮小技法と連結した特定化された装置
ドライバを含む種々技法の組合わせにより達成される。
【0019】これは多重処理システムの処理の細分性に
より、情報の捕獲を許容し、そして与えられた処理に対
する資源を監視することができる。これら資源監視の結
果の図形は従来のデータ処理システム表示のウィンドウ
又は表示窓を通してユーザに供給され、そのデータは実
時間で更新される。この実時間による支援はデータ処理
システムのオペレーションの瞬時、正確な表示を供給す
る。これら表示は監視中のシステムの全体的効率を改良
するため、ユーザがそのデータ処理システムの識別、分
離、及び細同調に使用することができる。
【0020】RAM 実効ページ・セットを含むメモリーの
利用に対し、装置ドライバによる最も最近使用(LRU)の
タイムスタンプ(timestamp) の比較に超効率的機構が使
用される。
【0021】ディスク駆動機構又は通信線のような周辺
装置の利用測定のため、周辺装置による使用中時間の平
均時間量が計算される。この測定に使用される方法は前
述の装置利用情報を得る方法が要求したような装置ファ
ームウェアによる追加の補助又は精密なタイミング、ハ
ードウェアを必要としない。周辺装置ドライバのフック
(hook)を使用することによって、オペレーティング・シ
ステムの最少の補助が達成される。
【0022】CPU を利用する処理に対しては、処理シス
テムの最低優先権レベル又は遊休レベルが割当てられ
る。この遊休事象の作動中の時間の長さは CPUの遊休時
間を表わす。
【0023】
【実施例】以下、添付図面に基づき、本発明の実施例を
詳細に説明する。概 説 以下説明する方法及びシステムは RAMの利用、 CPU遊休
時間、及び周辺装置の利用を含むデータ処理システム(s
tstem's)の資源を監視する独特な方法を開示する。この
監視はそのシステムの内部か、又は従来の通信方法を介
して取付けられた遠隔装置のいずれかによって実行する
ことができる。各監視される夫々の資源に対し、種々の
監視及び追跡技法が使用される。データは多重処理環境
下の処理レベルにおいて捕獲され供給することができ
る。
【0024】データ・キャッシュのような他の型のデー
タ処理システム資源においても、本発明の範囲から離れ
ることなく、本発明の類似する技法を用いて同様に監視
することができる。資源パラメータの実時間図形表示と
監視変数のユーザ変更に対する支援とを有する全体的計
画が使用容易なシステムに統合的に実装される。以下の
説明において使用される“実時間”の語は、ウエブスタ
の新大学辞典により、“事象が発生し、事象の報告又は
記録が実際にその発生と同時である実際の時間”を意味
する。
【0025】次に、図1において、ここに開示する監視
システム21は概念的に2つの異なるオペレーション、
すなわちデータ収集機能(DCF)23及び資源モニタ(R
M)25とに分割される。これら2つのオペレーティン
グ・モデル間のインターフェースとしてアプリケーショ
ン・プログラミング・インターフェース27(又はAPI)
が使用される。パイプ29と称するものは、当業者に容
易に知られ、更に“IBM OS/2プログラミング・ツー
ル及び情報(1.2版)”に記述され、及び背景資料と
して参照欄で編入されたように、DCF 23とRM25との
間の接続の設定に使用される。DCF 23は追跡する種々
資源31に対する鍵パホーマンス・データを収集する。
【0026】RM25は資源使用の描写を与える。この好
ましい実施例による描写は従来のデータ処理システムの
表示33に図形表示するものである。パイプ29と称す
るものが使用されるので、システムが従来の通信技術を
介して接続された場合、本表示システムは資源モニタ2
5を走行するコンピュータとは異なるコンピュータで走
行するデータ収集機能23を持つことができる。これは
パイプなるものの使用がネットワークの透明オペレーシ
ョンを許容するためである。
【0027】次に、図2において、本システム21は、
データ収集技法35、データ縮小技法37、及び表示技
法39の3つの副部類オペレーションに機能的に分割さ
れる。データ収集技法35は RAM実効ページ・セットの
利用と周辺装置の抽出とを含む。データ縮小技法37
は、CPU 遊休時間と、追跡データの濾過と、他の縮小方
法とを決定するための遊休スレッドの測定を含む。
【0028】最後に、表示技法39は動的監視及び多重
表示窓の窓開けを含む。図2は更に、図1の概念モデル
の上にオーバーレイされているこの機能的表示を例示す
る。図2に見ることができるように、データ収集技法3
5はデータ収集機能23の中に完全に包含される。デー
タ表示技法39は資源モニタ25に完全に包含される。
【0029】データ縮小技法37はデータ収集機能23
と資源モニタ25の両方に共存する。後述するように、
データ縮小技法37のための責任の分担は監視中の資源
のデータ捕獲と最終的図形描写の両方の有効性を考慮す
る。次に、この好ましい実施例で監視する各資源に対す
る特定の方法について記述する。
【0030】RAMの利用 監視することができる図1のシステム資源31の1つは
RAMの利用である。ここに開始する監視方法は全オペレ
ーティング・システムに対するメモリーの利用を早急に
(ミリ秒で)計算する。結果は実時間で図形的に表示さ
れる。本実施例におけるオペレーティング・システムは
IBM OS/2(アイ・ビー・エム社(IBM Corp.) の商標)オ
ペレーティング・システムであるが、これらの概念は当
業者により如何なる他の型のコンピュータ・オペレーテ
ィング・システムにも容易に適用することができる。
【0031】次に、図3において、各種部類の全物理的
メモリー41が定義され、各それぞれの部類の利用法の
図形描写を示す。固定メモリー43はスワップ・アウト
又は放棄できないセグメント化したスワッピング・メモ
リー計画である。このメモリーを所有するアプリケーシ
ョンがロードされている限り、それは RAMに割り振られ
たままである。実効ページ・セット・メモリー45は、
(i) スワップ可能でも、放棄可能でもないメモリー・セ
グメントのすべて、(ii)スワップ可能/放棄可能であ
り、適用可能な筋書の遂行中使用されるメモリー・セグ
メントのすべて、と定義される。
【0032】使用されるメモリー47は物理的メモリー
に存在し、システムによって割り振られた RAMである
(すなわち、割り振られ、スワップ・アウトされないメ
モリー)。実効ページ・セット・メモリーは瞬間値では
なく、“実効ページ・セット期間”と称する期間中使用
されるメモリーである。実効ページ・セット期間は動的
に変化することができ、詳細は動的監視部で説明する。
【0033】全システムの実効ページ・セット・メモリ
ー45を計算するため、強化された装置ドライバが使用
され、メモリー利用に対する非常に急速な計算を行う。
それはユーザが動的に指定した実効ページ・セット期間
を使用する。装置ドライバはアセンブリ言語に符号化さ
れ、最良パホーマンス及び被保護資源に対する禁止され
ていないアクセスのためにリング0において走行し、従
来技術によって既に行われていたようなセッションによ
ってではなく、全システムに対する実効ページ・セット
を取得する。リング0は当業者に知られているように、
オペレーティング・システムのコア・レベルにおいて走
行し、CPU ハードウェアに最も近いものである。本好ま
しい実施例の OS/2 オペレーティング・システムのレベ
ル1−3のような他のレベルは CPUの内部資源の夫々よ
り低いアクセス・レベルにおいて走行する。
【0034】図4において、報告された実効ページ・セ
ット・メモリーは最後の“実効ページ・セット期間”5
1秒間にアクセスしたメモリーの百分率である。それは
“抽出期間”53秒ごとに更新され、又はスナップショ
ットが取られる。本発明は実効ページ・セット・メモリ
ーを計算するため、メモリー使用のスライディング・ウ
ィンドウ55を使用する。抽出期間ごとに取られるメモ
リーのスナップショットは全メモリー・セグメントに対
する最も最近使用(LRU) のタイムスタンプ(timestamps)
をチェックする(タイムスタンプする方法は後の装置ド
ライバ部において記述する)。LRU タイムスタンプは、
最近のメモリー・セグメントは如何にアクセスされたか
について述べる。各スナップショットのために、下記2
つの値が見出される。
【0035】1.メモリーの全内容に対する最終 LRUタ
イムスタンプ。この値は、最も最近アクセスしたメモリ
ー部がアクセスされた最終時である。この値は後に“実
効ページ・セット期間”秒に使用される。 2.“実効ページ・セット期間”秒前に保管された LRU
タイムスタンプ値以来、どのセグメントがアクセスされ
たか。これらセグメントのサイズの総和はそのタイム期
間に対する実効ページ・セット25を構成する。
【0036】この処理手順は下記のように作業する。装
置ドライバは物理的なメモリー・ブロックすべてを通し
て移動する。それは各スワップ可能プロック及び放棄可
能ブロックに対して下記2つの比較を行う。 1.数秒前の実効ページ・セット期間において取得した
LRUタイムスタンプに対しそのブロック(block's)の L
RUタイムスタンプを比較する。−−該ブロックの LRUタ
イムスタンプが実効ページ・セット期間のタイムスタン
プより大きい場合、そのブロックは実効ページ・セット
内にあり、ブロック・サイズは実効ページ・セットの総
和に加えられる。
【0037】2.かくしてはるかに発見された最大(最
新の)タイムスタンプに対し該ブロックの LRUタイムス
タンプを比較する。より大きい場合、現在の最大タイム
スタンプに対してこの新たな値を使用する。装置ドライ
バは最大(最新の)LRU タイムスタンプ、実効メモリー
・セットの全ブロックのサイズ(バイトの)の総和、及
び合計物理的メモリーを戻す。
【0038】この処理手順は図5からそのより詳細な描
写が得られる。種々の変数が初期化される(工程6
0)。装置ドライバにより次のメモリー・ブロックが読
出される(工程72)。読出されるメモリーのブロック
サイズは物理的メモリーの計数を含む変数70に加えら
れる(工程74)。ブロックが自由か、又は不使用か否
かの決定が行われる(工程76)。自由でない場合、使
用されているメモリーの計数を含む変数66にそのブロ
ック・サイズが加えられる(工程78)。次に、該ブロ
ックがスワップ可能/放棄可能か否かの決定が行われる
(工程80)。否の場合、ブロックサイズは固定メモリ
ーの計数を含む変数68に加えられる(工程82)。
【0039】加えて、固定メモリーは実効ページ・セッ
トの一部であると定義されるから、変数は又実効ページ
・セット・メモリーの計数を含む変数64に加えられる
(工程86)。該ブロックがスワップ可能/放棄可能で
あれば、処理は、ブロックのLRU タイムスタンプのチェ
ックが行われる工程84へ進められる。ブロック LRUタ
イムスタンプが最大実効ページ・セット期間のタイムス
タンプより大きければ、ブロック・サイズは実効ページ
・セット・メモリーの計数を含む変数64へ加えられる
(工程86)。
【0040】いずれの場合においても、ブロックの LRU
タイムスタンプが最大タイムスタンプより大きいか否か
について次の決定が行われる。大きいと決定された場
合、該ブロック LRUタイムスタンプは新最大タイムスタ
ンプとして保管される(工程90)。最後に、更にブロ
ックが存在するか否かの確認のためのチェックが行われ
る(工程92)。存在する場合、処理は工程72へ進
む。存在しない場合、工程94において、装置ドライバ
は最大タイムスタンプ、実効ページ・セット・メモリ
ー、使用されたメモリー、固定メモリー、及び図3で定
義した物理的メモリーに対する値を戻す。
【0041】後述する図形プログラムは周期基準で装置
ドライバを呼出し、ユーザ機の全物理的 RAMの百分率と
して実効ページ・セット・メモリーを作図する。この呼
出しは装置に対するシステム API呼出しを介して通信す
るデータ収集機能によって達成される。次に、情報は図
1の通称パイプ29上の APIを介して図形プログラムに
送信される。再び図3において、装置ドライバは抽出期
間53ごとに呼出されて実効ページ・セット・メモリー
45を再計算する(実効ページ・セットが物理的メモリ
ーを超過した場合、100%と表示される)。図8に見
られるように、典型的な抽出期間は5秒であり、典型的
な実効ページ・セット期間は60秒である。
【0042】図6において、固定及び使用メモリーは実
効ページ・セット・メモリーの夫々上境界100及び下
境界102として描かれる。実効ページ・セット・メモ
リー104は固定メモリーより決して小さくなく、使用
メモリーより大きくないので、図形は実効ページ・セッ
ト・メモリーの可能な範囲を示す。この機能は絶対可能
最小値及び最大値が自動的に描かれるというように、自
動計算機構を与えてユーザを補助する。最小絶対値は固
定メモリーの演算値であり、最大絶対値は使用メモリー
の演算値である。
【0043】筋書を安定にするため、実効ページ・セッ
ト期間が減少すると、典型的に、より短い期間中により
少いメモリーがアクセスされるため、報告される実効ペ
ージ・セットは低下する。実効ページ・セット期間が増
加すると、典型的に、より長い期間、より多くのアプリ
ケーションに対するより多くのメモリーがアクセスされ
るため、実効ページ・セットは上昇する。
【0044】実効ページ・セット期間のパラメータの値
は報告された実効ページ・セット・メモリーに影響を与
えることができる。より長い期間は実効ページ・セット
・メモリーを使用メモリー、又は上限界に接近させる。
より短い期間は実効ページ・セット・メモリーを固定メ
モリー、又は下限界に接近させる。固定及び使用メモリ
ーは瞬間値である。しかし、実効ページ・セットは一期
間中に使用されるメモリーとして定義される。
【0045】下記表1はシステム資源の解釈に対する R
AMモニタ(又は監視)の使用の仕方の記述を表す。 ==================================== 表1 RAMモニタの筋書及び解釈 ──────────────────────────────────── 筋書 解釈 ──────────────────────────────────── 注意 実効ページ・セット期間は全筋書に対し60秒にセットする。 ────────────────────────────────────
【0046】 大きなアプリケーションがロー ロードされたプログラムは実効ページ・ ードされる。実効ページ・セット セットの一部として報告され、その固定メ は大きな増加を示す。固定メモリ モリーはシステム固定メモリーの一部とし ーは小さな増加を示す。ユーザは て報告される(又実効ページ・セットに含 しばらく該アプリケーションを使 まれる)。60秒間プログラムをロードす 用しないことを決定し、1分後実 ることに使用されるメモリーは実効ページ 効ページ・セットは下に後退する ・セットにおいて継続して報告される。 。 アプリケーションは60秒間活動状態で はないので(故に、ほとんどのアプリケー ション(application's) のメモリーはアク セスされない)、実行ページ・セットは、 プログラムがまだロードされていても一分 後に下に後退する。しかし、アプリケーシ ョンの固定メモリーはなお実効ページ・セ ットの一部として、及び固定メモリーの一 部として報告される。 ────────────────────────────────────
【0047】 大きなアプリケーションがロー このアプリケーションはたぶん通常のオ ドされる。実効ページ・セットは ペレーションにおけるより多くのメモリー 予想より大きな増加を示す。 を使用する。報告された実効ページ・セッ トは通常のオペレーション中後に下降する かもしれない。 ────────────────────────────────────
【0048】 大きなアプリケーションはロー OS/2がアプリケーションをアンロードし ドされるが、直ちに終了する。報 たとき、OS/2はアプリケーションのメモリ 告された実効ページ・セットは急 ーを自由にする。自由にされたメモリーは 速に上昇し下降する。 実効ページ・セットに報告されない。 ────────────────────────────────────
【0049】 スワップイン及びスワップアウ 新セグメントがスワップイン又はロード ト図形は、実効ページ・セットが されなければならない場合、最近アクセス 100%でなくても相当量の活動 されなかった旧セグメントはスワップアウ を示す。 ト又は放棄する必要があるかもしれない。 それが60秒前に最後にアクセスされた場 合、スワップアウトされたメモリーは実効 ページ・セットに報告された。 時たまのスワップ活動を伴う場合でさえ 、良いパホーマンスを得るためになお十分 なメモリーがいるかもしれない。より多く の物理的メモリーは必ずしも必要ではない 。 ────────────────────────────────────
【0050】 OS/2システム及び SPMアプリケ 固定メモリーはCONFIG.SYSファイルにお ーションが最初開始されたとき、 いて定義されるように大きなVDISK 又はDI 固定メモリーは予期より高い。 SKCACHE を含む。 ────────────────────────────────────
【0051】 安定した筋書のため、実効ペー 60秒におけるより10秒における方が ジ・セット期間を60秒から10 典型的にメモリーのアクセスが少ないので 秒に変更する。報告された実効ペ 、実効ページ・セットは低い。 ージ・セットは現在低い。 ────────────────────────────────────
【0052】 安定した筋書のため、実効ペー 典型的に、60秒より1000秒の方がより ジ・セット期間を60秒から1000 多くのアプリケーションのためより多くの 秒に変更する。報告された実効ペ メモリーがアクセスされるため、実効ペー ージ・セットは現在高い。 ジ・セットはより高い。 ====================================
【0053】メモリーの利用、特に実効ページ・セット
・メモリーに関するこの情報は、コンピュータの物理的
メモリーが現在活動中のアプリケーションに対して十分
であるかどうかを示すために有益である。この方式は質
問の変数又はエンティティに影響を及ぼすパラメータを
実際にリセットせずに、更にユーザに対し、質問“もし
……,何か?”を行うことを許容する。要約すると、こ
の方式は、実効ページ・セット、固定、及び RAMの使用
量を含み、全体的にオペレーティング・システムに対す
るランダム・アクセス・メモリー(RAM) の利用を迅速に
計算し、その結果を図形表示する。
【0054】動的監視 次に、データ処理システムのユーザが表示スクリーンの
動的モニタの表示に影響を与えるパラメータを変更させ
ることができる処理手順を説明する。この処理手順は、
時間関連機能が少くとも1つの変数によって影響される
場合、データ処理システムの表示する際の時間関連機能
の動的監視の制御に関係する。監視するデータはあるパ
ラメータが如何にセットされているかによって変化す
る。図7の(B) に示すように、表示スクリーン上にユー
ザに対する対話ボックスが与えられる。それは、ユーザ
が図7の(A) に示すようなウィンドウ(window's)のメニ
ュー又は活動バー110により選択したものである。こ
の対話ボックス120はユーザが新パラメータ値を入力
することができるフィールド122を含む。
【0055】ユーザが新たにパラメータをタイプする
か、変更した後、プログラムは新パラメータ(paramete
r's) の値を使用するため基本的機能を動的に変更す
る。これは対話ボックスを制御するプログラムによって
データ収集を制御するプログラムに対する APIの呼び出
しを介して達成される。図8に示すように、ユーザ・パ
ラメータは、図7の(B) における表示画面上の対話ボッ
クスを介し、ブロック112において質問される。ブロ
ック14において、パラメータが可変かどうかを確認す
るためのチェックが行われる。正当でない場合、ブロッ
ク116において誤りメッセージが表示され、ユーザ・
パラメータは再びブロック112において質問される。
正当であれば、新パラメータはいわゆるパイプ(図1の
29)を介し、ブロック118においてデータ収集機能
APIに送られる。データ収集機能はデータを入力し、ブ
ロック119において指定した機能のパラメータを変更
する。
【0056】この好ましい実施例においては、対話ボッ
クスを使用するが、画面移動バー、スピン・ボタン、入
力フィールド、又は指令ライン・パラメータのような新
たなパラメータをユーザから得るために、他の型の制御
も同様に使用することができる。
【0057】このパラメータ変更方法は上記の RAM実効
ページ・セット期間の変更に使用され、該パラメータは
RAM監視窓における RAM実効ページ・セット・メモリー
の動的表示に影響を与える。前述したように、 RAM実効
ページ・セット・メモリーはユーザが低い RAM実効ペー
ジ・セット期間を選択したときには、通常低となり、高
い RAM実効ページ・セット期間を選択したときには、高
となる。
【0058】周辺装置の利用 装置利用の決定に使用される一般的方式は高い分解能の
タイミング、又はハードウェア及び/又はオペレーティ
ング・システムに対する変更を要求しない。むしろ、こ
の方式は装置の状態を周期的に抽出し、装置が“装置使
用中”状況に復帰する回数を記録する。周期速度の発生
に使用する方式は実行するごとに変更することができ、
基礎にある装置利用の測定方式の理解に特定のものでは
なく、重大なものでもない。
【0059】例えば、パーソナル・コンピュータにおい
て、OS/2を走行するIBM パーソナル・コンピュータでは
32ミリ秒ごとに発生し、DOS を走行する場合には55
ミリ秒ごとに発生するようにしたハードウェア・タイマ
の割込みを使用するのが便利である。その上、装置状態
の質問に使用する方式は装置ごとに変えられるであろう
が、本発明の精神及び範囲から離れることなく他の型の
装置にも同様に拡張可能である。例えば、IBM パーソナ
ル・コンピュータESDIディスク駆動機構は入力ポート・
アドレス x‘3512’(16進法)において連続的状
況を提供する。他の装置は、該装置が状況情報を戻す前
に、装置質問指令を装置に送ることを要求する。
【0060】図9において、この好ましい実施例では、
装置ドライバである収集プログラム140がハードウェ
ア・タイマ144から割込み142を受ける。各タイマ
‘チック’(tic)(後述する)ブロック146でポーリン
グ計数を増加する。次に、測定される装置148はその
装置148が使用中か否かを確認するため、その共同す
る装置制御機構150を通し、ブロック152において
質問される。この使用中情報は装置制御機構150によ
りブロック154において報告される。ブロック156
において、装置が使用中状況を報告したか否かを知るた
めのチェックが行われる。該状況があった場合、ブロッ
ク158において使用中計数が加算され、収集は‘チッ
ク’142によって再びトリガされるまで終了する。
【0061】ユーザ指定の又は省略時パラメータによっ
て収集プログラムが十分な数の標本を有すると決定する
と、報告プログラム162はブロック164において使
用中計数及び合計計数を収集し、ブロック166におい
て使用中計数を合計計数で割算することにより装置利用
率を計算する。その計算式を下記に示す。装置利用率=
使用中計数/合計計数
【0062】この利用率数は、例えばブロック168に
おいて、後に記述するように、数字形式又は図形形式の
どちらででも書込まれ、又はログ・ファイルに書込むよ
うな多数の方法で報告することができる。この報告プロ
グラムは収集プログラム装置ドライバを周期的に呼び込
み、この好ましい実施例では、比率としてチック142
の合計数に対する使用中チック数の比を作図する。この
呼び込み頻度はユーザ指定であり、本実施例のいずれか
で説明する処理手順に従い変更可能であるが、この装置
ドライバは装置利用率の再計算のために1秒ごとに呼び
込まれる。
【0063】装置利用率は直接測定されるのではなく、
抽出によって推定されるのであるから、潜在的に見積り
に誤りが存在する。統計方法によりこの潜在的誤りを予
測することができる。当業者により容易に理解しうるよ
うに、上記の抽出方式は単に2つの起こりうる値、使用
中か又は不使用中、を持つ反復標本を使用する。かかる
標本はベルヌーイの標本と呼ばれ、二項分布に従う。そ
の上、標本数が相当多い場合、例えば20より多い場合
には二項分布は正規分布によって概算することができ
る。
【0064】正規分布に対し、実際の割合に対して比較
された標本の割合の誤りは下記方程式より少ない。 誤り=Z(a/2)*(x/n*(1−x/n)/n)
**1/2 ここで: a= 希望する信頼性レベル(典型的に0.95又は
0.99) Z= 正規分布に対する標準ランダム変数 x= 標本の" 成功した" 数(この場合、使用中標本) n= 標本の合計数 Z(a/2)に対する値は統計表から見出される。Z
(a/2)は95%信頼性に対し1.960に等しく、
99%信頼性に対し2.576に等しい。
【0065】特定の標本として、OS/2で走行するIBM
パーソナル・コンピュータについては、10*1/0.
032=312の合計標本が10秒間で収集できるもの
と考察する。更に、(x/n*(1−x/n))が達成
できる最大値は、x が正確にn の1/2の場合、0.2
5であると考察する(この主張は基本微積分によって証
明することができる)。
【0066】10秒の装置利用概算で見出された最大誤
りは下式を越えないということを95%信頼性で主張す
ることができる。 1.96 *(0.25/312)**1/2=0.055=5.5%
【0067】同様な計算により、1分標本内の最大誤り
は2.3%になったであろうことが示される。かくし
て、統計は、上記の装置使用中抽出法が装置利用率の評
価において正確性を良くすることを示す。その上、この
方法は装置利用情報の取得において、上記使用方法より
安価である。
【0068】下記に、周辺装置の利用を測定する代替方
法を示す。論理ディスクの活動を測定するため、API を
介して処理がファイル・システムをアクセスするときに
発生するファイル・システム事象が追跡され、装置ドラ
イバ・セクションにおいて説明した方法によって減縮さ
れる。
【0069】CPU活動 CPU 活動又は利用は、本好ましい実施例においては、処
理を開始し、処理をシステムの最低優先レベルに指定す
ることによって測定される。本発明は、先行技術におい
て行われていたように、処理可能な仕事量を追跡するの
ではなく、この最低優先処理がシステムにおいて遂行す
る時間の量を追跡する。この処理は、より高い優先順位
を有する他のすべての処理がそれらのタスクを完了した
後にのみ実行し、そのときもはや CPUを必要としないか
ら、システムが遊休(又は他のタスクを実行可能)であ
る時間の量は遊休処理を遂行している時間の量である。
【0070】本好ましい実施例におけるデータ処理シス
テムのタスクは次の4つのクラスに分割される。(i) 時
間臨界:最高優先順位である、(ii)固定高順位:標準の
タスク前に走行する、(iii) 標準:アプリケーション・
プログラムに割当てられた通常のクラスである、(iv)遊
休:時間臨界、固定高順位、又は標準の各優先順位タス
クが遂行すべき作動可能状態である場合、走行しないこ
とを意味する。
【0071】本好ましい実施例においては、OS/2オペレ
ーティング・システムによって提供されたRAS(信頼性、
可用性、保守性)追跡機能、又はSYSTRACEを使用して、
この低レベル処理システム活動の事象追跡を行うことが
できる。このSYSTRACE機能は装置ドライバ・セクション
において更に十分に説明する。他のオペレーティング・
システムによって提供される他の同様な型のシステム追
跡機能も同様な方法で使用され、本発明の精神及び範囲
から離れることなく、このユーティリティを提供するこ
とができる。以下、特定のSYSTRACEの利用について説明
する。
【0072】装置ドライバ 本好ましい実施例における装置ドライバは下記のSYSTRA
CEユーティリティを実行するために書込まれる。装置ド
ライバは通常の方法で導入され、データ処理システムが
初期プログラム・ロード(IPL) において読出した CONFI
G.SYS で識別される。フック(hook)と称する特別命令グ
ループはシステムの打鍵点において、遂行フローを追跡
するためアプリケーション・プログラムに含められる。
【0073】各フックは他のすべてのフックからそれを
区別するための独特な識別(大コード及び小コード)を
有し、鍵プログラム変数、記号、又はデータ項目として
の復帰コード等を含んでも含まなくてもよい。本好まし
い OS/2 の実施例においては、フックを発生し、収集
し、緩衝記憶機構に記憶する手段を提供するSYSTRACEと
して知られる機能が存在する。他のオペレーティング・
システムはそれら自己のシステム・ユーティリティを通
して同様な機能を供給する。このユーティリティはフッ
クを管理する総称ツール又は手段と考えることができ
る。
【0074】装置ドライバは SYSTRACE を通るすべての
フックを解釈し、そこに含まれている希望しないフック
又は情報を濾過し、制御プログラムにより要求された正
確なフック及び情報のみを通過させる。装置ドライバ及
び制御プログラムは前述のデータ収集機能を含む2つの
要素である。
【0075】システムの初期設定における装置ドライバ
の導入において、データを様式化し、制御プログラムに
送る64K 緩衝記憶機構が割振られる。この緩衝記憶機
構は内部的に2つの32K 緩衝記憶機構に分割され、そ
の第2の緩衝記憶機構の一部は装置ドライバと制御プロ
グラム間に使用するための通信領域である。該通信領域
は単に変数のために留保されたデータ処理システム・メ
モリーの一部である。このメモリーは装置ドライバ及び
アプリケーション・プログラムの両方からアクセス可能
である。下記表2は第2の32K 緩衝記憶機構の最高
(すなわち、最後の)32ワードを占める変数を規定す
る。
【0076】 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 表 2 (表中に現れる英文字の列はコマンドなどを表す記号であり、翻訳できない) time int equ OFFE0H 第1DD変数は OFFE0及び OFFE2を使用する varA0 equ OFFE0H タイムタグ演算に使用されるワードの1つ varA2 equ OFFE2H タイムタグ演算に使用されるワードの1つ start time equ OFFE4H 第2DD変数は OFFE4及び OFFE6を使用する varB0 equ OFFE4H タイムタグ演算に使用されるワードの1つ varB2 equ OFFE6H タイムタグ演算に使用されるワードの1つ elapsed time equ OFFE8H 第3DD変数は OFFE8及び OFFEAを使用する var FFE8 equ OFFE8H タイムタグ演算に使用されるワードの1つ var FFEA equ OFFEAH タイムタグ演算に使用されるワードの1つ Dekko SEL equ OFFECH 第4DD:DEKKO FIRST OFFEC 1ワードのみ PID equ OFFEEH 第4DD:PID に対する他のワード var FFEC equ OFFECH タイムタグ演算に使用されるワードの1つ var FFEE equ OFFEEH タイムタグ演算に使用されるワードの1つ
【0077】 flush equ OFF0H 1の場合フックに揃え、他の場合普通に処理 var FFF0 equ OFF0H タイムタグ演算に使用されるワードの1つ switch equ OFFF2H 0でなければ、緩衝記憶機構切替==“緩衝記 憶機構に揃える” var - FFF2 equ OFFF2H タイムタグ演算に使用されるワードの1つ reals equ OFFF4H 実モード・フックの数を累算する var FFF4 equ OFFF4H タイムタグ演算に使用されるワードの1つ var FFF6 equ OFFF6H タイムタグ演算に使用されるワードの1つ var FFF8 equ OFFF8H タイムタグ演算に使用されるワードの1つ int nesting equ OFFAH 割り込みのネスティング深さを維持する var FFFA equ OFFAH タイムタグ演算に使用されるワードの1つ current time equ OFFCH 最終DD変数は OFFFC及び OFFFEを使用する oldtime equ OFFCH 前の値を保管する bigtime equ OFFEH 時間の高ワードを維持する shortbuf equ O2O20H 約24バイトの実効緩衝記憶機構サイズは08000 である−shortbuf
【0078】 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 〔フッキング〕 この装置ドライバの導入中においても、装置ドライバは将来使用のため、ラベ ル“strp common" において探し出された原コードSYSTRACEの複写を保管する。 このアドレスを得るため、下記のような OS/2 システム・ルーチン DevHelpに対 する呼び出しが使用される。
【0079】 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 表 3 "strp common" の記憶場所を得るための標本アセンブリ・コード AX:BX 変数に対する点 mov al,10D mov dl,DevHlp- GetDOSVar call DevHelp
【0080】ある後のときに、制御プログラムは、装置
ドライバがSYSTRACEカーネル・コードの一部に対しパッ
チ(コード変更)を導入するときに、装置ドライバに対
して“読出し”を実行する。かかるパッチは、実(REAL)
モードか又は、保護(PROTECT) モードのどちらかにより
SYSTRACEを通して来るフックを遮ぎることができる2モ
ード(当業者によりインテル・マイクロプロセッサ・ア
ーキテクチャの一部であると知られているREAL又は PRO
TECTの2つの異なるアドレス指定モード)コードを含
み、それはこれらに関するタスクを濾過して、事象追跡
のような他のタスクを実行する。この2モード支援は、
各呼出しのときに、装置ドライバにより指令“SMSW CX"
を遂行し、モード・ビットを抽出することにより、機械
状況ワードを抽出する装置ドライバによって達成され
る。実モードの場合、装置ドライバは実(REAL)モード・
コード領域に分岐する。他の場合、装置ドライバは保護
(PROTECT) モード・コードに分岐する。
【0081】〔アンフッキング〕なお、後刻、システム
を停止するべき作動可能状態にあるとき、制御プログラ
ムは装置ドライバに対し“書込み”(WRITE) を実行し、
そのとき、以前保管したSYSTRACEカーネル・コードをSY
STRACE機能のその原位置に復帰させて、再び完全にその
原SYSTRACE機能につかせる。
【0082】データ収集 事象追跡はデータ処理システムで発生した追跡事象の処
理に関するものである。タイムスタンプ(timestamp)は
各事象と共同する。それら事象は年代順に記憶され、処
理される。事象は年代順に配置されるから、データ処理
システムにおいて行われる活動の順序を与える。下記表
4は事象追跡の例を示す。
【0083】 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 表 4 事象追跡例 タイム - 0 事象 - 0 データ タイム - 1 事象 - 1 データ タイム - 2 事象 - 2 データ タイム - 3 事象 - 3 データ タイム - 4 事象 - 4 データ タイム - 5 事象 - 5 データ ・ ・ ・ ・ タイム -n-1 事象 -n-1 データ タイム -n 事象 -n データ
【0084】SYSTRACE機能はタイムスタンプをその処理
の事象に配置するため、低分解能システム・クロックを
使用する。これはシステム資源の性能を解析しようとす
る本発明に対しては不適当である。かくして、データ処
理システムのタイマの1つは事象間の変数の増分(差
異)の確認に使用され、上記表3に示す高分解能のタイ
ム・タグ(又は時間札)を有するSYSTRACE記録の時間を
交換する。
【0085】タイマ 本好ましい実施例のハードウェア・タイマは複数タイマ
を含むインテル(Intel) 8253タイマである。825
3タイマに関する詳細な情報はカルホルニア州サンタ・
クララのインテル社の分献部から入手可能な“インテル
素子データ・カタログ”と称するインテル手引書に見る
ことができ、ここに本願の背景資料として編入される。
タイマ0はモード2にプログラムされる。このモードは
高分解能タイマを0xFFFFから開始し、0x0000ま
でカウント・ダウンし、そして反復する。タイマ作用は
再び0xFFFFから開始する。換言すると、該タイマはぐ
るりと1回転する。タイマ3は部分的に初期化されるた
め、8253タイマ・モジュールの他のタイマから発生
した通常の割込みは使用禁止される。
【0086】通常、タイマ/カウンタの1つが0にカウ
ントダウンしたとき、割込みを発生して、カウントして
いた時間が経過したということをシステムに知らせる。
本発明の好ましい実施例においては、タイマ/カウンタ
の満了のときに割込みは希望せず、そのためタイマ3を
部分的に初期化することによって割込みを禁止する(こ
れは番犬タイマとしても知られ、他の可能な実施例にお
いて、上記タイマは実在かもしれず、又は単にソフトウ
ェア技術によって擬似化されたものかもしれない)。計
数される実際の時間の間隔はチック(tic) 間で0.83
80953445マイクロ秒である。図10において、
システム主メモリー182に割振られ、0x0000に
初期化された内部レジスタ180は、内部タイマが0x
0000から0xFFFFに回転する度ごとに増分される。
【0087】装置ドライバはブロック170において、
タイマ・モジュール174の内部タイマ172からその
値を読出す。そこで、この値は1の補数であり、0x0
000から0xFFFFまで有効に整列される。この補数化
されたタイマの値176は内部レジスタの値178と結
合され、それが原位置まで回転する(ロールオーバ)ま
で約1時間計数することができる32ビット・タイマ1
80を提供する。16ビットの高位ワードは内部レジス
タのロールオーバ・カウンタであり、低位ワード176
も16ビットの補数化タイマ値である。この32ビット
値はタイム・タグ180として知られ、その使用は下記
で説明する。
【0088】タイミングの完全性を維持するために、上
記内部タイマは少なくとも55ミリ秒に1回(ロールオ
ーバし損なわないため)読出さなければならない。SYST
RACE主コード04の活動はこの要求に対して満足する。
主コード04はタイマの割込みを含む割込みをターンオ
ン、又は活動可能にする。本好ましい実施例では、各タ
イマの割込みは32ミリ秒度に発生するので、事象が少
くとも55ミリ秒ごとに1回発生する(及び8253タ
イマの関連する読出しを行う)ことを保証する。これ
は、8253タイマは割込みを含み、事象が発生する度
ごとに読出されるからである。以上の説明によりタイマ
の動作を理解したので、次にタイマが読出される場合に
説明を進める。
【0089】フックは監視することができる事象であ
り、データ処理システムの特定の応答をトリガする。OS
/2の事象は通常2つのフック、すなわち、前フック(pre
-hook)及び後フック(post-hook) により説明する。例え
ば、I/O 要求が行われたとき、装置ドライバは、要求は
I/O アダプタに対してなされるべきものであるというこ
とをシステムに知らせる前フックを発生する。アダプタ
がI/O 要求を完了したとき、装置ドライバは後フックに
より事象の完了を信号する。前フックと後フックとの間
の時間は事象の経過時間を表わす。更に詳細にいうと、
I/O 要求のような事象が発生したときに、事象にサービ
スを与えるカーネルは事象を記述した情報と共にSYSTRA
CEルーチンを呼出す。これはSYSTRACEがその事象を処理
することを可能にする。
【0090】フックがSYSTRACEパッチ・コードに到達す
る度ごとに(すなわち、フックが呼込まれ、SYSTRACEが
それを処理することを意味する)、タイマは読出され、
必要に応じ高位バイトは増分される(すなわち、上記の
ように、タイマがロールオーバした場合)。各フックは
それが希望するものの1つであるか否かチェックされ
る。受信したフックが監視しているものの1つである
と、それは更に処理される。他の場合、それは廃棄され
るか、通常の処理に続行する。
【0091】フックが割込み(04/xx)である場
合、装置ドライバは割込みを処理した時間を測定する。
これは、割込操作者が割込み要求を処理し始めたときに
発生する前フックと呼ばれる事象“割込み開始”と、割
込操作者が割込み要求の処理を完了したときに発生する
後フックと呼ばれる事象“割込み終了”とが合致するこ
とによって完了する。そのように、前フックと後フック
との間に1対1の応答があり、その各々のタイムスタン
プは割込みの処理にかかった時間を算出するため双方か
ら減算される。
【0092】前フックが発生した後、最初の前フックに
対応する後フックが発生する前に、それに続く前フック
が発生することも可能である。このフックのネスティン
グは受信した如何なる後フックも最も最近受信した前フ
ックと対になるというように取扱い容易である。換言す
ると、1つのフックが開始した後、他のフックも開始で
きるが、第2のフックは第1のフックが終了する前に終
了するということである。このネスティングの筋書きに
おいて、終了時間から開始時間を減算し、その答からす
べてのネストされた活動を減算することにより、外部事
象が取った長さが算出される。
【0093】フックがモード・スイッチ(Mode Switch)
“02/xx”である場合、装置ドライバはスケジュー
ラが異なる処理を指名するまで、第1のモード・スイッ
チから時間を追跡することによって、CPU の実(REAL)モ
ードで費やされる時間を測定する。この時間は、保護(P
ROTECT) モードに対するモード・スイッチが発生した時
から減算される。
【0094】フックがスレッド(Thread)指名“12/0
1”である場合、装置ドライバは最初そのデータ領域か
ら処理識別(PID) 及びスレッド識別(TID) を保管する。
(PID及び TIDはOS/2構築システムの一般用語である。PI
D は OS/2 環境内の処理を固有に識別する16ビット数
であり、PID の値は0001から開始し、処理が行われる度
ごとに増分する。TID'S は数個のスレッドが1処理内に
存在することができることが要求される。)そこで、装
置ドライバは、フックが廃棄される場合、そのデータが
前のスレッド指名フック12/01の PIDに等しい PID
を持つか否かについてチェックする。
【0095】そうでなければ、割込み(Interrupts)に費
やされる時間及び実(REAL)モードに費やされる時間は、
事象を記述するスケジューラによって提供されるPID 及
びTID である現存スレッド指名12/01データに添付
される。全体のスレッド指名フックは図11の(A) に示
され、後述するように、標準PERFMON/DEKOVERT様式に適
合するよう再様式化され、装置ドライバ(driver's)の3
2K 緩衝記憶機構の1つに書込まれる。累算された割込
み(Interrupt) 時間及び実(REAL)モード時間を保持する
2つのレジスタはそこで0にリセットされる。
【0096】フックがファイルシステム(FileSystem)フ
ック“30/xx”の場合、現在のTID191は図11
の(B) に示すように通常データ(Normal Data) の前に挿
入される。
【0097】関係する上記リスト及び他のフックも PER
FMON/DEKOVERT ホーマットに類似するよう再ホーマット
化され、32K 緩衝記憶機構の1つに書込まれる。各記
録の最初の8バイトは図11に示すように、大コード(M
ajor Code)183、小コード(Minor Code)184、デー
タ長(Data Length) 185、フラグ(Flag)186、及び
4バイトのタイムタグ(Time Tag)188である。その後
に示すバイトDDl-DDn189はフック・データである。
緩衝記憶機構の1つが全使用(すなわち、その32K ス
ペースのうち24K を使用している)の場合、緩衝記憶
機構は従来のプログラミング技術を使用して切換えら
れ、全32K 緩衝記憶機構が制御プログラムに対し使用
可能とされる。データ収集は他の32K 緩衝記憶機構に
おいて継続される。
【0098】装置ドライバは、又制御プログラムに対し
その点まで累算したデータを供給することができるよう
に、制御プログラムからの信号によりそれら緩衝記憶機
構のスワッピングの準備を行う。指令TRACE(追跡、トレ
ース) が発行され、フック00/02を受信し、最初の
データ・バイトが0x00のとき(これはTRACE がター
ンオフされたことを意味する)は常に同様なオペレーシ
ョンが発生する。この場合、いずれの緩衝記憶機構にお
いても、それ以上のデータの累積を行わないように、制
御プログラムが現在の緩衝記憶機構を直ちに受取ること
が必須要件である。
【0099】制御プログラムと装置ドライバとの間の通
信は下記の如くそれぞれの32K 緩衝記憶機構の通信領
域を使用して達成される。制御プログラムが装置ドライ
バ及び装置ドライバの緩衝記憶機構をリセットするた
め、制御プログラムは、表2に示すように、通信領域の
制御ワードに値“2”をロードする。装置ドライバがリ
セットを完了すると、この値を“1”に変更する。
【0100】制御プログラムが装置ドライバ及び緩衝記
憶機構ファイリングの休止を希望する場合、制御プログ
ラムは通信領域の制御ワードに値“1”をロードする。
制御プログラムが装置ドライバに再開始を希望する場
合、制御プログラムはこの制御ワードに値“0”をロー
ドする。制御プログラムが遮断又は停止を希望する場
合、制御プログラムは前述の如く、装置ドライバをアン
フックする。そこで、オペレーションは、制御プログラ
ムが他の読出し指令(READ)を装置ドライバに送るまで、
中断される。
【0101】低レベル事象追跡実行データを高レベル・
システム活動に変形する。これは下記手順に従って達成
される。最初、前述のように、前フック事象と後フック
事象とを合致させて後、これら2つのフックを1事象に
変形する。これは、その単一記録から事象がかかった時
間の長さを知ることができるので、該単一記録を前フッ
クと後フックとの交換に使用することができるためであ
り、この事象タイミングは希望する必要な情報の粒であ
る。加えて、上記のように、事象は制御プログラムにと
って関係がある事象記録の使用情報のみに濾過される。
【0102】アプリケーション・プログラミング・イン
ターフェース(API) 以下、データ収集機能に対するアプリケーション・プロ
グラミング・インターフェース(API)について説明す
る。このAPI は顧客アプリケーション実行データを検索
し、メモリー解析器をアクセスすることを可能にする。
【0103】API はシステム・パイプ(SystemPipe)及び
追跡(トレース)パイプ(TracePipe) と呼ばれる2つの
名前付きパイプを通して実行される。システム・パイプ
は顧客アプリケーションが使用して、データ収集機能に
対してパラメータを送信し、そこからの応答の受信に使
用される。追跡パイプは連続的実行データを受信するよ
う顧客アプリケーションが使用する。データ収集機能が
両パイプを作成し、顧客アプリケーションはOS/2機能を
発行し、パイプをアクセスするため Dos開放(DosOpen)
及びDos 閉止(DosClose)を呼び出す。両パイプともブロ
ック化モードでパイプス(pipes) とメッセージして作成
される(それ以上の情報は“IBM オペレーティングシス
テム/2、1.2版プログラミング・ツールス及び情
報”を参照;この背景資料は参照文献に編入される)。
【0104】システム・パイプ 顧客アプリケーションはシステム・パイプ(System Pip
e)を通してデータ収集機能の活動を制御する。顧客アプ
リケーションはメッセージ・モードでパイプから読出
し、パイプへ書込む。パイプに書込まれた各メッセージ
は構文的図形からの1パラメータを表わす。メッセージ
は数を含む(例えば、10進10は文字列“10”とし
て送られる)ASCIIZ文字列(すなわち、空文字終了文字
列、又は1バイトの2進零(0)終了文字列)でなけれ
ばならない。
【0105】データ収集機能はシステム・パイプを通し
て顧客アプリケーションに対し応答を返送する。OS/2機
能 DosOpenの呼出しで顧客アプリケーションが使用する
局所機のシステム・パイプの名称は\PIPE\SYSTEM.SPM
であり、遠隔サーバにおけるパイプの名称は\\server
- name\PIPE\SYSTEM.SPMである。
【0106】メモリー解析器からの出力(/THESEUS th
eseus - command)も又データ収集機能からシステム・パ
イプを通して顧客アプリケーションへ送られる。最初、
戻りコードが送信される。そこで、出力があれば、メモ
リー解析器から指令が送られる。各メッセージはメモリ
ー解析器からの単一行(又は線)で表現される。その最
長行の長さは100文字である。この出力は空文字(0
0)が続く5ポンド信号(#####)によって表わさ
れる遂行メッセージがその後に続く。システム・パイプ
は顧客アプリケーションが OS/2 機能 DosClose の呼出
しによってパイプを閉止するときに、データ収集機能に
より遮断される。
【0107】図にはシステム・パイプを通してデータ収
集機能に送られるかもしれないメッセージのための構文
的図形の詳細を示す。構文パラメータは下記表5で説明
する。パラメータは隣接する文字群として表わされる。
大文字によるパラメータが鍵ワードである。
【0108】各パラメータは空文字(2進0)で終了し
なければならない。例えば、SPM アプリケーションに対
する注釈“サーバ1(SERVER1)に対する実行データ”を
送るため、下記注釈(COMMENT) を送信する /注釈 サーバ1に対する実行データ ====================================
【0109】 表5 データ収集機能パラメータ ──────────────────────────────────── パラメータ 活動 ──────────────────────────────────── /開始 データ収集機能によって追跡パイプ記録が送信されるべき資源の (START) 型を示す(表8−3参照)。 * 開始パラメータ/START と共に使用されるとき、CPU, 物理的ディスク, RAM,及びスワップ資源を表示する( 論理的ディスクは表示しない)。停止パラメータ/ST OPと共に使用されるとき、全資源を表示する。 CPU CPU 資源を表示する 物理的ディスク(PHYSICAL DISK) 物理的ディスク資源を表示する。 論理的ディスク(LOGICAL DISK) 論理的ディスク資源を表示する。 RAM ランダム・アクセス・メモリー資源を表示する。 スワップ(SWAP) スワッピング資源を表示する。 注意: 全追跡パイプは特定の型なしに記録される(表8− 3で“型なし”と指定されたものは先行オプション のいずれかが特定されたときは常に含まれる)。 ────────────────────────────────────
【0110】 /停止 追跡パイプ記録がデータ収集機能によって送られるべきでない資 (STOP) 源の型を表示する。/開始に基づくオプションの記述を参照、又 表8−3参照。 ──────────────────────────────────── ##### 実行メッセージ。/開始又は/停止パラメータのもとに続く資源 仕様メッセージの終了を表示する。 ────────────────────────────────────
【0111】 /注釈 収集データを有する注釈を埋込む。 (COMMENT) 文字列(string) 現在の収集データに包含されるべき注釈。 注釈は40文字より長くできない。長い注 釈は40文字で切られ、データ収集機能に よって誤りとされずに受入れられる。該文 字列はそこに空白が包含されている場合、 別のメッセージとして送られることになる 。 ────────────────────────────────────
【0112】 /出口 データ捕獲を停止し、データ収集機能をメモリーから解放する。 (EXIT) データ収集機能によって開始された全処理も停止される(IDLECPU 及びTHESEUS)。 ────────────────────────────────────
【0113】 /INITDATA 追跡パイプを通してデータ収集機能から初期化記録を送る。 下記記録が含まれる。 −IDLECPU 処理に対する処理情報記録。これはデータ収集機能に よって使用され、CPU が遊休であった時間を決定する処理であ る。この処理は遊休優先順位、レベル0(零)において遂行さ れる。 −システム情報記録 −システムにおいて現在遂行中の全処理に対する処理情報記録。 この記録はメモリー解析器が開始した場合にのみ送られる。 (/THEREUS START パラメータ参照) 。 注意: CPU 資源は処理情報記録を受信するために開始され なければならない(表8−3の/開始 CPUパラメー タ参照) 。 ────────────────────────────────────
【0114】 /TOD 追跡パイプを通してデータ収集機能により送られた時間記録間の 間隔(秒)を明記する。 interval 時間記録間の秒数。可能な値の範囲は1乃至 100秒 (間隔) 欠損は5秒だが、内部パラメータは前のアプリケー ションによって他の値に設定することができた。 ────────────────────────────────────
【0115】 /RAM ランダム・アクセス・メモリーの抽出に使用される期間を制御す る。標本に関する情報については表8−3の RAM記録の記述を参 照。 注意: このパラメータは/開始RAM(START RAM)を包含しな い。RAM 資源を作動可能にすることに関する更に詳 細な情報は表の始めにおける/開始 RAMを参照する こと。
【0116】 working set period(実効ページ・セット期間) 実効ページ・セットに含まれている物理的 RAMの量の決定に 使用されるタイム・フレーム(秒)。各標本は最後の実効ペ ージ・セット期間中に使用される RAMの量を表わす。可能な 値の範囲は5乃至3600であり、欠損は60秒であるが、この実 効ページ・セット期間パラメータは前のアプリケーションに より他の値に設定することができる。 注意: RAM パラメータの発行、又は実効ページ・セット期 間が変更されたので、実効ページ・セットは、全実 効ページ・セット期間が経過するまで、RAM の百分 比のみを表わす。
【0117】 sample interval(標本間隔) RAM 標本間の秒数。RAM 追跡パイプ記録は標本がとられる度 ごとに送られる。可能な値の範囲は5乃至3600であり、欠損 は10秒であるが、標本間隔パラメータは前のアプリケーショ ンにより他の値に設定されるかもしれない。 注意: パホーマンスのため、SPM アプリケーションは、20 0 に等しいか、200 より小である標本間隔パラメー タ値によって分割された実効ページ・セット期間パ ラメータ値を要求する。 ────────────────────────────────────
【0118】 /THESEUS データ収集機能によっていまだ開始されていなかった場合、メモ リー解析器を開始する。アプリケーションからメモリー解析器に 対しプログラミング・インターフェースを供給する。 注意: メモリー解析器の全表示画面インターフェースはこ の方法によりデータ収集機能によって開始されたメ モリー解析器の複写により使用可能ではない。 開始(START) データ収集機能によりまだ開始していない場合、メ モリー解析器を開始させる。
【0119】 theseus-command すべての有効なメモリー解析器指令。 theseus-command は空白を包含する場合、別のメッ セージとして送られなければならない。 注意: メモリー解析器指令すべて (theseus-command)はTH ESEUS LOG 指令を含み、直接メモリー解析器により 解釈される。すべての活動は、メモリー解析器の全 表示画面インターフェースにおいて類型に分類され たが、データ収集機能により開始したメモリー解析 器の基準点から起こる。 ────────────────────────────────────
【0120】 /NOTHESEUS データ収集機能により開始していた場合、メモリー解析器を終了 する。これは収集器のメモリー解析器と供用するRAM オーバーヘ ッドを保管する。しかし、システムが現在遂行している処理に対 する処理情報記録(IDLECPU 処理を遂行中)は追跡パイプを通し て送られない。これは/INITINFOパラメータが送られるときに遂 行する処理を含む。 ────────────────────────────────────
【0121】 /デバッグ(DEBUG) データ収集機能が顧客アプリケーションから作業用指令集のログ ・ファイル SPMLOG .LOG に受信したパラメータを記入すること を示す。 ====================================
【0122】最初の文字にスラッシュ(/)を有する全
パラメータに対する1状況メッセージがデータ収集機能
により顧客アプリケーションに送られる。この状況メッ
セージはパラメータからの要求に対して成功したことの
表示を与える。状況メッセージの様式は下記表に記述す
る。
【0123】次に、/THESEUS パラメータ(theseus-com
mand) によって特定されるすべてのメモリー解析器指令
からの出力が顧客アプリケーションに送られる。各メッ
セージはメモリー解析器からの単一文字列を表わす。実
行メッセージ(#####)はこの出力の後に続く。
【0124】SPM 戻りコード・フィールドに復帰するか
もしれない値を表6に示す。すべての値は16進数で与
えられる。 ==================================== 表6 SPM 戻りコード ──────────────────────────────────── コード 説 明 ────────────────────────────────────
【0125】 X′0000′ 誤りなし。パラメータは許容された。 ──────────────────────────────────── X′0007′ 無効パラメータ。サービス戻りコードは失敗したパラメータ の連続番号を含む。スラッシュ(/)から始まる各パラメー タは連続番号を1にリセットする。 ──────────────────────────────────── X′0010′ 実効ページ・セット期間(Working-set-period)の値が範囲外 にある(/RAM パラメータ)。 ────────────────────────────────────
【0126】 X′0011′ 標本間隔(sample-interval) の値が範囲外である。 (/RAM パラメータ) 。 ──────────────────────────────────── X′0012′ 標本間隔の値が複数実効ページ・セット期間(Working-set- period) の値ではない。(/RAM パラメータ)。 ──────────────────────────────────── X′0013′ 標本間隔値によって分割された実効ページ・セット期間の値 200より大きい(/RAM パラメータ)。 ──────────────────────────────────── X′0014′ /TOD interval(間隔)値は範囲外である。 ────────────────────────────────────
【0127】 X′0108′ OS/2機能 DosExecPgm 呼出しを通して OS/2 システムに対し TRACE.EXE ON 指令を発行することができない。 ──────────────────────────────────── X′0208′ DosExecPgmを通して OS/2 システムに対し TRACE.EXE OFF指 令を発行することができない。 ──────────────────────────────────── X′0408′ OS/2機能 DosKillProcess 呼出しを通して IDLESPU.EXEプロ グラムを開始することができない。 ──────────────────────────────────── X′0409′ OS/2機能 DosKillProcess 呼出しを通して IDLESPU.EXEプロ グラムを停止することができない。 ────────────────────────────────────
【0128】 X′0806′ メモリー解析器がこの OS/2 版を認識しない。 ──────────────────────────────────── X′0807′ メモリー解析器と通信することができない。 ──────────────────────────────────── X′0808′ OS/2機能 DosExecPgm 呼出しを通して THESEUS.EXEプログロ ムを開始することができない。 ──────────────────────────────────── X′0809′ OS/2機能 DosKillProcess 呼出しを通して THESEUS.EXEプロ グラムを停止することができない。 ──────────────────────────────────── X′1003′ 装置ドライバ THESEUS.SYSは CONFIG.SYS ファイルからロー ドされなかった。 ────────────────────────────────────
【0129】 X′1005′ 装置ドライバ THESEUS.SYSの無効版 CONFIG.SYS ファイルか らロードされなかった。 ──────────────────────────────────── X′2003′ 装置ドライバ SPMDCF.SYS は CONFIG.SYS ファイルに不在で ある。 ──────────────────────────────────── X′2004′ Dos 開放又は Dos読出しを通して SPMDCF.SYS 装置ドライバ を初期化している間に発生した誤り。 ──────────────────────────────────── 注意 サービス戻りコードはこの表に記載されていなければ、要求 された OS/2 サービスからの戻りコードである。 ====================================
【0130】追跡パイプ 追跡パイプはデータ収集機能からのパホーマンス・デー
タを検索するために顧客アプリケーションが使用する。
追跡パイプは1方向名前付きパイプ、すなわち顧客アプ
リケーションに対するデータ収集機能である。独立型機
において、Dos開放機能の呼出しに関する顧客アプリケ
ーションによって使用されるパイプの名称は\PIPE\TR
ACE.SPM であり、遠隔サーバにおけるパイプ名は\\se
rver- name\PIPE\TRACE.SPM である。追跡パイプは最
大メッセージ長さ8キロバイトを持つメッセージ・スト
リーム名前付きパイプ(バイト・ストリーム名前付きパ
イプと対抗して)である。顧客アプリケーションはシス
テム・パイプに/停止(STOP)又は/出口(EXIT)メッセー
ジを送り、追跡パイプを通して行うパホーマンス・デー
タの収集及び伝送を停止するべきである。
【0131】データは追跡パイプを通して伝送する前
に、データ収集機能により緩衝記憶機構で待たされる。
追跡パイプのメッセージは1又は1以上の完全な追跡パ
イプ記録を含む。メッセージは供給されたデータが使用
可能である少くとも4秒ごとにパイプを通して伝送され
る。
【0132】顧客アプリケーションがデータ収集機能か
らパホーマンス・データを収集する際に取った活動順序
は下記の如くである。 1.システム・パイプを開く。 2.システム・パイプを通して(/開始(START) メッセ
ージを含み)適当なメッセージをデータ収集機能(SPMD
CF)に送り、適用可能の場合戻りコードを得る。 3.追跡パイプを開く。 4.収集を停止するべく作動可能となるまで、追跡パイ
プからデータを読出す。 5.システム・パイプを通して/停止(STOP)又は/出口
(EXIT)メッセージをデータ収集機能に送り、適用可能の
場合、戻りコードを得る。 6.システム・パイプ及び追跡パイプを閉止する。
【0133】追跡パイプ記録ホーマット SPM 追跡パイプを通して送られる記録の一般的ホーマッ
トは下記の如くである。 追跡パイプ記録 図13、14、15に作表した記録は SPMアプリケーシ
ョンから追跡パイプを通して顧客アプリケーションに送
ることができる。
【0134】表の定義 ASCIIZストリング:空文字(ASCII 00)が後に続く文字の
ストリング。文字の最大数は250。 データ桁あふれ:データ収集機能によってデータが廃棄
されたことを表示する。これは通常顧客アプリケーショ
ンが十分迅速に追跡パイプからデータを読出していない
場合に発生する。
【0135】2重ワード:インテル(Intel) ホーマット
の4バイト(すなわち、バイト/ワード−反転)。IB
M C/2 においては、符号なし長い整数(ULONG)であ
る。 経過時間:オペレーションを通して遭遇した合計タイム
チック(timetic) である。これはCPU を使用してオペレ
ーションが使用中であった時間と解釈されるのではな
く、むしろ要求が提出された時とオペレーションが完了
した時との間の時間である。例えば、スワッパによって
スワップ要求が提出されたときに、スワッパは CPUをあ
きらめ、ディスク I/Oが終了できるまで他を処理するこ
とができ、その後オペレーションを完了する。経過時間
は、スワッパがディスクを待ち、停止している時間を含
み全時間を含む。
【0136】最初の物理的ディスクの ID :システムが
最初の物理的ディスクに割当てたIDである。各物理的デ
ィスクは最初の物理的ディスクに割当てられたIDから開
始する連続番号が割当てられる。 物理的ディスクの数:システムに導入された物理的ディ
スクの合計数。
【0137】セクタの数:512バイト・セクタの数。 物理的ディスクID:物理的ディスクに割当てられたID 処理名:これは .EXE 見出しで定義された処理名又
は、.EXEファイルのファイル名である(期間又はファイ
ル延長は含まない)。
【0138】前の処理を遂行する時間:前の処理を遂行
する間に遭遇する合計タイムチックである(割込みレベ
ルにおいて費やされる時間〔前の処理の割込みにかかる
時間〕を含む)。 前の処理の割込みにかかる時間:前の処理を遂行してい
る間、割込レベルにある間に遭遇した合計タイムチック
(timetic) である。
【0139】最後の時間記録以来の時間:最後の記録が
送られてからの経過時間。この値は正確に計算するため
に供給される。 タイムチック(timetic) :8253/8254チップか
ら発生した値である。その値は下記のように0.838
0953445を乗じることによってマイクロ秒に変換
することができる。マイクロ秒=タイムチック×0.8
380953445
【0140】TRACECMD:ユーザが追跡指令を発行したこ
とを示す。 ワード:インテル(Intel) ホーマットで2バイトである
(すなわち、バイト−反転)。IBM C/2 において、
これは無符号の短い整数(USHORT) である。
【0141】図形表示 前述の資源の利用率又はパホーマンスの監視を図形描写
するため、本発明の好ましい実施例は 0S/2 表示管理ウ
ィンドウ及び図形機能を使用する。この方法は、ユーザ
ーが複数ウィンドウ(又は表示窓)に複数グループの関
連情報を同時に観察することを可能にする。親ウィンド
ウと称する1つの主ウィンドウは子ウィンドウと称する
資源利用情報を表示するその他のウィンドウのすべてを
含む。図6に示すように、資源情報はあるデータ処理シ
ステム資源の百分率利用を表示する図形の形式が与えら
れる。
【0142】この資源利用データは表示されて、ユーザ
構成時間(例えば、最後の600秒)、又は図7の(B)
の検討時間122を提供する。このように、資源利用の
即時記録及び最近/過去記録の両記録を提供する。ユー
ザはウィンドウの表示特性と同様、資源モニタの全部又
はあるものを観察するよう選択することができる。他の
情報、又は他の形式の同一情報も子ウィンドウに供給す
ることができる。子ウィンドウにデータを表示すると
き、及び表示の仕方を制御するパラメータの表示は主ウ
ィンドウ(window's)のメニュー(活動)バーによりユー
ザが変更可能である。
【0143】当業者が知るように、OS/2表示マネジャ・
インターフェースに対し希望する図形表示を与えるため
に、標準ウィンドウ・プログラミング方式が使用され
る。表示マネジャは表示ウィンドウ又は表示窓に実際に
データを供給するエンティティである。マイクロソフト
(Microsoft's) のウィンドウス(Windows2)、エイチ・ピ
ー(HP's)のニュー・ウェイブ(New Wave3) 、X Window
s4、又は AIXWindows5と組合わせたDOS のような他のオ
ペレーティング・システムも又、本発明の精神及び範囲
から離れることなく、ウィンドウ状表示に対して類似の
プログラミング・インターフェースを提供し、同様にそ
れらそれぞれのシステムの資源モニタの表示に使用する
ことができる。(注:2 はマイクロソフト社(Microsoft
Corp.) の商標;3 はヒューレット・パッカード社(He
wlett-Packard Corp.)の商標;4 はM.I.T.の商標;5
アイ・ビー・エム社(IBM Corp.) の商標)。
【0144】最後に、図16は本発明の好ましい実施例
による一般化したデータ処理システムを示す。CPU 19
0,RAM 194及び周辺装置196(直接アクセス記憶
装置又は DASD のような)がバス構造により相互に持続
される。同様に、ROS 192、及びポインタ/入力装置
200を有するキーボード198がこのバス204に取
付けられる。これらは本好ましい実施例で監視すること
ができる資源である。
【0145】表示手段202も又このバスに取付けら
れ、ユーザに対し資源監視(monitor's) の結果を与える
ことができる。この表示手段も同様に共通バス204に
取付けられる。ここに示すような一般的バスではなく、
特定の装置間に高速通路を有するよう、他のものに変
化、変更したものも本発明の精神及び範囲から離れるこ
となく、同様に本発明の範囲内に入るであろう。
【0146】以上説明したように、このデータ処理シス
テムの追跡付利用監視はハードウェアを専用化すること
なく、監視しているシステム・パホーマンスに顕著な衝
撃を与えることなく、実時間によるパホーマンスの監視
を行うことができる。以上、本発明の好ましい実施例を
説明したが、本発明はそれに限定するものではなく、本
発明の範囲内で変化変更しうることは明らかである。以
下、表7乃至表27に APIに対してインターフェースす
るための標本C原始コードを示す。
【0147】
【表7】
【0148】
【表8】
【0149】
【表9】
【0150】
【表10】
【0151】
【表11】
【0152】
【表12】
【0153】
【表13】
【0154】
【表14】
【0155】
【表15】
【0156】
【表16】
【0157】
【表17】
【0158】
【表18】
【0159】
【表19】
【0160】
【表20】
【0161】
【表21】
【0162】
【表22】
【0163】
【表23】
【0164】
【表24】
【0165】
【表25】
【0166】
【表26】
【0167】
【表27】
【0168】
【発明の効果】以上説明したように、本発明は上記のよ
うに構成したことにより、資源モニタを実時間で動作
し、データ処理システムの事象追跡データを実時間で捕
獲して、それを実時間で減縮し処理することにより、デ
ータ解析を実時間で実行することができ、効率良いデー
タ監視ができるようになった。
【図面の簡単な説明】
【図1】システム・パホーマンス・モニタの概念モデル
を示す図
【図2】システム・パホーマンス・モニタの機能モデル
を示す図
【図3】監視するシステム・メモリーの類別を示す図
【図4】実効ページ・セットの計算タイミングを示す図
【図5】システム・メモリー使用算法の流れ図
【図6】測定しているシステム資源の図形表示を示す図
【図7】表示窓のメニューの使用方法を示す図であり、 (A) は活動バーによるメニューの選択を示す図 (B) はユーザに対する対話ボックスを示す図
【図8】ユーザの入力を受入れ、パラメータの更新を示
す流れ図
【図9】周辺装置の利用率の測定方法を示す図
【図10】高分解能システム・タイマの構成を示す図
【図11】内部装置ドライバ緩衝記憶機構に記憶される
普遍化した記録のホーマット図であり、 (A) は正規化された記録を示す図 (B) はファイル・システム・フックを示す図
【図12】パホーマンス・データ収集制御プログラムに
対するアプリケーション・プログラミング・インターフ
ェースのための構文構造を示す図
【図13】追跡パイプ記録の詳細を示す図
【図14】追跡パイプ記録の詳細を示す図
【図15】追跡パイプ記録の詳細を示す図
【図16】データ処理システムのブロック図
【符号の説明】
21 監視システム 23 データ収集機能 25 資源モニタ 27 API 29 パイプ 31 資源 33 データ処理システムの表示 35 データ収集技法 37 データ縮小技法 39 表示技法 100 上境界 102 下境界 110 活動バー 120 対話ボックス 172 内部タイマ 174 タイマ・モジュール 180 内部レジスタ 182 システム主メモリー 196 周辺装置 198 キーボード 200 ポインタ/入力装置 202 表示手段 204 共通バス
フロントページの続き (72)発明者 チモスィ・マンフレッド・ホルク アメリカ合衆国78757、テキサス州、オー スチン、ロメリア、1401番地 (72)発明者 テルホード・ノックス・ジュニア アメリカ合衆国78758、テキサス州、オー スチン、リンカーンシィア・ドライブ、 12021番地 (72)発明者 チャールス・リンカーン・ラビィ アメリカ合衆国78746、テキサス州、オー スチン、フックルベリィ・コブ、6501番地 (72)発明者 ロバート・チャールス・シャイ アメリカ合衆国33498、フロリダ州、ボ カ・ラトン、第186コート・サウス、10380 番地 (72)発明者 マーク・ダビド・ターナ アメリカ合衆国78727、テキサス州、オー スチン、セリオト・トレイル、12702番地 (72)発明者 ステハン・アサ・イーマンズ アメリカ合衆国78681、テキサス州、ラウ ンド・ロック、モッキングバード・ドライ ブ、2227番地

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 データ処理システムにより発生した資源
    事象を受信し、 前記資源事象に基づき、前記資源事象を濾過するか又は
    通過するかを決定し、 前記通過した資源事象を処理して同類の前記資源事象を
    単一事象に併合する各工程を含み、データ処理システム
    において資源データを実時間で捕獲し減縮する方法。
  2. 【請求項2】 前記資源事象は2モードであることを特
    徴とする請求項1記載の方法。
  3. 【請求項3】 更に、前記単一事象に対し少くとも1つ
    のタイムスタンプの値を包含させる工程を含むことを特
    徴とする請求項1記載の方法。
  4. 【請求項4】 データ処理システムにより発生した多重
    処理資源事象を受信し、 前記多重処理資源事象に基づき、前記多重処理資源事象
    を濾過するか又は通過するかを決定し、 通過した前記多重処理資源事象を処理して同類の前記資
    源事象を単一事象に併合する各工程を含み、データ処理
    システムにおいて資源データを実時間で捕獲し減縮する
    方法。
  5. 【請求項5】 データ処理システムにより発生した多重
    処理資源事象を受信する受信手段と、 前記多重処理資源事象に基づき、前記多重処理資源事象
    を濾過するか又は通過するかを決定する決定手段と、通
    過した多重処理資源事象を処理して同類の前記資源事象
    を単一事象に併合する処理手段とを含み、データ処理シ
    ステムにおいて資源データを実時間で捕獲し減縮するシ
    ステム。
  6. 【請求項6】 更に、前記単一事象に対し少くとも1つ
    のタイムスタンプの値を包含させる工程を含むことを特
    徴とする請求項5記載のシステム。
  7. 【請求項7】 前記単一事象は対応する前フック事象及
    び後フック事象を表示することを特徴とする請求項5記
    載のシステム。
  8. 【請求項8】 前記単一事象は複数の割込み事象を表示
    することを特徴とする請求項5記載のシステム。
  9. 【請求項9】 前記資源事象は処理レベルに細分性を有
    することを特徴とする請求項5記載のシステム。
JP4135659A 1991-06-10 1992-04-30 データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム Expired - Lifetime JPH0816877B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US71348691A 1991-06-10 1991-06-10
US713486 1991-06-10

Publications (2)

Publication Number Publication Date
JPH05197594A true JPH05197594A (ja) 1993-08-06
JPH0816877B2 JPH0816877B2 (ja) 1996-02-21

Family

ID=24866332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4135659A Expired - Lifetime JPH0816877B2 (ja) 1991-06-10 1992-04-30 データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム

Country Status (3)

Country Link
US (1) US6049798A (ja)
EP (1) EP0518573A3 (ja)
JP (1) JPH0816877B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07129429A (ja) * 1993-10-28 1995-05-19 Toppan Printing Co Ltd プリンターページ記述言語の出力エラー予測装置ならびにコード最適化装置

Families Citing this family (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960008583A (ko) * 1994-08-26 1996-03-22 윌리암 티. 엘리스 데이타 프로세싱 시스템 및 데이타 프로세싱 시스템 관리 방법
US5913040A (en) * 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
US6247143B1 (en) * 1998-06-30 2001-06-12 Sun Microsystems, Inc. I/O handling for a multiprocessor computer system
US6269460B1 (en) * 1998-09-01 2001-07-31 International Business Machines Corporation Dynamic enhancement of error condition handling and displayed error messages in computer operations
US6237143B1 (en) * 1998-09-17 2001-05-22 Unisys Corp. Method and system for monitoring and capturing all file usage of a software tool
US6341338B1 (en) 1999-02-04 2002-01-22 Sun Microsystems, Inc. Protocol for coordinating the distribution of shared memory
US6434714B1 (en) * 1999-02-04 2002-08-13 Sun Microsystems, Inc. Methods, systems, and articles of manufacture for analyzing performance of application programs
US20020135611A1 (en) * 1999-03-04 2002-09-26 Trevor Deosaran Remote performance management to accelerate distributed processes
US6580431B1 (en) 1999-03-04 2003-06-17 Nexmem System, method, and computer program product for intelligent memory to accelerate processes
US6434594B1 (en) * 1999-03-09 2002-08-13 Talk2 Technology, Inc. Virtual processing network enabler
GB2348718A (en) * 1999-04-07 2000-10-11 Ibm Data processing system having a centralised trace facility with dynamic tracing
US6321300B1 (en) * 1999-05-14 2001-11-20 Rise Technology Company Apparatus and method for dynamically reconfigurable timed flushing of a queue of coalescing write buffers
US6611926B1 (en) * 1999-11-29 2003-08-26 Hewlett-Packard Development Company, L.P. Mechanisms to sample shared-dirty-line addresses
US7035989B1 (en) 2000-02-16 2006-04-25 Sun Microsystems, Inc. Adaptive memory allocation
US20020065864A1 (en) * 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US6802057B1 (en) 2000-05-03 2004-10-05 Sun Microsystems, Inc. Automatic generation of fortran 90 interfaces to fortran 77 code
US6647546B1 (en) 2000-05-03 2003-11-11 Sun Microsystems, Inc. Avoiding gather and scatter when calling Fortran 77 code from Fortran 90 code
KR100361340B1 (ko) * 2000-05-15 2002-12-05 엘지전자 주식회사 씨피유 클럭 제어 방법
GB2363221B (en) * 2000-06-09 2002-05-01 Oracle Corp Summary creation
KR20020014364A (ko) * 2000-08-17 2002-02-25 윤종용 장치 드라이버의 자동 진단 장치 및 그 방법
US6910107B1 (en) 2000-08-23 2005-06-21 Sun Microsystems, Inc. Method and apparatus for invalidation of data in computer systems
KR100613201B1 (ko) * 2000-08-28 2006-08-18 마이크로코넥트 엘엘씨 씨피유 사용량 측정 방법
US7043566B1 (en) 2000-10-11 2006-05-09 Microsoft Corporation Entity event logging
US7406681B1 (en) 2000-10-12 2008-07-29 Sun Microsystems, Inc. Automatic conversion of source code from 32-bit to 64-bit
US6957208B1 (en) 2000-10-31 2005-10-18 Sun Microsystems, Inc. Method, apparatus, and article of manufacture for performance analysis using semantic knowledge
US7111059B1 (en) * 2000-11-10 2006-09-19 Microsoft Corporation System for gathering and aggregating operational metrics
US6789046B1 (en) 2000-12-05 2004-09-07 Microsoft Corporation Performance logging solution
US20020147967A1 (en) * 2001-02-14 2002-10-10 Ncr Corporation Operating software scheduling priority recorder
JP2002328818A (ja) * 2001-02-27 2002-11-15 Sony Computer Entertainment Inc 情報処理装置、統合型情報処理装置、実行負荷計測方法、コンピュータプログラム
SE0101064L (sv) * 2001-03-26 2002-08-06 Rfo Realfast Operating Systems Integrerad krets för övervakning av händelser i datorsystem
US6889346B2 (en) * 2001-07-16 2005-05-03 International Business Machines Corporation Scoping of real time signals of remote communication systems over a computer network: systems, methods and program products
CA2365427A1 (en) 2001-12-19 2003-06-19 Ibm Canada Limited-Ibm Canada Limitee Internal product fault monitoring apparatus and method
US7146573B2 (en) * 2002-01-28 2006-12-05 International Business Machines Corporation Automatic window representation adjustment
US7019757B2 (en) 2002-01-28 2006-03-28 International Business Machines Corporation Changing the alpha levels of an application window to indicate a status of a computing task
US20030142143A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Varying heights of application images to convey application status
US6954905B2 (en) * 2002-01-28 2005-10-11 International Business Machines Corporation Displaying transparency characteristic aids
US20030142141A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying specified resource usage
US20030142149A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Specifying audio output according to window graphical characteristics
US20030142133A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Adjusting transparency of windows to reflect recent use
US6996783B2 (en) * 2002-01-28 2006-02-07 International Business Machines Corporation Selectively adjusting transparency of windows within a user interface using a flashlight tool
US7046254B2 (en) 2002-01-28 2006-05-16 International Business Machines Corporation Displaying transparent resource aids
US7143411B2 (en) * 2002-03-15 2006-11-28 Hewlett-Packard Development Company, L.P. Capping processor utilization
US6816809B2 (en) * 2002-07-23 2004-11-09 Hewlett-Packard Development Company, L.P. Hardware based utilization metering
US20060123421A1 (en) * 2002-12-27 2006-06-08 Loboz Charles Z Streamlining cpu utilization by delaying transactions
KR100518829B1 (ko) * 2003-06-02 2005-10-06 삼성전자주식회사 프린터 에러 처리 시스템 및 그 에러 처리방법
US7603442B2 (en) * 2003-06-20 2009-10-13 Microsoft Corporation Method and system for maintaining service dependency relationships in a computer system
US7406694B2 (en) * 2003-06-20 2008-07-29 Microsoft Corporation Method and system for tracking kernel resource usage
US6959264B2 (en) * 2003-09-30 2005-10-25 International Business Machines Corporation Autonomous computing probe agent
US7026935B2 (en) * 2003-11-10 2006-04-11 Impinj, Inc. Method and apparatus to configure an RFID system to be adaptable to a plurality of environmental conditions
KR100636268B1 (ko) * 2004-01-27 2006-10-19 삼성전자주식회사 임베디드 멀티태스크 운영체제를 사용하는 시스템에서운영체제의 소프트웨어 모듈 상태 감시 장치 및 그 방법
US7421592B1 (en) * 2004-02-13 2008-09-02 Microsoft Corporation High performance counter for realistic measurement of computer system load
DE102004015877A1 (de) * 2004-03-31 2005-10-27 Siemens Ag Verfahren zum Betrieb eines Automatisierungsgerätes
US7809825B2 (en) * 2004-05-05 2010-10-05 International Business Machines Corporation Dissolving network resource monitor
US20060048160A1 (en) * 2004-09-02 2006-03-02 International Business Machines Corporation Method, apparatus, and computer program product for providing a self-tunable parameter used for dynamically yielding an idle processor
US7571224B2 (en) * 2004-10-29 2009-08-04 International Business Machines Corporation Method for using presence in a system management environment
KR100960577B1 (ko) 2005-02-08 2010-06-03 오블롱 인더스트리즈, 인크 제스처 기반의 제어 시스템을 위한 시스템 및 방법
US7346476B2 (en) * 2005-03-17 2008-03-18 International Business Machines Corporation Event tracing with time stamp compression
US20060212243A1 (en) * 2005-03-17 2006-09-21 Levine Frank E Event tracing using hash tables with support for dynamic address to name resolution
US7369954B2 (en) * 2005-03-17 2008-05-06 International Business Machines Corporation Event tracing with time stamp compression and history buffer based compression
US7496902B2 (en) * 2005-03-17 2009-02-24 International Business Machines Corporation Data and instruction address compression
US7539647B2 (en) * 2005-08-25 2009-05-26 Microsoft Corporation Using power state to enforce software metering state
US7577875B2 (en) * 2005-09-14 2009-08-18 Microsoft Corporation Statistical analysis of sampled profile data in the identification of significant software test performance regressions
US20070076478A1 (en) * 2005-09-30 2007-04-05 Sigmatel, Inc. System and method of memory block management
JP4760491B2 (ja) * 2005-12-08 2011-08-31 株式会社日立製作所 イベント処理システム、イベント処理方法、イベント処理装置、及び、イベント処理プログラム
US7474991B2 (en) * 2006-01-19 2009-01-06 International Business Machines Corporation Method and apparatus for analyzing idle states in a data processing system
US9323578B2 (en) 2006-01-19 2016-04-26 International Business Machines Corporation Analyzing wait states in a data processing system
JP2007199811A (ja) * 2006-01-24 2007-08-09 Hitachi Ltd プログラム制御方法、計算機およびプログラム制御プログラム
US9063801B2 (en) * 2008-04-24 2015-06-23 Oblong Industries, Inc. Multi-process interactive systems and methods
US8370383B2 (en) 2006-02-08 2013-02-05 Oblong Industries, Inc. Multi-process interactive systems and methods
US8531396B2 (en) 2006-02-08 2013-09-10 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US9910497B2 (en) 2006-02-08 2018-03-06 Oblong Industries, Inc. Gestural control of autonomous and semi-autonomous systems
US8537111B2 (en) 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US9823747B2 (en) 2006-02-08 2017-11-21 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
US7506090B2 (en) * 2006-06-14 2009-03-17 Honeywell International Inc. System and method for user-configurable resource arbitration in a process control system
ATE426854T1 (de) * 2006-07-26 2009-04-15 Magix Ag Einzel-track last anzeige
US20080077868A1 (en) * 2006-09-22 2008-03-27 Bartucca Francis M System and Method for Visually Representing Resource Usage in a Multi-Node Data Processing System
US7827447B2 (en) * 2007-01-05 2010-11-02 International Business Machines Corporation Sliding window mechanism for data capture and failure analysis
US7661032B2 (en) * 2007-01-06 2010-02-09 International Business Machines Corporation Adjusting sliding window parameters in intelligent event archiving and failure analysis
JP4871174B2 (ja) * 2007-03-09 2012-02-08 株式会社日立製作所 仮想計算機システム
EP2150893A4 (en) 2007-04-24 2012-08-22 Oblong Ind Inc PROTEINS, POOLS AND SLAWX IN PROCESSING ENVIRONMENTS
TWI352931B (en) * 2007-06-20 2011-11-21 Ind Tech Res Inst Resource management device and method
US8284198B1 (en) * 2008-03-03 2012-10-09 Network Appliance, Inc. Method for visualizing space utilization in storage containers
US20090228580A1 (en) * 2008-03-05 2009-09-10 International Business Machines Corporation Computing environment sensitive data synchronization
US7552396B1 (en) * 2008-04-04 2009-06-23 International Business Machines Corporation Associating screen position with audio location to detect changes to the performance of an application
US9495013B2 (en) 2008-04-24 2016-11-15 Oblong Industries, Inc. Multi-modal gestural interface
US9684380B2 (en) 2009-04-02 2017-06-20 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US9952673B2 (en) 2009-04-02 2018-04-24 Oblong Industries, Inc. Operating environment comprising multiple client devices, multiple displays, multiple users, and gestural control
US9740922B2 (en) 2008-04-24 2017-08-22 Oblong Industries, Inc. Adaptive tracking system for spatial input devices
US9740293B2 (en) 2009-04-02 2017-08-22 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US10642364B2 (en) 2009-04-02 2020-05-05 Oblong Industries, Inc. Processing tracking and recognition data in gestural recognition systems
US8723795B2 (en) 2008-04-24 2014-05-13 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
US8365177B2 (en) * 2009-01-20 2013-01-29 Oracle International Corporation Dynamically monitoring and rebalancing resource allocation of monitored processes based on execution rates of measuring processes at multiple priority levels
US10929399B2 (en) * 2009-02-02 2021-02-23 Micro Focus Llc Database system testing using robustness maps
US9317128B2 (en) 2009-04-02 2016-04-19 Oblong Industries, Inc. Remote devices used in a markerless installation of a spatial operating environment incorporating gestural control
US10824238B2 (en) 2009-04-02 2020-11-03 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US9559973B1 (en) * 2009-06-05 2017-01-31 Dragonwave Inc. Wireless communication link bandwidth utilization monitoring
US9933852B2 (en) 2009-10-14 2018-04-03 Oblong Industries, Inc. Multi-process interactive systems and methods
US9971807B2 (en) 2009-10-14 2018-05-15 Oblong Industries, Inc. Multi-process interactive systems and methods
US20110209050A1 (en) * 2010-02-22 2011-08-25 Wei Lu System and Method for Presentation Syntax Based Record Capture
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
WO2011147179A1 (zh) * 2010-05-28 2011-12-01 烽火通信科技股份有限公司 一种ptn网络业务流量管理的方法
US9274842B2 (en) * 2010-06-29 2016-03-01 Microsoft Technology Licensing, Llc Flexible and safe monitoring of computers
US8489939B2 (en) * 2010-10-25 2013-07-16 At&T Intellectual Property I, L.P. Dynamically allocating multitier applications based upon application requirements and performance and reliability of resources
US8949489B1 (en) * 2012-03-21 2015-02-03 Google Inc. Method for combining bulk and latency-sensitive input and output
US8718807B2 (en) 2012-03-23 2014-05-06 Honeywell International Inc. System and method for robust real-time control of regular automated production using master recipe
EP2706420B1 (de) * 2012-09-05 2015-03-18 Siemens Aktiengesellschaft Verfahren zum Betreiben eines Automatisierungsgerätes
US8924443B2 (en) * 2012-10-05 2014-12-30 Gary Robin Maze Document management systems and methods
US9183065B1 (en) * 2012-11-01 2015-11-10 Amazon Technologies, Inc. Providing access to an application programming interface through a named pipe
US10528590B2 (en) 2014-09-26 2020-01-07 Oracle International Corporation Optimizing a query with extrema function using in-memory data summaries on the storage server
US10642837B2 (en) 2013-03-15 2020-05-05 Oracle International Corporation Relocating derived cache during data rebalance to maintain application performance
KR101694310B1 (ko) * 2013-06-14 2017-01-10 한국전자통신연구원 멀티코어 프로세서 기반의 모니터링 장치 및 그 방법
US9021152B2 (en) * 2013-09-30 2015-04-28 Google Inc. Methods and systems for determining memory usage ratings for a process configured to run on a device
US9990046B2 (en) 2014-03-17 2018-06-05 Oblong Industries, Inc. Visual collaboration interface
CN106201839B (zh) * 2015-04-30 2020-02-14 阿里巴巴集团控股有限公司 一种业务对象的信息加载方法和装置
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US11423053B2 (en) * 2016-01-30 2022-08-23 Micro Focus Llc Log event cluster analytics management
US9990158B2 (en) * 2016-06-22 2018-06-05 Sandisk Technologies Llc Storage system and method for burst mode management using transfer RAM
US10529302B2 (en) 2016-07-07 2020-01-07 Oblong Industries, Inc. Spatially mediated augmentations of and interactions among distinct devices and applications via extended pixel manifold
US11086876B2 (en) 2017-09-29 2021-08-10 Oracle International Corporation Storing derived summaries on persistent memory of a storage device
US10990596B2 (en) 2019-06-14 2021-04-27 Oracle International Corporation Non-disruptive referencing of special purpose operators for database management systems
US11200234B2 (en) 2019-06-14 2021-12-14 Oracle International Corporation Non-disruptive dynamic ad-hoc database catalog services
CN110750346B (zh) * 2019-10-17 2022-11-15 Oppo(重庆)智能科技有限公司 任务运行优化方法、装置、终端及存储介质
CN111625302A (zh) * 2020-05-29 2020-09-04 北京字节跳动网络技术有限公司 函数耗时跟踪方法、设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63233443A (ja) * 1987-03-20 1988-09-29 Nec Corp 電子計算機システムの稼動状況デ−タ変換方式
JPH0353349A (ja) * 1989-07-20 1991-03-07 Nec Corp 電子計算機システム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4533997A (en) * 1972-08-25 1985-08-06 Westinghouse Electric Corp. Computer monitored or controlled system which may be modified and de-bugged on-line by one not skilled in computer programming
US4019040A (en) * 1973-10-02 1977-04-19 Westinghouse Electric Corporation CRT display and record system
US4291376A (en) * 1979-08-08 1981-09-22 Three Rivers Enterprises, Inc. Digital energy monitor
US4373184A (en) * 1979-12-26 1983-02-08 The Boeing Company Vertical flight path steering system for aircraft
US4296727A (en) * 1980-04-02 1981-10-27 Micro-Burner Systems Corporation Furnace monitoring system
US4435759A (en) * 1981-06-15 1984-03-06 International Business Machines Corporation Hardware monitor for obtaining processor software/hardware interrelationships
US4485440A (en) * 1981-09-24 1984-11-27 At&T Bell Laboratories Central processor utilization monitor
US4459656A (en) * 1981-10-01 1984-07-10 Honeywell Information Systems Inc. Clocking system for a computer performance monitoring device
US4533910A (en) * 1982-11-02 1985-08-06 Cadtrak Corporation Graphics display system with viewports of arbitrary location and content
US4590550A (en) * 1983-06-29 1986-05-20 International Business Machines Corporation Internally distributed monitoring system
US5103394A (en) * 1984-04-30 1992-04-07 Hewlett-Packard Company Software performance analyzer
US5047919A (en) * 1986-04-03 1991-09-10 Harris Corporation Method and apparatus for monitoring software execution in a parallel multiprocessor computer system
US4821178A (en) * 1986-08-15 1989-04-11 International Business Machines Corporation Internal performance monitoring by event sampling
US4787040A (en) * 1986-12-22 1988-11-22 International Business Machines Corporation Display system for automotive vehicle
US4878183A (en) * 1987-07-15 1989-10-31 Ewart Ron B Photographic image data management system for a visual system
US4823290A (en) * 1987-07-21 1989-04-18 Honeywell Bull Inc. Method and apparatus for monitoring the operating environment of a computer system
US4937743A (en) * 1987-09-10 1990-06-26 Intellimed Corporation Method and system for scheduling, monitoring and dynamically managing resources
US4905171A (en) * 1987-11-09 1990-02-27 International Business Machines Corporation Workstation controller performance monitor
US5072376A (en) * 1988-06-10 1991-12-10 Amdahl Corporation Measuring utilization of processor shared by multiple system control programs
US5109486A (en) * 1989-01-06 1992-04-28 Motorola, Inc. Distributed computer system with network and resource status monitoring
US5165036A (en) * 1989-01-31 1992-11-17 Sharp Kabushiki Kaisha Parallel processing development system with debugging device includes facilities for schematically displaying execution state of data driven type processor
US5206948A (en) * 1989-12-22 1993-04-27 Bull Hn Information Systems Inc. Bus monitor with means for selectively capturing trigger conditions
US5251324A (en) * 1990-03-20 1993-10-05 Scientific-Atlanta, Inc. Method and apparatus for generating and collecting viewing statistics for remote terminals in a cable television system
US5086386A (en) * 1990-03-23 1992-02-04 Sun Microsystems, Inc. Method and apparatus for benchmarking the working set of window-based computer systems
US5228039A (en) * 1990-05-09 1993-07-13 Applied Microsystems Corporation Source-level in-circuit software code debugging instrument
US5291416A (en) * 1991-03-08 1994-03-01 Software Algoritms Incorporated Event feedback for numerically controlled machine tool and network implementation thereof
US5193180A (en) * 1991-06-21 1993-03-09 Pure Software Inc. System for modifying relocatable object code files to monitor accesses to dynamically allocated memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63233443A (ja) * 1987-03-20 1988-09-29 Nec Corp 電子計算機システムの稼動状況デ−タ変換方式
JPH0353349A (ja) * 1989-07-20 1991-03-07 Nec Corp 電子計算機システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07129429A (ja) * 1993-10-28 1995-05-19 Toppan Printing Co Ltd プリンターページ記述言語の出力エラー予測装置ならびにコード最適化装置

Also Published As

Publication number Publication date
JPH0816877B2 (ja) 1996-02-21
EP0518573A2 (en) 1992-12-16
US6049798A (en) 2000-04-11
EP0518573A3 (en) 1993-08-25

Similar Documents

Publication Publication Date Title
JPH05197594A (ja) データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム
US5463775A (en) System and method for performing monitoring of resources in a data processing system in real time
US6598012B1 (en) Method and system for compensating for output overhead in trace date using trace record information
US5450349A (en) Computer system performance evaluation system and method
US6223338B1 (en) Method and system for software instruction level tracing in a data processing system
US6754890B1 (en) Method and system for using process identifier in output file names for associating profiling data with multiple sources of profiling data
CN100338581C (zh) 用于确定cpu利用率的独立于操作系统的方法和系统
US7389497B1 (en) Method and system for tracing profiling information using per thread metric variables with reused kernel threads
US6539339B1 (en) Method and system for maintaining thread-relative metrics for trace data adjusted for thread switches
US4485440A (en) Central processor utilization monitor
US6098169A (en) Thread performance analysis by monitoring processor performance event registers at thread switch
US7239980B2 (en) Method and apparatus for adaptive tracing with different processor frequencies
US6546548B1 (en) Method and system for compensating for output overhead in trace data using initial calibration information
US8141053B2 (en) Call stack sampling using a virtual machine
US5086386A (en) Method and apparatus for benchmarking the working set of window-based computer systems
US6507805B1 (en) Method and system for compensating for instrumentation overhead in trace data by detecting minimum event times
US6732357B1 (en) Determining and compensating for temporal overhead in trace record generation and processing
US5799143A (en) Multiple context software analysis
US5872913A (en) System and method for low overhead, high precision performance measurements using state transistions
JPH0823837B2 (ja) サンプリング性能分析方法及び装置
JPH11327951A (ja) プログラムの性能をモニタするための方法及び装置
US20060265693A1 (en) Methods and apparatus for software profiling
US6530031B1 (en) Method and apparatus for timing duration of initialization tasks during system initialization
US20050010908A1 (en) Method, apparatus and computer program product for implementing breakpoint based performance measurement
US6332117B1 (en) General event stamping scheme