JPH05241886A - オペレーティングシステム組み込み型デバッグサポートシステム - Google Patents

オペレーティングシステム組み込み型デバッグサポートシステム

Info

Publication number
JPH05241886A
JPH05241886A JP4043790A JP4379092A JPH05241886A JP H05241886 A JPH05241886 A JP H05241886A JP 4043790 A JP4043790 A JP 4043790A JP 4379092 A JP4379092 A JP 4379092A JP H05241886 A JPH05241886 A JP H05241886A
Authority
JP
Japan
Prior art keywords
abnormality
data
analysis
program
cause
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
JP4043790A
Other languages
English (en)
Inventor
Nobuyuki Watabe
信幸 渡部
Hiroyuki Nakamura
宏之 中村
Masaya Tanaka
昌也 田中
Riichi Okubo
利一 大久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP4043790A priority Critical patent/JPH05241886A/ja
Publication of JPH05241886A publication Critical patent/JPH05241886A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 本発明の目的は、大規模プログラムの製作或
いは、分散環境にも適用できるデバッグサポート方式の
オペレーティング組み込み型デバッグサポートシステム
を提供することである。 【構成】 本発明は、プログラム実行中の異常時に、異
常発生要因及び異常発生プログラム箇所を特定するため
に必要なデータを収集するデータ収集手段40と、デー
タ収集手段40のデータを解析するデータ解析手段47
と、データ解析手段47の結果を通知する通知手段と、
カーネル内部でデータ解析手段47の結果から異常発生
原因を特定するための異常解析手順書を提示することを
指示する異常解析手順書指示手段101と、異常事例を
蓄積する蓄積手段44とを有する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、オペレーティングシス
テム組み込み型デバッグサポートシステムに係り、特
に、カーネル機能を利用して構築されるアプリケーショ
ンプログラムを分散環境下でデバッグする場合も含めた
デバッグ用ワークステーション上で動作するサポート方
式のオペレーティングシステム組み込み型デバッグサポ
ートシステムに関する。
【0002】
【従来の技術】プログラム走行中にプロセッサが異常を
検出すると、プロセッサ側からソフトウェアに割り込み
という形で通知される。ソフトウェアは割り込みが発生
すると、割り込みがかかった原因を解析する割り込み解
析処理ルーチンを実行する。
【0003】大規模プログラムを数人で分散してデバッ
グする場合に、予め、上記の割り込み解析処理ルーチン
にブレーク(処理ルーチンがあるアドレスを実行しよう
とすると、プロセッサの動作が停止するデバッグ機能)
を設定しておく。次にプロセッサがブレークしたら、割
り込みの原因が何であったかを調べる。
【0004】これは、ハードウェア上の情報(レジス
タ)をダンプしたり、プログラム走行履歴をダンプした
りして、これらの情報を総合的に判断することにより、
割り込みの要因を探す。この時、レジスタの意味やレジ
スタを構成する情報を詳細に記載してあるマニュアルを
参照することによって行われる。
【0005】
【発明が解決しようとする課題】従来のシステムのプロ
グラムのデータ収集及び解析では、デバッグ担当者の経
験に依存するため、小規模のプログラムを少人数で製作
し、デバッグする場合には、適用可能な範囲である。
【0006】しかし、数メガラインに及ぶような大規模
プログラムを多人数で製造し、デバッグする場合には、
担当者間でデバッグ範囲のモジュール化が図られ、担当
者の考慮範囲を限定することが一般的である。デバッグ
担当者が担当しているモジュール以外で異常が発生した
場合に、異常解析のためのデータ収集が困難であるだけ
でなく、デバッグ担当者の経験に依存するため、収集し
たデータが解析には不十分な場合もある。この場合に
は、異常を再現させ、再度データを収集する。従って、
デバッグ効率が必ずしも良くない。さらに、同一異常が
再現できない場合には、異常発生の原因自体が潜在化す
る可能性もある。
【0007】また、デバッグが複数に分散されたターゲ
ットマシンで並行に実施される場合には、各ターゲット
マシンにおいて、共通の異常が発生する可能性がある。
【0008】ターゲットマシンでデバッグを実施してい
るデバッグ担当者間では、異常発生時に収集したデータ
及びその解析結果の異常事例をノウハウとして、共有す
ることは困難である。
【0009】本発明の上記の点に鑑みなされたもので、
大規模プログラムの製作或いは、デバッグ効率を向上さ
せるための分散環境にも適用できるデバッグサポート方
式のオペレーティング組み込み型デバッグサポートシス
テムを提供することを目的とする。
【0010】
【課題を解決するための手段】本発明は、プログラムの
実行環境のための各種機能を提供するオペレーティング
システムの割り込み管理やタスク管理機能等を提供する
カーネル機能を用いたデバッグサポートシステムにおい
て、プログラム実行中のハードウェア障害及びオペレー
ティングシステム使用上の誤りやアプリケーションプロ
グラムの障害に伴う異常時に、異常発生要因及び異常発
生プログラム箇所を特定するために必要なデータを収集
するデータ収集手段と、データ収集手段で収集されたデ
ータを解析するデータ解析手段と、データ解析手段の結
果をデバッグ担当者に自然言語により通知する通知手段
と、カーネル内部に設けられ、データ解析手段の結果か
ら異常発生原因を特定するために、分散アクセス可能な
データベースに蓄積されている異常発生要因対応の異常
解析手順書を提示することを指示する異常解析手順書指
示手段と、異常事例を分散アクセス可能なデータベース
に蓄積する蓄積手段とを有する。
【0011】
【作用】本発明は、プログラムの実行環境のための各種
機能を提供するオペレーティングシステム(以下OS)
のカーネルにおいて、カーネルで発見できるプログラム
実行中のハードウェア障害及びOS使用上の誤りや障害
等の異常発生時に、異常発生原因、発生プログラム箇所
を特定するために必要なデータを自動的に収集、解析
し、その結果と異常発生時の解決手順書を同時にデバッ
グ担当者に提示することにより、大規模プログラムの製
造や、デバッグにおいて発生した異常に関する知識がデ
バッグ担当者間で共有できるだけでなく、異常発生時に
解析を半自動に実行することにより、デバッグ効率が向
上する。
【0012】
【実施例】図1は、本発明の一実施例のカーネル組み込
み型デバッグサポートシステム構成のブロック図を示
す。
【0013】本実施例のシステム構成は、実際のアプリ
ケーションが動作するターゲットモジュール10、異常
発生時の解析手順書及び異常事例を管理するためのホス
トワークステーション20、ターゲットモジュール10
とワークッステーション20間の結合網30から構成さ
れている。ダーゲットモジュール10は、デバッグ対象
プログラム43、OS機能40、カーネル機能41、異
常検出時に自動的にデータを収集するOS組み込みルー
チン42、カーネルとデータ収集ルーチンとのプログラ
ム間インターフェース50により構成される。ホストワ
ークステーション20は、分散アクセス可能なデータベ
ース管理機能44、それに接続されるデータベース45
より構成される。各ターゲットのマシン上のアプリケー
ションプログラムをデバッグするためのデバッグサポー
ト用のワークステーション101は、デバッガ46、デ
ータ解析ルーチン47により構成される。
【0014】図1において、各ターゲットモジュール1
i(i=1〜n)は分散配置され、デバッグ対象プログ
ラム43が並行デバッグが実施されている。各ターゲッ
トモジュール1iとデバッグサポート用ワークステーシ
ョン10i(i=1〜n)間は結合網30で結合されて
いる。これにより、デバッグサポート用ワークステーシ
ョン10iのデバッガ46によりターゲットモジュール
1nのデバッグ対象プログラム43がデバッグされる。
解析手順書及び異常事例を管理しているホストワークス
テーション20とワークステーション10i(i=1〜
n)も結合網30で結合されているため、デバッグ中の
異常発生時にワークステーション10i(i=1〜n)
でホストワークステーション20上の解析手順書等の異
常発生に関する知識が容易に参照または、共用可能とな
る。
【0015】この解析手順書は、解析の手順を具体例を
もとにして、ステップバイステップで記載されており、
デバッグッサポート機能で自動的に収集されたデータを
解析手順書の具体例と実際に収集されたデータとを照合
していくことにより異常の原因分析が実行される。
【0016】以下に、解析手順書の例を示す。 ステップ; プログラムのどこで異常が発生したかを
解析する(異常発生箇所)。 ・異常発生時のハードウェアレジスタの内、異常発生箇
所を示すレジスタを参照することを指示する。 ステップ; どのような異常が発生したか(異常種
別)。 ・異常発生時の状態を保持しているメモリ及びハードウ
ェアレジスタを参照することを指示する。 ステップ; なぜ異常が発生したかを解析する(異常
要因)。 ・ステップ200の異常のケースに応じて大きく変化す
る。
【0017】次に、異常要因及び異常発生箇所の解析に
ついて具体例を用いて説明する。図2は、解析手順書の
例を示す。同図の例はイリーガルなアドレスにアクセス
した場合の例である。 (1)まず、同図(A)に示すように、アドレス変換例
外発生の解析用マクロを実行する。このマクロを実行し
た結果、“CAUA,CAUB = 51”により、CAUA=5,C
AUB=1であるので、なんらかのイリーガルなアドレ
スへのアクセスが原因であることが分かる。 (2)同図(B)に示すように、(A)の“COM PROG=
8080003c”付近を分解する。“0x8080003C”番地の命令
をみると、変数zzzzzzz に格納されているポインタが示
す領域に“36”を移動(MOVE)する命令である。ここ
で、変数zzzzzzz に正規にポインタが格納されているか
を確認する必要がある。 (3)次に、変数zzzzzzz には、0x80c00000という値が
格納されているとすると、0x80c00000番地の領域が正規
にマッピングされた空間であるのか調べた時、マッピン
グができていない空間であることが分かった。従って、
変数zzzzzzz に誤った値が設定されたか、何も設定され
ずに、ダミーデータがそのまま残ったというのが、この
事象の原因である。
【0018】本実施例におけるデバッグサポートのため
に以下に示すような機能がカーネル組み込みルーチン、
データ解析処理ツール(デバッグルーチンプログラム)
及びデータベース管理機能に設けられている。図3は、
本発明の一実施例の動作を説明するための図である。
【0019】図3において、カーネル組み込みルーチン
Kは、データ解析処理ツールAを起動し、データ解析処
理ツールAはデータベース機能Dを起動する。この一連
の処理により、データ収集、及びデバッグ担当者に解析
及び解析手順書の提示を行う。さらに、新たな異常につ
いては、データベース上でデータを蓄積する。
【0020】図3に示す各ルーチンの異常時の解析の動
作を説明する。
【0021】《カーネル組み込みルーチンK》 ステップ1;カーネル機能40において、ターゲットモ
ジュール1nのデバッグ対象プログラム43の異常を検
出する ステップ2;検出された各異常を解析するために必要な
データを自動的にOS40内に設けられたルーチン42
により収集する。
【0022】ステップ3;OS40は、データ解析処理
ツールA(47)を起動して、収集したデータを引き渡
す。
【0023】《データ解析処理ツールA》 ステップ4;データ解析処理ツールAは、カーネル組み
込みルーチンK(40)からのデータを解析して、デバ
ッグ対象プログラム43の異常要因と、異常発生箇所を
特定する。
【0024】ステップ5;デバッグサポート用ワークス
テーション101は、特定された異常原因、異常発生箇
所を表示する。
【0025】ステップ6;解析された結果を解析手順書
等を管理しているホストワークステーション20に送信
する。
【0026】ステップ7;ホストワークステーション2
0はデータベース45を起動し、異常原因を指定する情
報を渡す。
【0027】《データベース機能D》 ステップ8;データ解析処理ツールA(47)によって
起動されたデータベース45はホストワークステーショ
ン20からの異常原因の情報により、解析手順書を検索
し、対応する解析手順書を各デバッグ・サポート用ワー
クステーション101〜10iに提示する。
【0028】ステップ9;データベース管理機能44
は、以前に発生した異常事例の中にホストワークステー
ション20から通知された異常原因と類似する事例がな
いかを調べる。
【0029】ステップ10;類似した異常事例がある場
合には、以前に発生した異常事例もデータベース45よ
り読み出してデバッグ・サポート用ワークステーション
101〜10iに提示する。
【0030】ステップ11;類似した異常事例がない場
合には、ホストワークステーション20から通知された
異常原因を新データとしてデータベース45に蓄積す
る。
【0031】先に、ホストワークステーションに送信さ
れた異常要因、異常発生箇所等のデータは、分散された
複数のターゲットモジュール1n上でどのような異常が
多く発生しているかを監視したり、新たな異常事例を蓄
積するために用いられる。これにより、新規の異常及び
各モジュールに共通性の高い異常については、早期にデ
バッグ担当者に周知可能となる。
【0032】また、本実施例のデバッグサポートの機能
は、直接デバッグ担当者に何が異常を引き起こしたかを
通知するものであるので、解析手順書を異常発生毎に参
照するというものではなく、自動的に完全に解析できな
い異常原因もあり、その場合に解析手順書を検索すると
いうものである。また、1度解析した異常については、
次回以降に同様の異常が発生した場合に利用するため
に、データベースに蓄積しておき参照するという使用目
的もある。
【0033】上記の実施例では、カーネルで異常を検出
した場合を例に説明したが、この例に限定されることな
く、アプリケーションプログラムで異常を検出した場合
でも同様の手段で自動的に解析することが可能である。
【0034】
【発明の効果】上述のように本発明によれば、大規模プ
ログラムを分散された複数のターゲットマシン上で並行
デバッグする時に、デバッグの効率を向上させることが
可能であるばかりでなく、デバッグ上の知識も蓄積する
ことが可能なため、後発のシステム開発時にも各知識が
有効に活用できる。
【0035】なお、本発明は、デバッグ時だけでなく、
システム運用時にも適用することができる。これによ
り、運用時に発生した異常に関する知識が運用システム
間で共有できる等の効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例のカーネル組み込み型デバッ
グサポートシステム構成のブロック図である。
【図2】解析手順書の例を示す図である。
【図3】本発明の一実施例の動作を説明するための図で
ある。
【符号の説明】
10〜1n ターゲットモジュール 20 ホストワークステーション 40 オペレーティングシステム 41 カーネル機能 42 OS組み込みデータ収集ルーチン 43 デバッグ対象プログラム 44 データベース機能 45 データベース 46 デバッガ 47 データ解析ルーチン 50 カーネルとデータ収集ルーチンとのプログラム間
インタフェース 101〜10n デバッグワークステーション K カーネル組み込みルーチン A データ解析処理ツール D データベース機能
───────────────────────────────────────────────────── フロントページの続き (72)発明者 大久保 利一 東京都千代田区内幸町1丁目1番6号 日 本電信電話株式会社内

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プログラムの実行環境のための各種機能
    を提供するオペレーティングシステムの割り込み管理や
    タスク管理機能等を提供するカーネル機能を用いたデバ
    ッグサポートシステムにおいて、 プログラム実行中のハードウェア障害及びオペレーティ
    ングシステム使用上の誤りやアプリケーションプログラ
    ムの障害に伴う異常時に、異常発生要因及び異常発生プ
    ログラム箇所を特定するために必要なデータを収集する
    データ収集手段と、 前記データ収集手段で収集されたデータを解析するデー
    タ解析手段と、 前記データ解析手段の結果をデバッグ担当者に自然言語
    により通知する通知手段と、 前記カーネル内部に設けられ、前記データ解析手段の結
    果から異常発生原因を特定するために、分散アクセス可
    能なデータベースに蓄積されている異常発生要因対応の
    異常解析手順書を提示することを指示する異常解析手順
    書指示手段と、 異常事例を前記分散アクセス可能なデータベースに蓄積
    する蓄積手段とを有することを特徴とするオペレーティ
    ングシステム組み込み型デバッグサポートシステム。
JP4043790A 1992-02-28 1992-02-28 オペレーティングシステム組み込み型デバッグサポートシステム Pending JPH05241886A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4043790A JPH05241886A (ja) 1992-02-28 1992-02-28 オペレーティングシステム組み込み型デバッグサポートシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4043790A JPH05241886A (ja) 1992-02-28 1992-02-28 オペレーティングシステム組み込み型デバッグサポートシステム

Publications (1)

Publication Number Publication Date
JPH05241886A true JPH05241886A (ja) 1993-09-21

Family

ID=12673542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4043790A Pending JPH05241886A (ja) 1992-02-28 1992-02-28 オペレーティングシステム組み込み型デバッグサポートシステム

Country Status (1)

Country Link
JP (1) JPH05241886A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221296A (ja) * 1995-02-15 1996-08-30 Nec Corp 組み込みソフトウェアデバッグ支援装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221296A (ja) * 1995-02-15 1996-08-30 Nec Corp 組み込みソフトウェアデバッグ支援装置

Similar Documents

Publication Publication Date Title
Gulzar et al. Bigdebug: Debugging primitives for interactive big data processing in spark
CN100356335C (zh) 保存跟踪数据的方法和装置
US8140565B2 (en) Autonomic information management system (IMS) mainframe database pointer error diagnostic data extraction
US8949671B2 (en) Fault detection, diagnosis, and prevention for complex computing systems
Cotroneo et al. Fault triggers in open-source software: An experience report
US7937623B2 (en) Diagnosability system
US7178134B2 (en) Method and apparatus for resolving memory allocation trace data in a computer system
US20090037888A1 (en) Simulation of program execution to detect problem such as deadlock
US20030226059A1 (en) Systems and methods for remote tracking of reboot status
US20120331449A1 (en) Device, method and computer program product for evaluating a debugger script
US6728668B1 (en) Method and apparatus for simulated error injection for processor deconfiguration design verification
Messer et al. Susceptibility of commodity systems and software to memory soft errors
US20090150870A1 (en) Method, Apparatus, and Computer Program Product for Implementing Enhanced Template Debug
JPH0644242B2 (ja) コンピュータ・システムにおける問題解決方法
CN101122880A (zh) 内嵌调试器的嵌入式系统及嵌入式系统调试方法
WO2007035808A1 (en) Server application state
US20030145255A1 (en) Hierarchical multi-component trace facility using multiple buffers per component
US20100088546A1 (en) Statistical debugging using paths and adaptive profiling
CN101685420B (zh) 多线程调试方法和装置
JPH09503084A (ja) 実行中のリアルタイムシステムにおけるエラー分析用トレーサシステム
US20120159451A1 (en) Identifying threads that encounter an instruction at which another thread is halted
JP2005338987A (ja) 例外テスト支援プログラム及び例外テスト支援装置
JPH05241886A (ja) オペレーティングシステム組み込み型デバッグサポートシステム
Bowman et al. 1A processor: Maintenance software
Zhang et al. Quality assurance technologies of big data applications: A systematic literature review

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Year of fee payment: 12

Free format text: PAYMENT UNTIL: 20081121

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

Free format text: PAYMENT UNTIL: 20091121

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20101121

Year of fee payment: 14

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101121

Year of fee payment: 14