JP4894362B2 - 稼働状況監視プログラム - Google Patents

稼働状況監視プログラム Download PDF

Info

Publication number
JP4894362B2
JP4894362B2 JP2006161291A JP2006161291A JP4894362B2 JP 4894362 B2 JP4894362 B2 JP 4894362B2 JP 2006161291 A JP2006161291 A JP 2006161291A JP 2006161291 A JP2006161291 A JP 2006161291A JP 4894362 B2 JP4894362 B2 JP 4894362B2
Authority
JP
Japan
Prior art keywords
program
machine language
execution
operation status
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006161291A
Other languages
English (en)
Other versions
JP2007328722A (ja
Inventor
正之 井口
治久 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006161291A priority Critical patent/JP4894362B2/ja
Priority to US11/709,268 priority patent/US8122435B2/en
Publication of JP2007328722A publication Critical patent/JP2007328722A/ja
Application granted granted Critical
Publication of JP4894362B2 publication Critical patent/JP4894362B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime

Description

本発明は、コンピュータ上で実行されるプログラムの稼働情報を監視するための機能をコンピュータに付与する稼働状況監視プログラムに関する。
コンピュータを業務に使用している多くの私企業/自治体などでは、業務や組織の変化に応じて新しいプログラムが追加され、かつ、既存のプログラムを削除するにはリスクが伴うため、時間の経過と共にプログラムの本数が増加する傾向がある。ただし、プログラム本数が増加しても、実際に業務で稼働しているプログラムはその一部でしかない場合がある。このような場合には、実際に使用しないプログラムに対して保守費用を支払ったり、ストレージ装置の容量を無駄に消費するという問題がある。
このため、従来から、システムに含まれるプログラムの稼働状況を監視し、稼働していないプログラムを削除対象としてリストアップする方法が提案されている。例えば、特許文献1には、オペレーティングシステムによって実行されるプロセスについての情報を、プログラム・インタフェースを利用して収集し、プロセスの実行状況を監視する監視手段と、監視手段が収集する情報に含まれるアプリケーション・ソフトウエアについてのプロセスの実行状況を集計して、アプリケーション・ソフトウエアの稼働実績を生成する生成手段とを含む稼働状況監視装置が開示されている。
特開2004−259036号公報 段落0014
しかしながら、特許文献1に開示されるような従来の装置は、稼働状況をプロセス単位、あるいは、プログラム単位でしか監視できず、実際に業務に使用される部分がプログラム中のほんの一部であり、他の大部分が使用されないようなプログラムもそのまま残すしかないという問題がある。ストレージ装置の有効利用やプログラムの実行速度の向上を図るためには、上記のようなプロセス単位、プログラム単位での稼働状況の監視では不十分であり、ソースプログラムのステップ単位での稼働状況の把握が求められている。
なお、ソースプログラムのステップ単位の監視が必要な場合、従来はプログラマーが机上でソースプログラムを分析したり、運用しているシステムにトレース用のプログラムを埋めて実行される行を調査したり、あるいは、CPUエミュレータにより緻密な走行アドレスを調査していた。ただし、いずれの方法も、技術的には非常に困難な作業を伴い、コンピュータの高度な専門家ではない利用者側で実施するのは困難であった。
本発明は、上記の従来技術の問題点に鑑みてなされたものであり、その課題は、コンピュータの高度な専門家ではない利用者側でも、プログラムの稼働状況をソースプログラムのステップ単位で容易に監視することができる装置としてコンピュータを機能させるプログラムを提供することにある。
本発明にかかる稼働状況監視プログラムは、上記の課題を解決するため、コンピュータにより実行されるプログラムの稼働状況を監視するためのプログラムであって、コンピュータに、ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知機能と、ソースプログラムの各ステップと実行モジュールの機械語命令との対応情報を記憶した定義リストを参照し、検知された機械語命令に相当するステップを特定するステップ位置特定機能と、ソースプログラムの各ステップとステップ単位の実行回数との対応を定義した稼働状況マップ用データテーブルの、ステップ位置特定機能により特定されたステップの実行回数を加算し、稼働状況マップ用データテーブルを更新する更新機能と、各ステップに一対一で対応する単位図形を並べて表示すると共に、稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、各ステップ毎の実行頻度を視認できるようにした稼働状況マップを出力する出力機能と、を実現させることを特徴とする。
上記の定義リストは、ソースプログラムのステップと実行モジュールの機械語命令との対応を直接関連付けるものであってもよいが、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストと、実行モジュールがマッピングされたメモリ空間内の絶対アドレスを定義したマッピングリストとの2つのリストから構成する方が汎用性が高くなる。後者の場合、ステップ位置特定機能は、実行された機械語命令の絶対アドレスに基づいてマッピングリストを参照し、当該機械語命令が含まれるプログラムを特定し、当該絶対アドレスから実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいてリンケージリストを参照し、当該機械語命令に該当するステップを特定することができる。
さらに、実行モジュールがマッピングされるメモリ空間内の絶対アドレスが動的に定義される動的配置プログラムの場合、上記の定義リストとして、動的なマッピングを保持する動的マッピングリストと、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストとを用意すれば、ステップ位置特定機能は、実行された機械語命令の絶対アドレスに基づいて動的マッピングリストを参照し、当該機械語命令が含まれるプログラムを特定し、当該絶対アドレスから実行モジュールの動的に配置された先頭の絶対アドレスを引いて得られた相対アドレスに基づいてリンケージリストを参照し、当該機械語命令に該当するステップを特定することができる。
また、本発明の稼働状況監視プログラムは、コンピュータに、稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出機能と、抽出されたステップを特定する情報、及び当該ステップを含むプログラムを特定する情報とを一覧にして出力する一覧出力機能と、をさらに実現させることが望ましい。
上記の出力機能は、コンピュータに接続されたディスプレイ上に稼働状況マップを表示させ、単位図形の輝度又は色を実行回数に合わせて変化させることが望ましい。稼働状況マップは、紙にプリントアウトしてもよい。
さらに、本発明の稼働状況監視プログラムは、任意のステップが指定された際に、当該ステップを含むプログラムの全ステップに対応する単位図形を他の実行モジュールのステップに対応する単位図形に対して区別できるように表示させる識別表示機能を含むことが望ましい。
以上のように構成された本発明のプログラムによれば、コンピュータの実際の運用時に、ソースプログラムのステップ単位で実行回数をカウントし、これを目に見える形で出力できるため、コンピュータの高度な専門家ではない利用者側でも、プログラムの稼働状況をソースプログラムのステップ単位で容易に監視することができる。したがって、ステップ単位でプログラムの修正や削除をする際の判断資料を提供することができる。また、日々の稼働状況をリアルタイムで監視することができるため、任意の時点で、不要プログラムや未使用ステップを削除することができる。
また、定義リストをマッピングリストとリンケージリストとに分けた場合には、マッピングリストは当該コンピュータに特有の構成となるが、リンケージリストは当該プログラムについて共通となり、他のコンピュータ上で実行される場合にも利用することができる。このようなリンケージリストは、ソースプログラムを機械語に翻訳(コンパイル、及びリンク)した際に翻訳プログラムから出力されるものを利用することができる。
抽出機能及び一覧表示機能を持たせた場合には、実行頻度の少ないステップを自動的に抽出し、利用者に提示することができる。利用者は、一覧に基づいて不要なステップを削除したり、プログラムのロジックを再検討したりすることができる。
さらに、識別表示機能を持たせた場合には、稼働状況マップから、特定のステップがどのプログラムに含まれるステップであるかを容易に判断することできる。したがって、アクセスがない、あるいは、少ないステップが集中している箇所を稼働状況マップ上で発見した時に、これらのステップがどのプログラムのステップであるのか、容易に判別することができ、プログラム単位の稼働状況を把握して削除判断の基準に供することができる。
以下、本発明にかかる稼働状況監視プログラム及びこれを適用した稼働状況監視装置の実施形態を図面に基づいて説明する。最初に、図1に基づいて本実施形態の稼働状況監視プログラムが適用されるコンピュータシステムの概要を説明する。図1に示されるように、このコンピュータシステムは、ネットワーク、あるいはパラレル、シリアル通信を介して互いに接続された被監視コンピュータ10と、この被監視コンピュータの稼働状況を監視する稼働状況監視装置(コンピュータ)20とから構成される。
被監視コンピュータ10は、CPU11、並びにこのCPU11に接続されたハードディスク(HD)12、メモリ(RAM)13及び通信アダプタ14を備えている。HD12には、オペレーティングシステム12aと、CPU11が実行している機械語命令の論理アドレスをカウントするプログラムカウンタ11aの値を逐次読み取るプログラムカウンタ読み出し処理ユニット15と、動的配置プログラム情報テーブル12bと、複数のアプリケーションプログラム12cとがインストールされている。被監視コンピュータ10が起動すると、CPU11はHD12からオペレーティングシステム12aをRAM13上に読み出して実行し、プログラムカウンタ読み出し処理ユニット15と、このオペレーティングシステム上で必要なアプリケーションプログラム12cとを起動する。
オペレーティングシステム12aは、HD12の所定の領域を利用することにより、RAM13の限られた物理メモリ領域を拡張した論理メモリ空間を管理している。物理アドレスと論理アドレスとの変換はオペレーティングシステム12aにより自動的に実行される。実行物理アドレスは、以下の計算により実行論理アドレスに変換される。
実行論理アドレス=実行物理アドレス−プログラム展開先先頭物理アドレス
+プログラム先頭論理アドレス
また、オペレーティングシステム12aは、RAM13の限られた物理メモリ領域を拡張した論理メモリ空間に動的配置プログラムを配置して実行するために、例えば、以下の表1に示されるように、動的配置するプログラム名と配置アドレスを動的配置プログラム情報テーブル12bに管理している。当該プログラム名と配置先頭論理アドレスの記録はオペレーティングシステム12aにより自動的に実行される。
アプリケーションプログラム側では論理アドレスのみを考慮すれば足りるため、以下、論理メモリ空間を基準にして、論理アドレスに基づいて説明する。プログラムカウンタ11aは、CPU11が実行している機械語命令の実行論理アドレスを示すカウンタであり、CPU11に接続されたプログラムカウンタ読み出し処理ユニット15は、この実行論理アドレスを読み出して稼働状況監視装置20に送信する。
同様にプログラムカウンタ読み出し処理ユニット15は、動的配置プログラム情報テーブル12bの動的配置プログラム名及び配置先論理アドレスを読み出して稼働状況監視装置20に送信する。
また、本明細書では、COBOLやC言語等の高級言語で書かれたコードをソースプログラム、これを機械語に翻訳(コンパイル及びリンク)して得られるモジュールをロードモジュール、このロードモジュールが被監視コンピュータ10の論理メモリ空間にロードされたものを実行モジュールとして区別する。ソースプログラムでは、各ステップ位置は当該ソースプログラム先頭を起点とした相対ステップ位置で表され、ロードモジュールでは、各機械語命令位置はモジュール先頭を起点とした相対アドレスで表され、実行モジュールでは、各機械語命令位置は論理メモリ空間の先頭を起点とした絶対アドレスで表される。なお、「実行論理アドレス」、「先頭論理アドレス」等の「論理アドレス」の文字を含むアドレスは、いずれも論理メモリ空間の絶対アドレスを示し、ロードモジュール内のアドレスを示す相対アドレスとは区別される。
稼働状況監視装置20は、CPU21、並びにこのCPU21に接続されたHD22、RAM23及び通信アダプタ24、ディスプレイ25を備えている。HD22には、オペレーティングシステム22aと、被監視装置10のプログラム稼働状況を監視する稼働状況監視プログラム22bとがインストールされると共に、この稼働状況監視プログラムに利用されるマッピングリスト22c及びマッピングリスト22f、リンケージリスト22d、そして、稼働状況監視プログラム22bの出力を記録する稼働状況マップ用データテーブル22eが保存されている。
マッピングリスト22c及びリンケージリスト22dは、ソースプログラムの各ステップと実行モジュールの機械語命令との対応を定義した定義リストに相当する。マッピングリスト22cは、実行モジュールがマッピングされたメモリ空間内の絶対論理アドレスを定義したものであり、例えば、以下の表2に示されるように、被監視コンピュータ10により実行されている各実行モジュールの論理メモリ空間への展開先の先頭論理アドレスと終了論理アドレスとを定義している。
一方、リンケージリスト22dは、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したものであり、表2に示された各プログラム毎に定義されている。例えば、上記の表2のプログラムAAAAについて、以下の表3に示されるようなリンケージリスト22dが用意される。リストには、各ステップに相当する機械語命令の先頭相対アドレスと終了相対アドレス、先頭ステップを0とした相対ステップ位置、そして、総ステップ数が含まれている。ソースプログラムの1ステップに対しては、通常複数行の機械語命令が対応するため、以下のように先頭、終了相対アドレスを定義することにより、各ステップに相当する機械語命令の範囲を示している。
稼働状況監視プログラム22bは、上記のマッピングリスト22c及びリンケージリスト22dを用いることにより、被監視コンピュータ10のプログラムカウンタ読み出し処理ユニット15から出力される実行論理アドレスに基づいて、実行されているのがどのソースプログラムのどのステップなのかを特定する。すなわち、実行論理アドレスに基づいてマッピングリスト22cを参照することにより、当該実行論理アドレスに割り当てられた機械語命令が含まれるプログラムを特定できる。そして、この実行論理アドレスから実行モジュールの先頭論理アドレスを引いて得られた相対アドレスに基づいてリンケージリスト22dを参照することにより、当該機械語命令に該当するステップを特定することができる。
稼働状況監視プログラム22bは、実行時に動的にロードモジュールがメモリ空間に配置されるプログラムの場合、メモリ空間における配置先のアドレスなどを管理するために、以下の表4に示されるような動的マッピングリスト22fが用意される。被監視コンピュータ10のプログラムカウンタ読み出し処理ユニット15から出力される実行論理アドレスに基づいて、動的マッピングリスト22fをあらかじめ更新しておき、後にプログラムカウンタ読み出し処理ユニット15から出力される実行論理アドレスに基づいて動的マッピングリスト22fを参照することにより、当該実行論理アドレスに割り当てられた機械語命令が含まれるプログラムを特定できる。そして、この実行論理アドレスから実行モジュールの配置先頭論理アドレスを引いて得られた相対アドレスに基づいてリンケージリスト22dを参照することにより、当該機械語命令に該当するステップを特定することができる。
稼働状況監視プログラム22bは、特定されたステップについて実行回数をカウントし、その結果を稼働状況マップ用データテーブル22eに保存すると共に、このテーブルのデータに基づいてディスプレイ25上に図1に示すような稼働状況マップMを表示させる。稼働状況マップ用データテーブル22eは、マッピングリスト22c及び動的マッピングリスト22fに定義されている全ての実行モジュールについて、ソースプログラムのステップ毎に実行回数を保存しており、例えば、以下の表5に示されるように、動的配置プログラムも含めて全ソースプログラムを通してユニークな通番としてつけられた絶対ステップ位置と、個々のソースプログラム毎につけられた相対ステップ位置と、ステップ毎の実行回数とを対応づけて記録している。表5では、表2のプログラムAAAAに含まれるステップが二重線で囲まれている。
稼働状況マップMは、各ステップに一対一で対応する正方形の単位図形を格子状に並べて表示すると共に、稼働状況マップ用データテーブル22eの内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、各ステップ毎の実行頻度を視認できるようにしている。この例では、図2に示すように、実行回数に応じて各単位図形の輝度(図面では濃淡で示されている)を変化させるようにしている。なお、表示パターンの変化としては、グレースケールの輝度のみでなく、色を変化させてもよし、点滅の周波数を変化させてもよい。また、ディスプレイ25に表示させるのみでなく、図示せぬプリンタから用紙にプリントアウトしてもよい。
稼働状況マップMの単位図形は、表5に示す絶対ステップ位置に対応しており、図中の上から下、左から右、に向けて絶対ステップ位置が増加するよう配置されている。すなわち、図3に示すように、左上端の単位図形が絶対ステップ位置0のステップに相当し、中央上端の単位図形が絶対ステップ位置30000のステップに相当している。利用者は、ディスプレイ25に表示された稼働状況マップMを見ることにより、ステップ単位で実行頻度を確認することができる。
また、利用者が稼働状況マップM上で特定のステップ、例えば実行頻度が少ないステップを指定すると、稼働状況監視プログラム22bは、図3に示すように、指定された単位図形に対応するステップを含む実行モジュールの全ステップを他の実行モジュールのステップに対して区別できるように枠Fで囲んで表示し、そのプログラム名をラベルLとしてマップ中に表示させる。これにより、利用者は、指定したステップがどのプログラムに含まれるものであるか、容易に判断でき、プログラム単位の稼働状況を把握して削除判断の基準に供することができる。なお、ステップの指定は、マウス等のポインティングデバイスを用いて画面上で指定できるようにしてもよいし、絶対ステップ位置を数値で指定してもよい。
続いて、図4〜図14に示すフローチャートに基づいて、実施形態の被監視コンピュータ10と稼働状況監視装置20とで実行される処理の流れについて説明する。図4、図5は、被監視コンピュータ10の処理を示し、図6〜図14は、稼働状況監視装置20上で実行される稼働状況監視プログラム22bの処理内容を示す。また、図6〜図11は、稼働状況監視装置20側で稼働状況マップを表示する処理を示し、図12及び図13は、稼働状況監視装置20側で稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出してプログラムを特定する情報を出力する一覧出力機能に関する処理を示し、図14は、指定されたステップを含む実行モジュールを区別できるように表示させる識別表示機能に関する処理を示す。
被監視コンピュータ10のプログラムカウンタ読み出し処理ユニット15は、プログラムカウンタ11aの実行論理アドレスを読み出して稼働状況監視装置20に送信する。すなわち、プログラムカウンタ読み出し処理ユニット15は、図4に示すように、プログラムカウンタ11aにアドレスの書き込みがあるのを待ち(S001)、書き込みがあった場合にはプログラムカウンタ11aの実行論理アドレスを読み込み(S002)、稼働状況監視装置20に送信する(S003)。
また、プログラムカウンタ読み出し処理ユニット15は、図5に示すように、動的配置プログラム情報テーブル12bに動的配置プログラム名及び配置先論理アドレスの書き込みがあるのを待ち(S011)、書き込みがあった場合には動的配置プログラム情報テーブル12bの動的配置プログラム名及び配置先論理アドレスを読み込み(S012)、稼働状況監視装置20に送信する(S013)。
稼働状況監視装置20の稼働状況監視プログラム22bは、図6に示すように、監視コンピュータ10から発せられた実行論理アドレスを受信するのを待ち(S101)、受信するとこれを読み込む(S102)。続いて、図9に示すステップ位置特定処理(S103)、図10に示す稼働状況マップデータ更新処理(S104)、図11に示す該当ステップ位置表示処理(S105)のサブルーチンを順に実行する。S101の処理は機械語命令の実行を検知する検知機能に該当する。また、図9の処理は、検知された機械語命令に相当するステップを特定するステップ位置特定機能、図10の処理は、特定されたステップの実行回数を加算する更新機能、図11の処理は、稼働状況マップを出力する出力機能にそれぞれ該当する。
以上に加えて稼働状況監視プログラム22bは、動的配置プログラムの起動時には、図7に示すように、監視コンピュータ10から発せられた動的配置プログラム名及び配置先論理アドレスを受信するのを待ち(S111)、受信するとこれを読み込む(S112)。続いて、図8に示す動的マッピングリスト更新処理(S113)のサブルーチンを実行する。
図8に示す動的マッピングリスト更新処理は、S121で読み込まれた配置先論理アドレスが動的マッピングリスト22fに記憶済か否かを、表4に示されたプログラムの先頭から配置先頭論理アドレスと終了論理アドレスとの間の範囲に含まれるか否かを判断し(S122, S123)また記憶済の場合は当該論理アドレスが別の動的配置プログラムに割当てられていたか否かを判断(S124)して、動的マッピングリスト22fに記憶される情報を更新するための処理である。当該情報を更新する場合はまず、動的配置プログラムに対応したリンケージリストにより終了相対アドレスを読み出す(S125)。読み出した終了相対アドレスを配置先論理アドレスに加算したアドレスW_addを算出し(S126)、動的マッピングリスト22fに動的配置プログラム名および配置先論理アドレス、アドレスW_addをセットする(S127)。同一プログラムが複数アドレスに配置されることもあるため、配置先頭論理アドレスが異なれば作用するという以上の方式であれば漏れなく情報を追加出来る。
図9に示すステップ位置特定処理は、S102で読み込まれた実行論理アドレスに相当するソースプログラム上のステップを特定するための処理である。まず、計算に使う変数「検索済プログラムステップ数総和S」を0にリセットし(S201)、読み出した実行論理アドレスX_addを用いてマッピングリスト22cを検索する(S202)。ここでは、表2に示されたプログラムの先頭から、実行論理アドレスX_addが当該プログラムの先頭論理アドレスと終了論理アドレスとの間の範囲に含まれるか否かを判断し(S203)、含まれない場合には検索済プログラムステップ数総和Sに当該プログラムの総ステップ数を加算し(S204)、マッピングリスト22cにあるすべてのプログラムを検索(S210)し、範囲に当てはまるプログラムが見つかるまでS202〜S204の処理を繰り返す。
実行論理アドレスが該当するプログラムが見つかると、稼働状況監視プログラム22bは、表2に示すマッピングリスト22cからプログラム名を抽出し(S205)、この実行論理アドレスが当該プログラムのどのステップに該当するかを判断するため、実行論理アドレスX_addからこのプログラム(実行モジュール)の先頭論理アドレスを減算し、相対アドレスY_addを求める(S206)。このとき図10の処理で動的配置ではない固定配置のプログラムの処理をするために動的配置プログラム表示をOFFに設定する(S216)。そして、求められた相対アドレスY_addを用いてリンケージリスト22dをステップ順に検索し(S207)、この相対アドレスY_addがリンケージリスト22dの先頭相対アドレスと終了相対アドレスとの間の範囲内となるか否か判断する(S208)。S208の条件を満たすまでS207,S208の処理を繰り返し、相対ステップ位置が範囲内となるステップが見つかると、リンケージリスト22dからそのステップの相対ステップ位置を抽出し(S209)、図5の処理に戻る。
S210の条件でマッピングリスト22cに当該プログラムがない場合、動的配置プログラムとして読み出した実行論理アドレスX_addを用いて動的マッピングリスト22fを検索する(S211)。ここでは、表4に示されたプログラムの先頭から、実行論理アドレスX_addが当該プログラムの配置先頭論理アドレスと配置終了論理アドレスとの間の範囲に含まれるか否かを判断し(S212)、S212の条件を満たすまでS211,S212の処理を繰り返し、実行論理アドレスX_addが範囲内となるプログラムが見つかると、動的マッピングリスト22fからそのプログラム名を抽出し(S213)、実行論理アドレスX_addからこのプログラム(実行モジュール)の配置先頭論理アドレスを減算し、相対アドレスY_addを求める(S214)。このとき図10の処理で動的配置プログラムの処理をするために動的配置プログラム表示をONに設定し(S215)、S207から処理を行う。
図10に示す稼働状況マップデータ更新処理は、ステップ位置特定処理により特定されたステップについて、表5に示される稼働状況マップ用データテーブル22eの実行回数を更新するための処理である。S215 またはS216でONまたはOFFにセットされた動的配置プログラム表示を判定(S305)し、OFF(Yes)の場合はステップ位置特定処理により特定された相対ステップ位置を絶対ステップ位置に変換するため、検索済ステップ数総和Sを読み出し(S301)、相対ステップ位置を読み出す(S302)。S305の条件判定でON(No)であった場合、稼働状況マップ用データテーブル22eからこの動的配置プログラムとプログラム名が一致する絶対ステップ位置の先頭位置を求めて検索済ステップ数総和Sに設定する(S306)。総和Sは、実行されたステップが含まれるソースプログラムの先頭の絶対ステップ位置を示すため、これに相対ステップ位置を加算することにより、当該ステップの絶対ステップ位置が特定される(S303)。そして、特定されたステップの実行回数に1を加える(S304)。これにより、稼働状況マップ用データテーブルが更新される。
続いて、図11に示す該当ステップ位置表示処理では、検索済ステップ数総和Sに相対ステップ位置を加算して絶対ステップ位置を求め(S401)、稼働状況マップ用データから当該ステップのアクセス回数Xを読み出し(S402)、図2に示す輝度チャートに基づいて実行回数Xに該当する輝度を決定し(S403)、稼働状況マップMの該当ステップの単位図形を決定された輝度に設定する(S404)。
以上の図5〜図11の処理を繰り返すことにより、プログラムのステップが実行される毎に、稼働状況マップ用データテーブル22e内の実行回数が更新されると共に、ディスプレイ25に表示された稼働状況マップMの単位図形の輝度が変化する。利用者は、予め定めた一定時間上記の処理を実行させることにより、被監視コンピュータ10にインストールされたプログラムの稼働状況をステップ単位で把握することができる。
次に、ディスプレイ25に表示された稼働状況マップMを利用して実行回数が所定の回数以下のステップを抽出する処理について、図12及び図13に基づいて説明する。まず、利用者が抽出の閾値となる実行回数Yを設定する(S501)。稼働状況監視プログラム20bは、この実行回数Yに基づいて稼働状況マップ用データテーブル22eを1ステップずつ配置順に検索する(S502)。
すなわち、対象となるステップの実行回数を稼働状況マップ用データテーブル22eから読み出し、これが閾値Y以下であるか否かを判断する(S503)。閾値以下である場合には、稼働状況マップ用データテーブル22eから絶対ステップ位置を抽出し(S504)、図13に示すプログラム名特定処理を実行する(S505)。この処理については後述する。プログラム名が特定されると、このプログラム名と該当ステップの実行回数とを保持し(S506)、稼働状況マップ用データテーブル22eから該当ステップの相対ステップ位置を抽出して保持する(S507)。実行回数が閾値Yより大きい場合(S503, No)には、S504〜S507のステップ特定のための処理はスキップされる。これらS502〜S507の処理が、稼働状況マップ用データテーブル22eに登録された全てのステップについて実行され、実行回数が閾値Y以下であるステップが全て抽出される。
稼働状況マップ用データテーブル22eに登録された全てのステップについて実行回数のチェックが終了すると(S508, Yes)、保持されたプログラム名、相対ステップ位置、実行回数を全て読み出す(S509, S510, S511)。そして、読み出したプログラム名、相対ステップ位置、実行回数の一覧を出力する(S512)。一覧はディスプレイ25上に表示してもよいし、用紙にプリントアウトしてもよい。利用者は、この一覧を参考にして実行回数が少ないステップについてこのステップを含むロジックを見直したり、あるいは、実行回数が0のステップを削除するなど、一覧を個々のソースプログラム内部の冗長部分を解消するための資料として利用することができる。
S505で実行されるプログラム名特定処理では、図13に示されるように、S504で抽出された絶対ステップ位置が、いずれのプログラムに含まれるステップであるかを特定する処理である。まず、検索済プログラムステップ数総和Sを0にリセットし(S601)、絶対ステップ位置を読み出す(S602)。次に、マッピングリスト22cを配置順に検索し、リンケージリスト22dから各プログラムの総ステップ数を1プログラム分ずつ順に抽出する(S603)。
そして、抽出された1つのプログラムの総ステップ数を検索済プログラムステップ数総和Sに加算し(S604)、絶対ステップ位置がこの総和Sより小さいか否かを判断する(S605)。絶対ステップ位置は、このステップが含まれるプログラムより前に配置されたプログラムのステップ数の総和より大きく、このステップが含まれるプログラムの総ステップ数を更に加えたステップ数より小さくなる。このため、上記のようにプログラム単位で総ステップ数を加算しながら絶対ステップ位置が総和Sより小さくなったか否かを判断すれば、小さくなった時点で、最後に加算されたプログラムに当該絶対ステップ位置で示されるステップが含まれることが判明する。そこで、このプログラムのプログラム名をマッピングリスト22cから抽出し(S606)、図12の処理に戻る。
次に、図14に示すプログラム位置表示処理について説明する。この処理は、図5に示した監視側表示処理を実行してディスプレイ25上に稼働状況マップMが表示された状態で、特定のステップに相当する単位図形を指定することにより、このステップを含むプログラムのマップ上での範囲と、プログラム名とを表示するための処理である。
絶対ステップ位置に基づいてプログラム名を特定するS701〜S707の処理は、図13に示すプログラム名特定処理と同一である。ただし、図14の処理では、当該プログラムの先頭を示す絶対ステップ位置を特定するため、当該プログラムの総ステップ数を加算する前の検索済プログラムステップ数総和Sの値をワークWに保存するS704の処理が加えられている。
S707でプログラム名が抽出されると、先のワークWに保存した絶対アドレス位置を当該プログラムの先頭の絶対アドレス位置とし、当該プログラムの総ステップ数を加えた総和Sで表される絶対アドレス位置を当該プログラムの最終の絶対アドレス位置として設定する(S708)。そして、稼働状況マップM上で先頭の絶対アドレス位置に相当する単位図形から、最終の絶対アドレス位置に相当する単位図形までを図3に示すような枠Fで囲い(S709)、プログラム名をラベルLとして枠に付記する(710)。これにより、利用者は、絶対ステップ位置で表されるステップを含むプログラムの範囲とプログラム名とをディスプレイ25上に表示された稼働状況マップMにより確認することができ、プログラム単位の稼働状況を把握して削除判断の基準に供することができる。
(付記1)
コンピュータにより実行されるプログラムの稼働状況を監視するための稼働状況監視プログラムであって、
コンピュータに、
ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知機能と、
ソースプログラムの各ステップと前記実行モジュールの機械語命令との対応情報を記憶した定義リストを参照し、検知された機械語命令に相当するステップを特定するステップ位置特定機能と、
ソースプログラムの各ステップとステップ単位の実行回数との対応情報を記憶する稼働状況マップ用データテーブルの、前記ステップ位置特定機能により特定されたステップの実行回数を加算し、該稼働状況マップ用データテーブルを更新する更新機能と、
各ステップに一対一で対応する単位図形を並べて表示すると共に、前記稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを、対応するステップの実行回数に応じて変化させることにより、各ステップ毎の実行頻度を視認できるようにした稼働状況マップを出力する出力機能と、
を実現させることを特徴とする稼働状況監視プログラム。(1)
(付記2)
前記ステップ位置特定機能は、実行された機械語命令の絶対アドレスに基づいて前記定義リストに含まれる、前記実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスを定義したマッピングリストおよび動的マッピングリストを参照し、当該機械語命令が含まれるプログラムを特定し、当該絶対アドレスから実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいて、前記定義リストに含まれる、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストを参照し、当該機械語命令に該当するステップを特定する
ことを特徴とする付記1に記載の稼働状況監視プログラム。(2)
(付記3)
前記検知機能は、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされないような動的配置プログラムである時には、オペレーティングシステムが設定する、プログラム名と動的配置アドレスの対応情報に基づき、該実行モジュールに含まれる機械語命令の実行を検知する
ことを特徴とする付記1に記載の稼働状況監視プログラム。(3)
(付記4)
コンピュータに、
前記稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出機能と、
抽出されたステップを特定する情報、及び当該ステップを含むプログラムを特定する情報とを一覧にして出力する一覧出力機能と、
を更に実現させることを特徴とする付記1から3のいずれかに記載の稼働状況監視プログラム。(4)
(付記5)
前記出力機能は、コンピュータに接続されたディスプレイ上に前記稼働状況マップを表示させ、前記単位図形の輝度又は色を実行回数に合わせて変化させる
ことを特徴とする付記1または2に記載の稼働状況監視プログラム。
(付記6)
コンピュータに、
任意のステップが指定された際に、当該ステップを含むプログラムの全ステップに対応する単位図形を他の実行モジュールのステップに対応する単位図形に対して区別できるように表示させる識別表示機能
を更に実現させることを特徴とする付記5に記載の稼働状況監視プログラム。
(付記7)
コンピュータにより実行されるプログラムの稼働状況を監視するための稼働状況監視装置であって、
ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知手段と、
ソースプログラムの各ステップと前記実行モジュールの機械語命令との対応情報を記憶した定義リストを参照し、検知された機械語命令に相当するステップを特定するステップ位置特定手段と、
ソースプログラムの各ステップとステップ単位の実行回数との対応情報を記憶する稼働状況マップ用データテーブルの、前記ステップ位置特定機能により特定されたステップの実行回数を加算し、該稼働状況マップ用データテーブルを更新する更新手段と、
各ステップに一対一で対応する単位図形を並べて表示すると共に、前記稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、各ステップ毎の実行頻度を視認できるようにした稼働状況マップを出力する出力手段と、
を実現させることを特徴とする稼働状況監視プログラム。(5)
(付記8)
前記ステップ位置特定手段は、実行された機械語命令の絶対アドレスに基づいて前記定義リストに含まれる、前記実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスを定義したマッピングリストおよび動的マッピングリストを参照し、当該機械語命令が含まれるプログラムを特定し、当該絶対アドレスから実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいて、前記定義リストに含まれる、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストを参照し、当該機械語命令に該当するステップを特定する
ことを特徴とする付記7に記載の稼働状況監視装置。
(付記9)
前記検知手段は、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされないような動的配置プログラムである時には、オペレーティングシステムが設定する、プログラム名と動的配置アドレスの対応情報に基づき、該実行モジュールに含まれる機械語命令の実行を検知する
ことを特徴とする付記7に記載の稼働状況監視装置。
(付記10)
前記稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出手段と、
抽出されたステップを特定する情報、及び当該ステップを含むプログラムを特定する情報とを一覧にして出力する一覧出力手段と、
を更に備えることを特徴とする付記7から9のいずれかに記載の稼働状況監視装置。
(付記11)
前記出力手段は、コンピュータに接続されたディスプレイ上に前記稼働状況マップを表示させ、前記単位図形の輝度又は色を実行回数に合わせて変化させる
ことを特徴とする付記7または8に記載の稼働状況監視装置。
(付記12)
任意のステップが指定された際に、当該ステップを含むプログラムの全ステップに対応する単位図形を他の実行モジュールのステップに対応する単位図形に対して区別できるように表示させる識別表示手段
を更に備えることを特徴とする付記11に記載の稼働状況監視装置。
(付記13)
コンピュータにより実行されるプログラムの稼働状況を監視するための稼働状況監視装置が、
ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知ステップと、
ソースプログラムの各ステップと前記実行モジュールの機械語命令との対応情報を記憶した定義リストを参照し、検知された機械語命令に相当するステップを特定するステップ位置特定ステップと、
ソースプログラムの各ステップとステップ単位の実行回数との対応情報を記憶する稼働状況マップ用データテーブルの、前記ステップ位置特定機能により特定されたステップの実行回数を加算し、該稼働状況マップ用データテーブルを更新する更新ステップと、
各ステップに一対一で対応する単位図形を並べて表示すると共に、前記稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、各ステップ毎の実行頻度を視認できるようにした稼働状況マップを出力する出力ステップと、
を実行することを特徴とする稼働状況監視方法。
(付記14)
前記ステップ位置特定ステップは、実行された機械語命令の絶対アドレスに基づいて前記定義リストに含まれる、前記実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスを定義したマッピングリストおよび動的マッピングリストを参照し、当該機械語命令が含まれるプログラムを特定し、当該絶対アドレスから実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいて、前記定義リストに含まれる、ソースプログラムの各ステップと当該ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストを参照し、当該機械語命令に該当するステップを特定する
ことを特徴とする付記13に記載の稼働状況監視方法。
(付記15)
前記検知ステップは、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされないような動的配置プログラムである時には、オペレーティングシステムが設定する、プログラム名と動的配置アドレスの対応情報に基づき、該実行モジュールに含まれる機械語命令の実行を検知する
ことを特徴とする付記13に記載の稼働状況監視方法。
(付記16)
前記稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出ステップと、
抽出されたステップを特定する情報、及び当該ステップを含むプログラムを特定する情報とを一覧にして出力する一覧出力ステップと、
を更に実行することを特徴とする付記13から15のいずれかに記載の稼働状況監視方法。
(付記17)
前記出力ステップは、コンピュータに接続されたディスプレイ上に前記稼働状況マップを表示させ、前記単位図形の輝度又は色を実行回数に合わせて変化させる
ことを特徴とする付記13または14に記載の稼働状況監視方法。
(付記18)
任意のステップが指定された際に、当該ステップを含むプログラムの全ステップに対応する単位図形を他の実行モジュールのステップに対応する単位図形に対して区別できるように表示させる識別表示ステップ
を更に実行することを特徴とする付記17に記載の稼働状況監視方法。
本発明の実施形態にかかる稼働状況監視プログラムが適用されるコンピュータシステムを示すブロック図である。 図1に示す稼働状況監視装置のディスプレイに表示される単位図形の輝度チャートである。 図1に示す稼働状況監視装置のディスプレイに表示される稼働状況マップの説明図である。 図1に示す被監視コンピュータの処理を示すフローチャートである。 図1に示す被監視コンピュータの処理を示すフローチャートである。 図1に示す稼働状況監視装置で実行される監視側表示処理を示すフローチャートである。 図1に示す稼働状況監視装置で実行される被監視側処理を示すフローチャートである。 図7に含まれる動的マッピングリスト更新処理を示すフローチャートである。 図6に含まれるステップ位置特定処理を示すフローチャートである。 図6に含まれる稼働状況マップ用データ更新処理示すフローチャートである。 図6に含まれる該当ステップ位置表示処理を示すフローチャートである。 図1に示す稼働状況監視装置で実行される監視側検索処理を示すフローチャートである。 図12に含まれるプログラム名特定処理を示すフローチャートである。 図1に示す稼働状況監視装置で実行されるプログラム位置表示処理を示すフローチャートである。
符号の説明
10 被監視コンピュータ
11 CPU
11a プログラムカウンタ
12 HD
12a オペレーティングシステム
12b 動的配置プログラム情報テーブル
12c アプリケーションプログラム
13 ram
14 通信アダプタ
15 プログラムカウンタ読み出し処理ユニット
20 稼働状況監視装置
21 CPU
22 HD
22a オペレーティングシステム
22b 稼働状況監視プログラム
22c マッピングリスト
22d リンケージリスト
22e 稼働状況マップ用データテーブル
22f 動的マッピングリスト
23 RAM
24 通信アダプタ
25 ディスプレイ

Claims (3)

  1. コンピュータにより実行されるプログラムの稼働状況を監視するための稼働状況監視プログラムであって、
    コンピュータに、
    ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知機能であって、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされるプログラムであるときの当該実行モジュールに含まれる機械語命令の実行を検知する一方で、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされないような動的配置プログラムである時には、オペレーティングシステムが設定する、動的配置プログラム名と動的配置アドレスの対応情報に基づき、前記動的配置プログラムである実行モジュールに含まれる機械語命令の実行を検知する検知機能と、
    前記実行モジュールが前記動的配置プログラムである時に受信される動的配置プログラム名及び動的配置アドレスに基づいて、動的配置プログラム名と前記動的配置プログラムである実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスとの対応を定義した動的マッピングリストを更新する動的マッピングリスト更新処理機能と、
    前記検知機能により検知された機械語命令の絶対アドレスに基づいて、前記プログラムの実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスを定義したマッピングリストおよび前記動的マッピングリストを参照し、前記機械語命令が含まれる前記プログラム及び前記動的配置プログラムの一方を特定し、前記検知された機械語命令の絶対アドレスから前記実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいて、ソースプログラムの各ステップと前記ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストを参照し、前記機械語命令に該当するステップを特定するステップ位置特定機能と、
    ソースプログラムの各ステップとステップ単位の実行回数との対応を定義した稼働状況マップ用データテーブルの、前記ステップ位置特定機能により特定されたステップの実行回数を加算し、前記稼働状況マップ用データテーブルを更新する更新機能と、
    各ステップに一対一で対応する単位図形を並べて表示すると共に、前記稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、ステップ毎の実行頻度を視認できるよう
    にした稼働状況マップを出力する出力機能と、
    を実現させることを特徴とする稼働状況監視プログラム。
  2. コンピュータに、
    前記稼働状況マップデータから実行回数が所定の規定値以下のステップを抽出する抽出機能と、
    抽出されたステップを特定する情報及び当該ステップを含むプログラムを特定する情報を一覧にして出力する一覧出力機能と、
    を更に実現させることを特徴とする請求項1に記載の稼働状況監視プログラム。
  3. コンピュータにより実行されるプログラムの稼働状況を監視するための稼働状況監視装置であって、
    ソースプログラムを機械語に翻訳してメモリ空間にマッピングした実行モジュールに含まれる機械語命令の実行を検知する検知手段であって、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされるプログラムであるときの当該実行モジュールに含まれる機械語命令の実行を検知する一方で、前記実行モジュールが前記メモリ空間内の固定した絶対アドレスにマッピングされないような動的配置プログラムである時には、オペレーティングシステムが設定する、動的配置プログラム名と動的配置アドレスの対応情報に基づき、前記動的配置プログラムである実行モジュールに含まれる機械語命令の実行を検知する検知手段と、
    前記実行モジュールが前記動的配置プログラムである時に受信される動的配置プログラム名及び動的配置アドレスに基づいて、動的配置プログラム名と前記動的配置プログラムである実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスとの対応を定義した動的マッピングリストを更新する動的マッピングリスト更新処理手段と、
    前記検知機能により検知された機械語命令の絶対アドレスに基づいて、前記プログラムの実行モジュールがマッピングされた前記メモリ空間内の絶対アドレスを定義したマッピングリストおよび前記動的マッピングリストを参照し、前記機械語命令が含まれる前記プログラム及び前記動的配置プログラムの一方を特定し、前記検知された機械語命令の絶対アドレスから前記実行モジュールの先頭の絶対アドレスを引いて得られた相対アドレスに基づいて、ソースプログラムの各ステップと前記ソースプログラムを機械語に翻訳して得られるロードモジュールの機械語命令の相対アドレスとの対応を定義したリンケージリストを参照し、前記機械語命令に該当するステップを特定するステップ位置特定手段と、
    ソースプログラムの各ステップとステップ単位の実行回数との対応を定義した稼働状況マップ用データテーブルにおいて、前記ステップ位置特定機能により特定されたステップの実行回数を加算し、前記稼働状況マップ用データテーブルを更新する更新手段と、
    各ステップに一対一で対応する単位図形を並べて表示すると共に、前記稼働状況マップ用データテーブルに記憶された内容に基づいて各単位図形の表示パターンを対応するステップの実行回数に応じて変化させることにより、ステップ毎の実行頻度を視認できるようにした稼働状況マップを出力する出力手段と、
    を備えることを特徴とする稼働状況監視装置。
JP2006161291A 2006-06-09 2006-06-09 稼働状況監視プログラム Expired - Fee Related JP4894362B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006161291A JP4894362B2 (ja) 2006-06-09 2006-06-09 稼働状況監視プログラム
US11/709,268 US8122435B2 (en) 2006-06-09 2007-02-22 Operating status monitoring program, method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006161291A JP4894362B2 (ja) 2006-06-09 2006-06-09 稼働状況監視プログラム

Publications (2)

Publication Number Publication Date
JP2007328722A JP2007328722A (ja) 2007-12-20
JP4894362B2 true JP4894362B2 (ja) 2012-03-14

Family

ID=38823340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006161291A Expired - Fee Related JP4894362B2 (ja) 2006-06-09 2006-06-09 稼働状況監視プログラム

Country Status (2)

Country Link
US (1) US8122435B2 (ja)
JP (1) JP4894362B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5275089B2 (ja) * 2008-03-07 2013-08-28 新日鉄住金ソリューションズ株式会社 情報処理装置、情報処理方法及びプログラム
US8676753B2 (en) * 2009-10-26 2014-03-18 Amazon Technologies, Inc. Monitoring of replicated data instances
US8074107B2 (en) 2009-10-26 2011-12-06 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US20140176393A1 (en) * 2012-12-25 2014-06-26 Kabushiki Kaisha Toshiba Information processing apparatus, user assistance method and storage medium
WO2014141352A1 (ja) * 2013-03-11 2014-09-18 株式会社 日立製作所 システム制御装置
CN105117318B (zh) * 2015-08-18 2019-04-30 北京恒华伟业科技股份有限公司 设备生产进度的监控方法及装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6421547A (en) * 1987-07-16 1989-01-24 Mitsubishi Electric Corp Program bus measuring system
EP0423989A3 (en) * 1989-10-16 1992-09-23 Hewlett-Packard Company Software compiler and linker with improved line number table
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
JPH05241913A (ja) * 1992-03-03 1993-09-21 Nec Corp 自動アボート検索処理方式
US5371747A (en) * 1992-06-05 1994-12-06 Convex Computer Corporation Debugger program which includes correlation of computer program source code with optimized object code
US5446900A (en) * 1992-07-24 1995-08-29 Microtec Research, Inc. Method and apparatus for statement level debugging of a computer program
JPH06222913A (ja) 1993-01-25 1994-08-12 Fujitsu Ltd プログラム解析装置
JPH06337777A (ja) 1993-05-31 1994-12-06 Hitachi Ltd ソフトウェア資産整理方式
US6126329A (en) * 1993-06-08 2000-10-03 Rational Software Coporation Method and apparatus for accurate profiling of computer programs
JPH07160531A (ja) * 1993-12-03 1995-06-23 Fujitsu Ltd プログラム実行経路表示装置
CA2185222A1 (en) * 1994-03-14 1995-09-21 Daniel D. O'dowd Optimizing time and testing of higher level language programs
US5933640A (en) * 1997-02-26 1999-08-03 Digital Equipment Corporation Method for analyzing and presenting test execution flows of programs
JP3107151B2 (ja) * 1997-04-14 2000-11-06 日本電気株式会社 最適化コードデバッグ方式
US6016556A (en) * 1997-07-17 2000-01-18 Tektronix, Inc. System for identifying an acquisition sample corresponding to a source code statement
US6895578B1 (en) * 1999-01-06 2005-05-17 Parasoft Corporation Modularizing a computer program for testing and debugging
US7213247B1 (en) * 2000-01-10 2007-05-01 Wind River Systems, Inc. Protection domains for a computer operating system
JP2002073371A (ja) * 2000-09-04 2002-03-12 Nec Microsystems Ltd プログラムデバッグ方式
US20020129336A1 (en) * 2000-12-19 2002-09-12 Bolding Joe D. Automatic symbol table selection in a multi-cell environment
JP2003050716A (ja) * 2001-08-06 2003-02-21 Matsushita Electric Ind Co Ltd ソフトウエアデバッガとソフトウエア開発支援システム
US7080358B2 (en) * 2002-04-10 2006-07-18 Sun Microsystems, Inc. Mechanism for generating an execution log and coverage data for a set of computer code
US7213123B2 (en) * 2002-10-24 2007-05-01 International Business Machines Corporation Method and apparatus for mapping debugging information when debugging integrated executables in a heterogeneous architecture
US7395527B2 (en) * 2003-09-30 2008-07-01 International Business Machines Corporation Method and apparatus for counting instruction execution and data accesses
US20050071816A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corporation Method and apparatus to autonomically count instruction execution for applications
US7421681B2 (en) * 2003-10-09 2008-09-02 International Business Machines Corporation Method and system for autonomic monitoring of semaphore operation in an application
US7653899B1 (en) * 2004-07-23 2010-01-26 Green Hills Software, Inc. Post-execution software debugger with performance display
US8161461B2 (en) * 2005-03-24 2012-04-17 Hewlett-Packard Development Company, L.P. Systems and methods for evaluating code usage
US20060230385A1 (en) * 2005-04-12 2006-10-12 I-Lang Chang Method for displaying program profiling, software development program with profiling display and physical storage medium with software development program
US7587612B2 (en) * 2005-06-30 2009-09-08 Intel Corporation Generating and communicating information on locations of program sections in memory

Also Published As

Publication number Publication date
US20070288799A1 (en) 2007-12-13
JP2007328722A (ja) 2007-12-20
US8122435B2 (en) 2012-02-21

Similar Documents

Publication Publication Date Title
JP4894362B2 (ja) 稼働状況監視プログラム
US9740186B2 (en) Monitoring control system and control device
JP2006277723A5 (ja)
JP4677442B2 (ja) マルチ・ソース、マルチ宛先データ転送
US10203850B2 (en) Data editing apparatus, data editing method, and data editing program
CN103034676A (zh) 关联存储器可视化评估工具
JP2000507731A (ja) 視覚表示オブジェクト・ファイルを変換するシステムおよびその動作方法
JP2010061334A (ja) ファイル管理システム、ファイル管理方法、およびプログラム
JP5156713B2 (ja) 設計支援装置
US8655928B2 (en) Device and method for storing file
JP4971226B2 (ja) 設計支援装置
JP4780308B2 (ja) 制御プログラム開発支援装置及びコンピュータプログラム
CN107832097A (zh) 数据加载方法及装置
CN109725973B (zh) 一种数据处理方法和数据处理装置
CN111158827A (zh) 一种图形组态工具关联计算值信息的方法及装置
JPH03139771A (ja) グラフイツク表示システムと方法
JP2011221934A (ja) レジスタコンフィギュレータおよびレジスタコンフィギュレーション方法
US11694112B2 (en) Machine learning data management system and data management method
JP7229888B2 (ja) リソースの利用効率の最適化を支援するシステム及び方法
CN103678241B (zh) 存储器管理控制系统以及存储器管理控制方法
JP4841246B2 (ja) データ管理装置、データ管理方法、データ管理プログラム
CN114691766A (zh) 数据采集方法、装置及电子设备
JP5202472B2 (ja) 命令配置プログラム、命令配置装置、および命令配置方法
JP2021068365A (ja) 計算機システム及びデータの管理方法
KR101918430B1 (ko) 시스템 설계 지원 툴

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071210

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110315

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111129

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111212

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees