JPH04264635A - プログラムのcpu占有率測定方式 - Google Patents

プログラムのcpu占有率測定方式

Info

Publication number
JPH04264635A
JPH04264635A JP3024980A JP2498091A JPH04264635A JP H04264635 A JPH04264635 A JP H04264635A JP 3024980 A JP3024980 A JP 3024980A JP 2498091 A JP2498091 A JP 2498091A JP H04264635 A JPH04264635 A JP H04264635A
Authority
JP
Japan
Prior art keywords
program
cpu
execution
execution level
occupancy rate
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.)
Pending
Application number
JP3024980A
Other languages
English (en)
Inventor
Mikio Inmaki
印牧 幹雄
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.)
NEC Solution Innovators Ltd
Original Assignee
NEC Software Chubu 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 NEC Software Chubu Ltd filed Critical NEC Software Chubu Ltd
Priority to JP3024980A priority Critical patent/JPH04264635A/ja
Publication of JPH04264635A publication Critical patent/JPH04264635A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は特定プログラムのCPU
占有率の算出技術に関し、特にCPUの保護機能として
複数の命令実行権を区別して利用するシステムにおける
特定実行権レベルのプログラムのCPU占有率の算出技
術に関する。
【0002】
【従来の技術】従来、この種のCPU占有率算出方式は
、測定対象プログラムのメモリ占有アドレスを予め知り
、CPUが生成する実行アドレスを外部よりモニタし一
定時間中に測定対象プログラムの占有アドレスを通過す
る比率を求めることにより算出していた。あるいはシス
テムの中核部(スケジューラ)に測定対象プログラムに
割当てたCPU実行時間の絶対値を累積しておき一定時
間中に占める比率を算出する方式が一般的であった。
【0003】
【発明が解決しようとする課題】上述した従来のCPU
占有率算出方式は、前者の場合測定対象プログラムのロ
ードアドレスを何らかの手段で知る必要があるが、リロ
ケータブルなシステムではプログラムのロードアドレス
を予め知ることが不可能であるという欠点がある。又後
者の場合スケジューラ部に測定対象プログラムに制御を
渡す時点と制御を取る時点とで実時間タイマを読取りそ
の差分を求め累計する機能を付加する必要があるためス
ケジューラの性能を低下させる欠点がある。
【0004】
【課題を解決するための手段】本発明は、プログラムの
CPU実行レベルが複数の実行レベルのいずれかである
計算機でのプログラムのCPU占有率測定方式において
、実行レベルと同数のカウンタを設け、一定間隔毎に外
部割込によりCPUに占有率測定プログラムを起動し、
この占有率測定プログラムが被割込プログラムの実行レ
ベルを取り出し、この取り出した実行レベルに対応する
前記カウンタの一つを更新し、前記カウンタ全ての値の
総和と前記カウンタの一つの値の比率から対応するプロ
グラムのCPU占有率を得ることを特徴とする。
【0005】
【実施例】次に、本発明について図面を参照して説明す
る。
【0006】図1および図2は本発明の一実施例の全体
構成図を示し、それぞれ割込処理終了の状態を示す図お
よび割込処理開始の状態を示す図である。
【0007】測定対象プログラムはその命令部(CS1
)100とデータ部(DS1)110とスタック部(S
S1)120から構成され各部のメモリ開始アドレスが
タスク状態表(TSS1)130に格納され、かつ現在
のCPUの実行権を有するタスク状態のアドレスを指示
するCPU内HWレジスタの一種であるタスクレジスタ
(TR)10によりTSS1(130)がポイントされ
ている。
【0008】又、本システム内にはCPUの外部割込が
発生した場合の起動プログラム(命令部200,データ
部210,スタック部220から構成される)用のタス
ク状態表(TSS0)230が用意されている。本TS
S0(230)はCPUの外部割込種別毎に準備された
割込処理プログラムのタスク状態表群を格納した割込記
述テーブル(IDT)30内でインタバルタイマ40の
割込相当のエントリ301からポイントされている。更
にIDT30はCPU内のHWレジスタの一種であるI
DTアドレスレジスタ(IDTR)20によりポイント
されている。
【0009】カウンタテーブル(CNT)240は命令
部200によりアクセスされるエリアでCPUが有する
CPU実行レベルの種類数分だけエントリを持つ。TS
S0(230)またはTSS1(130)内に格納され
る情報を詳細に説明した図3によるとオフセット“2”
〜“42”の情報はCPUが有するプログラムビジブル
なHWレジスタ値の格納域であり、現在のCPUの実行
権を有するプログラムが設定したHWレジスタ値を格納
するものである。この内、オフセット“36”(図4に
詳細を示す)のCSセレクタは命令部のアドレスを示す
が、この内容の一部(RPL部の2ビット)がCPU実
行レベルを表示するものとする。従って本実施例ではC
PUの実行レベルは“0”〜“3”の4種類である。オ
フセット“0”のBLP部は後述するタスク状態表のネ
スティング情報を示し被割込タスク状態表をポイントす
るものである。
【0010】次に、図2を用いて本実施例のインタバル
タイマ割込の発生時の動作を説明する。
【0011】予め極めて短い一定間隔で割込を発生する
様に設定されたインタバルタイマ40が時刻を重ね、指
定時間(一般的には10ms程度)を経過するとIDT
30内のインタバルタイマ割込エントリ301に登録さ
れてあるタスク状態表TSS0(230)がHWにより
活性化される。即ち今まで動作していた測定対象プログ
ラム(TSS1(130)がポイントする諸資源より成
る)のHWレジスタの使用状況は全てTSS1(130
)内部に図3に示す形式で格納され、TR10がTSS
0(230)をポイントする。
【0012】この時、TSS0(230)内のBLPは
被割込プログラムのTSS1(130)をポイントし、
更にCPUのHWレジスタにはTSS0(230)内の
対応エリアに格納される値が設定される。これにより予
めインタバルタイマ割込処理用に準備された占有率測定
プログラム(命令部200,データ部210,スタック
部220)が起動されることになる。
【0013】占有率測定プログラムはTSS0(230
)内のBLP部を参照して被割込プログラムのタスク状
態表TSS1(130)にアクセスし図3の形式に従い
TSS1(130)内部よりCSセレクタのRPL部2
ビットの値“N”を得て被割込プログラムの実行レベル
を“N”と知ることができる。この後占有率測定プログ
ラムはCNTテーブル240内のRPL2ビットが示す
レベル“N”に相当するエリアの値を更新する。これで
インタバルタイマ40の割込発生時点で動作していたプ
ログラムの実行レベルのカウンタを更新したことになる
【0014】この後、占有率測定プログラムが割込処理
を終了するCPU命令を発行するとTSS0(230)
内にHWレジスタ値を格納後TSS0BLPが示すTS
S1(130)をポイントする様にTR10が更新され
CPUのHWレジスタは全てTSS1より回復されCP
U実行権は被割込プログラム(TSS1がポイントする
諸資源)へ戻ることになる。
【0015】以上説明した様に占有率測定プログラムは
単純に起動される都度TSS0230内のBLPを使っ
て被割込プログラムのタスク状態表(TSS)にアクセ
スしその内部のCSセレクタ値のRPL部から被割込プ
ログラムのCPU実行レベルを得て対応するCNTテー
ブル240内の値を更新する。
【0016】従って任意の時点で、CNTテーブル24
0内の全カウンタ値の総和に占める特定レベルのカウン
ト値の比率を出せばその特定レベルのCPU実行権を有
するプログラムのCPU占有率に近似な値を得ることが
できる。
【0017】一般にカーネルプログラム(OS)とアプ
リケーションプログラムは実行レベルを保護機能の観点
より区別して使用するからこの特定レベルの値としてア
プリケーション用実行レベルあるいはOS部の実行レベ
ルを指定すると極めて容易にアプリケーションプログラ
ムのCPU占有率あるいはOSのCPU占有率(システ
ムオーバヘッド)を計測することが可能となる。
【0018】
【発明の効果】以上説明したように本発明は、極めて短
い一定間隔毎その時のCPUの実行権を有していたプロ
グラムの実行レベルを計測することにより各実行レベル
毎のプログラムのCPU占有率を近似して得る方式を提
供できる。従来技術が抱えていた欠点、即ち被測定プロ
グラムのロードアドレスを知らなければならない点、あ
るいはOSカーネル部(スケジューラ部)のオーバヘッ
ドを増加させる欠点を回避し極めて容易に特定実行レベ
ルに固定される被測定プログラムのCPU占有率を算出
できる効果がある。OSのオーバヘッド量を知る程度で
あるならば充分実用的なCPU占有率測定方式となり得
る効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の割込処理終了の状態を示す
ブロック図である。
【図2】図1に示す実施例の割込処理開始の状態を示す
ブロック図である。
【図3】TSS0(230)またはTSS1(130)
を示す図である。
【図4】図3のオフセット“36”のCSセレクタの詳
細を示す図である。
【符号の説明】
10    タスクレジスタ(CPU実行権を有するT
SSをポイントするHWレジスタ) 20    IDTアドレスレジスタ(HWレジスタの
一種) 30    割込記述テーブル(IDT)40    
インタバルタイマ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  プログラムのCPU実行レベルが複数
    の実行レベルのいずれかである計算機でのプログラムの
    CPU占有率測定方式において、実行レベルと同数のカ
    ウンタを設け、一定間隔毎に外部割込によりCPUに占
    有率測定プログラムを起動し、この占有率測定プログラ
    ムが被割込プログラムの実行レベルを取り出し、この取
    り出した実行レベルに対応する前記カウンタの一つを更
    新し、前記カウンタ全ての値の総和と前記カウンタの一
    つの値の比率から対応するプログラムのCPU占有率を
    得ることを特徴とするプログラムのCPU占有率測定方
    式。
JP3024980A 1991-02-20 1991-02-20 プログラムのcpu占有率測定方式 Pending JPH04264635A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3024980A JPH04264635A (ja) 1991-02-20 1991-02-20 プログラムのcpu占有率測定方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3024980A JPH04264635A (ja) 1991-02-20 1991-02-20 プログラムのcpu占有率測定方式

Publications (1)

Publication Number Publication Date
JPH04264635A true JPH04264635A (ja) 1992-09-21

Family

ID=12153129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3024980A Pending JPH04264635A (ja) 1991-02-20 1991-02-20 プログラムのcpu占有率測定方式

Country Status (1)

Country Link
JP (1) JPH04264635A (ja)

Similar Documents

Publication Publication Date Title
US6006032A (en) System and method for instruction burst performance profiling for single-processor and multi-processor systems
US6401155B1 (en) Interrupt/software-controlled thread processing
EP0443557B1 (en) Interrupt controller capable of realizing interrupt nesting function
JPH07182209A (ja) オペレーティング・システム・ベースのプログラムの性能モニタ方法およびシステム
JP3605978B2 (ja) マイクロコンピュータ
EP0098172B1 (en) Register control processing system
KR860003552A (ko) 마이크로 프로그램 가능 시스템
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
US4124892A (en) Data processing systems
JPH04264635A (ja) プログラムのcpu占有率測定方式
JPS59208661A (ja) 計算機の負荷測定方法
JP3071210B2 (ja) タスク管理制御方式
Zhang et al. An Improved RTEMS Supporting Real-Time Detection of Stack Overflow
US5497481A (en) Microcomputer computer system having plural programmable timers and preventing memory access operations from interfering with timer start requests
JPS63120336A (ja) メモリアクセスモ−ド切替え方式
US20220156074A1 (en) Electronic device and multiplexing method of spatial
JP2775830B2 (ja) 命令頻度測定方式
JPS6029403B2 (ja) 時限回路の制御方式
JPH0357970A (ja) パルス入力装置
JPH0531775B2 (ja)
JPS61294555A (ja) プログラム暴走検出方法
JPS5953955A (ja) 性能測定方式
JPS6263346A (ja) 処理装置の空き時間測定方法
JPS6349946A (ja) 演算処理装置
JPH0580691B2 (ja)