JPH076055A - オペレーティングシステムのデバッギング用ツール - Google Patents
オペレーティングシステムのデバッギング用ツールInfo
- Publication number
- JPH076055A JPH076055A JP6078784A JP7878494A JPH076055A JP H076055 A JPH076055 A JP H076055A JP 6078784 A JP6078784 A JP 6078784A JP 7878494 A JP7878494 A JP 7878494A JP H076055 A JPH076055 A JP H076055A
- Authority
- JP
- Japan
- Prior art keywords
- tool
- debugging
- context
- memory
- mode
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/362—Debugging of software
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3698—Environments for analysis, debugging or testing of software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Eye Examination Apparatus (AREA)
- Saccharide Compounds (AREA)
- Executing Machine-Instructions (AREA)
- Numerical Control (AREA)
- Fluid-Driven Valves (AREA)
Abstract
ることができる効果的なデバッギング用ツールを提供す
る。 【構成】 少なくとも1つのプロセッサ(P)と、プロ
セッサ関連メモリ(M)と、メモリ管理ユニット(MM
U)とを含むシステムの動作をデバッグするためのこの
ツール(KD)は、仮想アドレス指定モードが物理アド
レス指定モードに等しいメモリ(M)のゾーンに埋込ま
れている。ツールは、デバッギング中は常に所定の方法
によって、各動作を管理ユニット(MMU)とは無関係
に物理モードで実行する。ツールは、機械の初期化段階
制御のために少なくとも2つの例外ベクトル(BP,D
SI)を支援し、且つとりわけツール自体のスタック
(S)と、被分析プロセスのコンテキスト及び解読され
たコンテキストの記憶手段(CMM)の如何を問わず使
用可能なアルゴリズムを使用するデコーダ(DEC)と
を含んでいる。
Description
セッサと、プロセッサ関連メモリと、メモリ管理ユニッ
トとを含む機械のオペレーティングシステムのデバッギ
ング用ツールに関する。
サであれ、システムのブート時には、コア又はオペレー
ティングシステムが通常、メモリ管理ユニットが初期化
されない限りリアルモードとも呼ばれる物理アドレス指
定モードで機能し、メモリ管理ユニットが初期化される
とすぐに仮想アドレス指定モードで動作し、一般に仮想
モードで機能するデバッギング用ツールがこの時だけ動
作可能になることは知られている。これには幾つかの欠
点がある。
デバッギング用ツール、即ち“デバッガ”は物理アドレ
スを仮想アドレスに翻訳するメモリ管理ユニットに依存
するので、初期化段階は実際には、メモリ管理ユニット
が初期化されなければデバッグされ得ない。従って、初
期化段階中に発生するエラーの検出は困難であり、シス
テムはロック状態のままになり得る。同様に、デバッギ
ング用ツールはメモリ管理ユニットに依存するので、現
コンテキストから他の所望するコンテキストへの変更を
単純に許容することはできない。何故ならば、メモリ管
理ユニットを通じて所与の時点ではひとつのコンテキス
トだけが有効だからである。最後に、デバッギング用ツ
ールがまだ稼働状態にない初期化段階中に又は仮想メモ
リが初期化された後に仮想メモリで故障が発生すると、
このツールは同じ仮想メモリを使用するためにかなり混
乱を生じる。更にはこのような状況では、ツールをこの
ような故障の分析のために使用することはできない。
ルで発生する種々の欠点を克服し且つ使用が簡単で、更
には完全に自律的に使用することができる効果的なツー
ルを提供することを目的とする。
した型の機械のオペレーティングシステムのデバッギン
グ用ツールは、ツールが、所定の方法で実行される全デ
バッギング中に各動作を物理モードで実行し、且つ仮想
アドレス指定モードが物理アドレス指定モードに等しい
メモリのゾーンでメモリ管理ユニットとは無関係に動作
し、前記ツールが、機械の初期化段階制御のために少な
くとも2つの例外ベクトルを支援し、且つとりわけツー
ルが初期化するツール自体のスタックと、被分析プロセ
スのコンテキスト及び解読されたコンテキストの記憶手
段の如何を問わず使用可能なアルゴリズムを使用するデ
コーダとを含んでいることを特徴とする。
ドレスにアクセスするためにプロセッサのメモリ管理ユ
ニットを使用しない独立型ツールを設計することにあ
る。本発明の第2の主旨は、ツールの各動作が物理モー
ドで実行され、ツールが、仮想モードが物理モードに等
しいメモリのゾーンで動作し、且つ仮想モードから物理
モードへの翻訳又は変換は必要とあれば直接デコーダに
よって実施されるためにツールの非翻訳モードでの動作
を可能とするデコーダを含むことにある。そのため、デ
コーダは各メモリアクセスのために、仮想メモリをシミ
ュレートし且つ選択した処理コンテキストの如何を問わ
ず使用可能なアルゴリズムを使用する。実際には、ツー
ルは常に物理モードで動作し、メモリ管理ユニットが初
期化されるとすぐに、仮想アドレスから物理アドレスを
検索するために翻訳自体を実行する。ツールのデコーダ
はそのとき、通常はメモリ管理ユニットによって使用さ
れるアルゴリズムをシミュレートする。このようにメモ
リ管理ユニットとは無関係に設計されたデバッギング用
ツールを使用すれば多くの利点がある。第1の利点は、
初期化段階を含む全ての段階のデバッギングが可能とな
ることである。特に、オペレーティングシステム及びメ
モリ管理ユニットは共にデバッギング用ツールの制御下
で起動され得る。デバッギング用ツールは更に、当業者
が通常“スタンドアロン”と呼んでいるモードで完全に
自律的に動作し得る。この“スタンドアロン”モードで
は、オペレーティングシステム起動用の自立プログラム
又はコードをデバッグすることが可能である。
込まれたプロセステーブルに含まれるプロセスのひとつ
の任意のコンテキストの選択を可能とする。プロセステ
ーブルは選択すべきコンテキストのアドレスを含んでい
る。この仮想アドレスはこのコンテキストを検索するた
めに解読され、このコンテキストは、スタックを再度初
期化した後に記憶手段に再複写することによって現コン
テキストに置換される。
化される。実行中のプロセスの処理だけがその仮想コン
テキストによって仮想モードで見られるオペレーティン
グシステムの同一の可視性を提供する従来技術のツール
とは異なり、本発明のツールは、対応する仮想コンテキ
ストを取り出して、仮想モードから物理モードへの翻訳
をこの仮想コンテキストに適用することによって、現コ
ンテキストを選択した他の任意のコンテキストに移行す
ることができる。現ツールはデバッギング性を有し且つ
任意のプロセスに関する任意のコンテキストのデータ分
析を可能とする。ツールはそれ自体が仮想モードから物
理モードへの翻訳を実行するので、コンテキストとは無
関係に動作し得る。
モリ管理ユニットとデコーダとの基本的な相違は明らか
にその性能である。しかしながら本発明の場合、デバッ
ギング用ツールは動作中は完全にプロセッサ源の制御下
にあるので、応答時間の問題は生じない。
は、当業者が“ダンプ”と呼んでいるメモリイメージの
分析のために有利に使用し得る。実際、物理モードの任
意のメモリイメージは、ポストモーテム(post−m
ortem)ダンプ又は物理メモリドライバによって得
られる。そこでこのメモリイメージ、即ちダンプは、デ
バッギング用ツールをユーザモードで用いて活用するこ
とができる。ツール自体が仮想モードから物理モードへ
の翻訳を行うと、物理モードはユーザモードでシステム
の任意の仮想アドレスにアクセスすることができる。従
って、ツールはユーザモードで動作中に、事故後の現シ
ステム又はメモリダンプの結果を分析することもでき
る。従来技術では、この型の分析は必ず、デバッギング
用ツールとは関係のない専用分析ツールを用いて実施さ
れていた。
及び例外ベクトルを使用するためにシステムのスタック
の故障の影響を受けないことである。
で実施される。本方法では特に、第1段階で、例外によ
って引き起こされた呼出しを認識するツールが物理モー
ドで動作するためにツール自体のスタックを選択して、
初期化し、制御の第2段階で、ツールは、処理すべきコ
ンテキストのパラメータを受信し、且つ仮想アドレスを
物理アドレスに翻訳するデコーダによって各アクセスが
仮想メモリをシミュレートするように翻訳アルゴリズム
を使用する。このように解読されたコンテキストパラメ
ータはコンテキスト記憶手段に転送される。次に第3段
階でツールはコンソールを初期化し、その結果オペレー
タは操作を許可される。最終段階で、一旦デバッギング
が実行されると、ツールは機械に制御を委ねる。このよ
うな方法によって、機械の全動作段階中に、任意のコン
テキストに対して、簡単で、独立的且つ効果的なデバッ
ギングを実行することができる。
読めば、本発明の内容を更によく理解することができよ
う。
用ツールKDの機能を使用し且つ理解するのに必要な環
境を構成するオペレーティングシステムの部分、特にプ
ロセッサP、メモリM及びメモリ管理ユニットMMUを
概略的に、また意図的に簡略化した形態で図示する。プ
ロセッサPに結合された汎用レジスタGRはとりわけ、
種々のプロセスPRO1,PRO2,...,PROn
に関連するシステムの種々のコンテキストを含んでい
る。プロセス自体は、メモリMに埋込まれたプロセステ
ーブルPTに含まれている。プロセステーブルPTの種
々のプロセスに関連する種々のコンテキストの仮想アド
レスを含んでいる仮想アドレス指定レジスタVARが更
にメモリ管理ユニットMMUに結合されている。
モリMに、特に仮想アドレス指定モードが物理アドレス
指定モードに等しく、従ってページ不可能なゾーンに、
メモリ管理ユニットMMUとは無関係に埋込まれ且つロ
ックされている。一般に、仮想アドレス指定モードが物
理アドレス指定モードに等しいメモリのゾーンに必ず埋
込まれるオペレーティングシステムの部分が常に存在す
る。更には、全ての例外ベクトル及びプロセッサ付近の
全ての処理操作がこの同一型のゾーンに埋込まれること
により、2つのモードでの動作が可能となることは当然
である。本発明のツールKDはこのカテゴリに属する。
ツールKDは有利には、ツール自体のスタックSと、デ
コーダDECと、解読したコンテキストの記憶手段CM
Mとを含んでいる。ツールKDは更にベクトルテーブル
DVTを有し、このベクトルテーブルは、以下で説明す
るように初期化段階中での有効な機能を可能とする少な
くとも2つの例外ベクトルBP及びDSIを含んでい
る。
翻訳モード(即ち物理モード)で起動するようになって
いる。ツールは更に、仮想メモリが初期化されてもこの
非翻訳モードの状態になけれならない。そのため、初期
化段階の制御及びオペレーティングシステムの適切な動
作のためにツールが呼出されると、プロセッサPの状態
モードの2つのビットは、物理モードでの動作を強制す
るために無効となる。無効とすべきプロセッサPのこれ
ら2つのビットは公知の如く命令コード用翻訳確認ビッ
ト及びデータ翻訳用確認ビットである。これらのビット
は一般に同時に操作される。更には、非翻訳モードで動
作されるので、前述した如く、システムのコンテキスト
とは無関係になり得る。何故ならば、翻訳はツールKD
自体のデコーダによって行われるからである。従って、
現コンテキストの分析時に、デコーダは仮想メモリをシ
ミュレートするためのアルゴリズムを使用する。このア
ルゴリズムはコンテキストの如何を問わず利用可能であ
り、そのため所望とあればコンテキストを容易に変更す
ることができる。更には有利には、例えば仮想メモリの
故障が発生したためツールKDが制御のために呼出され
るときに、ツールKDは常に稼働状態にあり、システム
のこの故障の影響を受けることはない。何故ならば、ツ
ールはこの仮想メモリを使用していないからである。こ
れはシステムの起動時も動作中も有効である。何故なら
ば、ツールKDは物理モード、従って非翻訳モードで動
作しているので、仮想メモリの故障が検出されるとすぐ
にこの仮想メモリが分析され得るからである。デコーダ
DECによる仮想アドレスのデコーティングを可能とす
るこのアルゴリズムは実際には、(製造業者が販売して
いる)使用中のマイクロプロセッサのデコーティングア
ルゴリズムと同一である。このアルゴリズムは仮想メモ
リの機能を説明している。そこで、アルゴリズムをコー
ド翻訳するだけで十分である。従ってツールKDは、メ
モリ管理ユニットの役割を果たすが、欠点は示さないツ
ール自体の翻訳機をデコーダDECに有する。
の他に、オペレーティングシステム下で実行中の任意の
ユーザプロセスのユーザアドレスも、デコーティングア
ルゴリズムが同一であるため同一技術で解読される。任
意のユーザ空間の可視性が容易に得られるため、このよ
うにして重要な利点が得られる。実際には、種々のユー
ザプロセスは異なる仮想空間に属し、これらの空間のア
ドレスは同様に解読され得る。
れが機械のプロセッサP及びメモリ管理ユニットMMU
に結合され且つこのプロセステーブルPTに含まれるこ
のプロセスのオペレーションコンテキストを含んでいる
全てのレジスタGR及びVARを使用する。ツールは、
過去のコンテキストをパラメータの形態で検索するため
にこのプロセスに結合されたレジスタGRC及びVAR
Cを使用する。これらのレジスタGRC及びVARCは
コンテキスト記憶手段CMMに含まれ且つ所与の時点に
レジスタGR及びVARの内容を表す。デコーダDEC
は、メモリMへのアクセスを可能とするコンテキストの
アドレスを解読するためにメモリ管理ユニットMMUの
翻訳機能をシミュレートする。メモリには、アドレスの
デコーティングの実行を可能とする翻訳テーブルTTも
存在する。デコーダDECは、ユニットMMUと同様
に、テーブルTTから物理アドレスを推論するためにこ
れらのテーブルを使用する。従って、ツールKDの必要
上、例外が生じると、レジスタGR及びVAR内に含ま
れるコンテキストがバックアップのために関連するレジ
スタGRC及びVARC内に再複写される。レジスタG
R及びVARは例外処理のために使用される。このよう
にバックアップされたコンテキストは、一旦例外処理が
終了すると復元することができ、手順は中断地点で再開
され得る。バックアップされたコンテキストのパラメー
タによって、プロセスが例外によって中断された地点を
知ることができる。バックアップされたコンテキスト
は、生成した例外ベクトルのアドレスに関する(当業者
には“プログラムカウンタ”として知られている)制御
レジスタの指示を更に含んでいる。
ツールKDは例外によって呼出されると、ツールコード
の実行のために、レジスタGRC、VARCと、内部ス
タックSとを使用しなければならない。内部スタックは
コード実行のために初期化されねばならない。スタック
Sが一旦初期化されると、ツールKDは設計上(仮想ア
ドレス指定モードが物理アドレス指定モードに等しいメ
モリのゾーン内に埋込まれている)、ツールコードを物
理コードで実行する。ツールは次に、分析すべきプロセ
スのコンテキストのパラメータをレジスタGRC、VA
RC内で、特に過去のアドレスをまずレジスタVARC
にてパラメータの形態で受信して、コンテキストの所在
地を確認することができる。コンテキストは、現プロセ
スの仮想アドレスのデコーディングを可能とする全ての
情報を含んでいる。このアドレスはデコーダDECによ
って解読され、そのためコンテキストをメモリで検索し
て、レジスタGRCに再複写することができる。ツール
KDは分析のために直接レジスタGRCにアクセスす
る。以上のことからツールKDは他のプロセスのために
コンテキストを変更したいときに有利である。何故なら
ば、実際この新規のコンテキストのアドレスを解読し
て、レジスタGRCに再複写するだけで十分だからであ
る。従って、任意のコンテキストへのアクセスは、単に
所望の被分析コンテキストのアドレスを解読することに
よって、メモリ管理ユニットMMUとは関係なく容易に
行われる。
場合も同様に、各システムで1つの機能を、即ち仮想モ
ードから物理モードへのデコーディング用アルゴリズム
によって記述される機能を再度書き込むだけでよい。実
際には、これらの種々のシステムはそのアーキテクチャ
の点で互換性があり、プロセッサのみが異なる。このこ
とは、新規なプロセッサに応じて単にデコーディング技
術を、従ってデコーディングアルゴリズムを変えるだけ
でよいことを意味している。
“ブーティング”段階)で初期化され得る。このためツ
ールは完全に独立状態になり、且つシステムが実際にブ
ートされる前でもシステムの初期化段階になるとすぐに
稼働状態になる。“ブーティング”段階はツールKDの
制御下に置かれる。
ーブルDVT内の所与のアドレスに含まれるツール自体
の例外ベクトルを有する。従って、少なくとも2つのベ
クトルBP、DSIが、オペレーティングシステムとは
無関係に、ツールKDによる直接のブーティングのため
に使用される。第1のベクトルBPは全ての停止点に結
合され、かくしてツールKDは実行が所望される分析の
ために停止点をすぐに使用することができる。第2のベ
クトルDSIは、システムの初期化段階中でも無効アド
レスがシステム内で見出される毎に呼出されるベクトル
である。更には、ツールKDは他のベクトルを、特にプ
ロセッサによって可能となるならば、例外ベクトルを使
用して、ステップバイステップ分析(“ステッピン
グ”)を実行することができる。プロセッサPは各ステ
ップで例外を生成することによって各命令で自動的に停
止する。この例外ベクトルは、システムがマルチプロセ
ッサを含んでいるときに特に有用且つ有利であると判明
し得る。何故ならば、このベクトルによって問題のプロ
セッサPは、他の任意のプロセッサを何等混乱させるこ
となくステップバイステップ分析を実行することができ
るからである。
置することにある。そのため、実際には実行すべきであ
ると考えられる命令の変わりに例外を引き起こす命令が
書込まれる。プログラムが実行されると、この命令への
移行時に例外が生成し、プロセッサは例外の処理を可能
とする予め規定されたアドレスにジャンプする。いずれ
の場合も、全ての例外は物理モードにてプロセッサレベ
ルで呼出される。本発明の場合、例外は処理のために、
オペレーティングシステムのデバッギングに対応する型
であるとして認識されねばならない。ツールは、このよ
うな例外に遭遇すると呼出され、次に例外コンテキスト
のパラメータを受信して、このコンテキストを分析のた
めに検索することができる。所与のアドレスで停止点に
遭遇したことを示すメッセージを送信すると、オペレー
タは実行を起こすことができる。オペレータはメモリゾ
ーンを視覚化するか、このアドレスからステップバイス
テップ分析を継続するか、前記アドレスで停止するため
に他のアドレスに他の停止点を設置するか又はシステム
に制御を委ねることができる。オペレータがシステムに
制御を委ねると、オペレータが分析したコンテキストは
機械によって検索され、機械は中断発生地点で実行を再
開する。
中、コンソールインタフェースは、オペレータがこの時
点から介入できるように初期化される。システムの最初
の初期化時にはコンソールの初期化直後で、ツールKD
の初期化段階中常に、メッセージ送信後のシステムの最
初のデバッギング中でのオペレータの介入及びシステム
の標準的初期化の制御を可能とする例外を生成するシス
テムの静的停止点をツールKDのコードに設置してもよ
い。オペレータは次に、所与のアドレスに停止点を置
き、場合によってはプログラムでステップバイステップ
を実行することができる。
boratories Inc.による登録商標)のよ
うな外部環境では、ツールKDを更に独立的且つ自律的
にするための方法は、ツールのためにまず例外ベクトル
を制御し、次にUNIXのような外部環境にこれらのベ
クトルを提供することにある。実際、ベクトルはこの外
部環境に直接結合され、ツールKDはオペレーティング
システムとは全く無関係に自律プログラム又はシステム
起動コードをデバッグするために呼出され得る。
ング用ツールは、(“ポストモーテムダンプ”として知
られている)メモリイメージの分析のために有効に使用
され得る。実際には、ツールKDは物理モードでメモリ
を検査できるので、ツールの使用をポストモーテムダン
プの用途に広げることができる。ポストモーテムダンプ
の実行時に、同一のアルゴリズムも適用可能である。何
故ならば、このような分析は必ず物理モードで実施され
るからである。そのため、ダンプは、通常実行されてい
るようにディスク又はファイルから検索され、次に独創
的には、ツールKDによって使用されるアルゴリズムが
このディスク又はファイルの内容に適用され、かくして
システムの動作不良時に生じる所与の問題を分析するこ
とができる。このような用途では、検索されたダンプ
は、ダンプアナライザと類似し且つ仮想メモリをシミュ
レートするツールKDによって標準システム上で直接分
析され得(検索された情報は必ず仮想アドレスを有す
る)、同一のアルゴリズムを更に拡張することなく使用
する。従って、ツールKDの独創的な設計によって、単
一の拡張、従って単一のツールだけを使用することがで
きる。この場合通常2つの独立したツールが必要であ
る。
ッギング用ツールを使用すると多くの利点がある。主な
利点のひとつは真の自立性が得られることである。何故
ならば、このツールは非常に高い性能を保持しながら、
メモリ管理ユニットとは全く無関係に各動作を物理モー
ドで実行するからである。更には、オペレーティングシ
ステムのデバッギングは初期化段階になるとすぐに実施
することができる。更には、このシステムの全ての仮想
空間は可視化され、ツール自体は仮想モードから物理モ
ードへの各翻訳を実行し、従って任意のコンテキストを
簡単に変更することができる。
展開される環境のブロック図である。
Claims (9)
- 【請求項1】 少なくとも1つのプロセッサと、プロセ
ッサに関連するメモリと、メモリ管理ユニットとを含む
機械のオペレーティングシステムのデバッギング用ツー
ルであって、該ツールが、所定の方法で実行される全デ
バッギング中に各動作を物理モードで実行し、且つ仮想
アドレス指定モードが物理アドレス指定モードに等しい
メモリのゾーンでメモリ管理ユニットとは無関係に動作
し、前記ツールが、機械の初期化段階制御のために少な
くとも2つの例外ベクトルを支援し、且つとりわけツー
ルが初期化するツール自体のスタックと、被分析プロセ
スのコンテキスト及び解読されたコンテキストの記憶手
段の如何を問わず使用可能なアルゴリズムを使用するデ
コーダとを含んでいることを特徴とするオペレーティン
グシステムのデバッギング用ツール。 - 【請求項2】 第1段階で、例外的に発生した呼出しを
認識するツールが物理モードで動作するためにツール自
体のスタックを選択して、初期化し、制御の第2段階
で、ツールが、処理すべきコンテキストのパラメータを
受信し、且つ仮想アドレスを物理アドレスに翻訳するデ
コーダによって各アクセスが仮想メモリをシミュレート
するように翻訳アルゴリズムを使用し、このように解読
されたコンテキストパラメータがコンテキスト記憶手段
に転送され、次に第3段階で、ツールがコンソールを初
期化し、その結果オペレータが操作を許可され、最終段
階で、一旦デバッギングが実行されると、ツールが機械
に制御を委ねることを特徴とする請求項1に記載のデバ
ッギング用ツールに使用される方法。 - 【請求項3】 デバッギング用ツールが、メモリに書込
まれたプロセステーブルに含まれるプロセスのひとつの
任意のコンテキストの選択を可能とし、プロセステーブ
ルが選択すべきコンテキストのアドレスを含み、該仮想
アドレスが該コンテキストを検索するために解読され、
該コンテキストが、スタックを再度初期化した後に記憶
手段に再複写することによって現コンテキストに置換さ
れることを特徴とする請求項1又は2に記載のデバッギ
ング用ツール。 - 【請求項4】 デコーダによって使用されるデコーディ
ングアルゴリズムが、使用されるプロセッサのデコーデ
ィング用アルゴリズムであって、任意のプロセッサに使
用できることを特徴とする請求項1から3のいずれか一
項に記載のデバッギング用ツール。 - 【請求項5】 前記ツールが、所与のアドレスに少なく
とも2つの例外ベクトルを含む例外ベクトルテーブルを
有し、第1の例外ベクトルは、所与の地点に停止点を設
置させて、所与の命令で分析を開始させることができ、
第2の例外ベクトルは、被分析システム内で無効アドレ
スが見つけられると呼出されることを特徴とする請求項
1から4のいずれか一項に記載のデバッギング用ツー
ル。 - 【請求項6】 例外ベクトルテーブルが更に、システム
がマルチプロセッサシステムのときに他のプロセッサを
混乱させずにステップバイステップ分析を実施させ得る
第3の例外ベクトルを含んでいることを特徴とする請求
項5に記載のデバッギング用ツール。 - 【請求項7】 オペレーティングシステムの最初のデバ
ッギングのために、コンソールの初期化直後のデバッギ
ング用ツールの初期化段階で、システムの標準的初期化
を制御するためにメッセージ送信後でのオペレータの介
入を可能とする例外を生成する静的停止点がシステムに
提供されることを特徴とする請求項5又は6に記載のデ
バッギング用ツール。 - 【請求項8】 ツールが埋込まれている機械がUNIX
のような外部環境の一部であるときに、ツールがまず例
外ベクトルを制御し、次に該例外ベクトルを外部環境に
提供し、該ベクトルが外部環境に直接結合され、デバッ
ギング用ツールが、完全に自律的に所望のデバッギング
を実施するために呼出されることを特徴とする請求項1
から7のいずれか一項に記載のデバッギング用ツール。 - 【請求項9】 ポストモーテムダンプのための、請求項
1から8のいずれか一項に記載のデバッギング用ツール
のユーザモードでの使用。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR9304774 | 1993-04-22 | ||
| FR9304774A FR2704334B1 (fr) | 1993-04-22 | 1993-04-22 | Outil de mise au point d'un système d'exploitation. |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH076055A true JPH076055A (ja) | 1995-01-10 |
| JP2612672B2 JP2612672B2 (ja) | 1997-05-21 |
Family
ID=9446340
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6078784A Expired - Lifetime JP2612672B2 (ja) | 1993-04-22 | 1994-04-18 | オペレーティングシステムのデバッギング用ツール |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US5603033A (ja) |
| EP (1) | EP0621536B1 (ja) |
| JP (1) | JP2612672B2 (ja) |
| AT (1) | ATE176957T1 (ja) |
| CA (1) | CA2117159C (ja) |
| DE (1) | DE69416608T2 (ja) |
| ES (1) | ES2129595T3 (ja) |
| FR (1) | FR2704334B1 (ja) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5771385A (en) * | 1996-03-29 | 1998-06-23 | Sun Microsystems, Inc. | Setting and getting system debug flags by name at runtime |
| US6275809B1 (en) * | 1996-05-15 | 2001-08-14 | Hitachi, Ltd. | Business processing system employing a notice board business system database and method of processing the same |
| JPH1078889A (ja) * | 1996-09-04 | 1998-03-24 | Mitsubishi Electric Corp | マイクロコンピュータ |
| US6219828B1 (en) * | 1998-09-30 | 2001-04-17 | International Business Machines Corporation | Method for using two copies of open firmware for self debug capability |
| US6574752B1 (en) | 1999-07-15 | 2003-06-03 | International Business Machines Corporation | Method and system for error isolation during PCI bus configuration cycles |
| US7028056B1 (en) * | 2000-04-14 | 2006-04-11 | Microsoft Corporation | Method and arrangements for generating debugging information following software failures |
| FR2809204B1 (fr) * | 2000-05-17 | 2003-09-19 | Bull Sa | Interface applicative multiprosseur, ne necessitant pas l'utilisation d'un systeme d'exploitation multiprocesseur |
| US6681348B1 (en) | 2000-12-15 | 2004-01-20 | Microsoft Corporation | Creation of mini dump files from full dump files |
| JP2003173270A (ja) * | 2001-12-06 | 2003-06-20 | Canon Inc | ソフトウェアデバッグ装置 |
| US6941390B2 (en) * | 2002-11-07 | 2005-09-06 | National Instruments Corporation | DMA device configured to configure DMA resources as multiple virtual DMA channels for use by I/O resources |
| CN101272551B (zh) * | 2007-03-23 | 2011-04-20 | 中兴通讯股份有限公司 | 一种嵌入式系统最大栈空间的设定方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5994152A (ja) * | 1982-11-19 | 1984-05-30 | Fujitsu Ltd | 高速ロギング方式 |
| JPH02226344A (ja) * | 1989-02-27 | 1990-09-07 | Fuji Xerox Co Ltd | 計算機システム |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4462077A (en) * | 1982-06-24 | 1984-07-24 | Bell Telephone Laboratories, Incorporated | Trace facility for use in multiprocessing environment |
| US4835685A (en) * | 1985-05-06 | 1989-05-30 | Computer X, Inc. | Virtual single machine with message-like hardware interrupts and processor exceptions |
| US4819234A (en) * | 1987-05-01 | 1989-04-04 | Prime Computer, Inc. | Operating system debugger |
| US5127103A (en) * | 1987-10-14 | 1992-06-30 | North American Philips Corporation | Real-time tracing of dynamic local data in high level languages in the presence of process context switches |
| US5063499A (en) * | 1989-01-09 | 1991-11-05 | Connectix, Inc. | Method for a correlating virtual memory systems by redirecting access for used stock instead of supervisor stock during normal supervisor mode processing |
| US5093914A (en) * | 1989-12-15 | 1992-03-03 | At&T Bell Laboratories | Method of controlling the execution of object-oriented programs |
| JP2777496B2 (ja) * | 1991-02-28 | 1998-07-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステムにおいてマルチプロセスをプロファイリングする際の使用方法 |
-
1993
- 1993-04-22 FR FR9304774A patent/FR2704334B1/fr not_active Expired - Fee Related
-
1994
- 1994-03-07 CA CA002117159A patent/CA2117159C/fr not_active Expired - Lifetime
- 1994-04-13 ES ES94400799T patent/ES2129595T3/es not_active Expired - Lifetime
- 1994-04-13 EP EP94400799A patent/EP0621536B1/fr not_active Expired - Lifetime
- 1994-04-13 DE DE69416608T patent/DE69416608T2/de not_active Expired - Lifetime
- 1994-04-13 AT AT94400799T patent/ATE176957T1/de not_active IP Right Cessation
- 1994-04-15 US US08/228,429 patent/US5603033A/en not_active Expired - Lifetime
- 1994-04-18 JP JP6078784A patent/JP2612672B2/ja not_active Expired - Lifetime
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5994152A (ja) * | 1982-11-19 | 1984-05-30 | Fujitsu Ltd | 高速ロギング方式 |
| JPH02226344A (ja) * | 1989-02-27 | 1990-09-07 | Fuji Xerox Co Ltd | 計算機システム |
Also Published As
| Publication number | Publication date |
|---|---|
| CA2117159C (fr) | 1998-11-03 |
| CA2117159A1 (fr) | 1994-10-23 |
| FR2704334B1 (fr) | 1995-06-02 |
| DE69416608T2 (de) | 1999-06-17 |
| EP0621536A1 (fr) | 1994-10-26 |
| ES2129595T3 (es) | 1999-06-16 |
| JP2612672B2 (ja) | 1997-05-21 |
| EP0621536B1 (fr) | 1999-02-24 |
| US5603033A (en) | 1997-02-11 |
| ATE176957T1 (de) | 1999-03-15 |
| FR2704334A1 (fr) | 1994-10-28 |
| DE69416608D1 (de) | 1999-04-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2753500B2 (ja) | 多重アーキテクチャ環境内で特にコードのデバッグを行う改良したソフトウェア・デバッグ・システムと方法 | |
| US6219828B1 (en) | Method for using two copies of open firmware for self debug capability | |
| US5901315A (en) | Method for debugging a Java application having native method dynamic load libraries | |
| KR101770665B1 (ko) | 데이터 처리장치의 디버깅 | |
| JPH0512045A (ja) | 計算機システムの動作継続方法および装置 | |
| JPH076055A (ja) | オペレーティングシステムのデバッギング用ツール | |
| US6330691B1 (en) | Use of dynamic translation to provide breakpoints in non-writeable object code | |
| US6738778B1 (en) | Method and apparatus for monitoring the execution of a program | |
| US5737521A (en) | Tracer system for analyzing errors in running real-time systems | |
| US5903719A (en) | Emulator apparatus and emulation method for efficiently analyzing program faults | |
| JP2001265620A (ja) | Romのプログラムデバッグ方式 | |
| KR101109984B1 (ko) | 에뮬레이팅된 처리 환경에서 실행을 용이하게 하는 방법, 시스템 및 컴퓨터 판독가능 매체 | |
| US6785806B1 (en) | Bios having macro/effector pairs for hardware initialization | |
| JPH0250228A (ja) | デバッグ処理装置 | |
| JPH1049401A (ja) | プログラムのデバッグ方法 | |
| JP2697230B2 (ja) | デバッグ支援装置 | |
| JPH08185326A (ja) | インタープリタ言語処理装置 | |
| JPH02159654A (ja) | プログラム再起動方式 | |
| JPS5856051A (ja) | アクセス割込みによるアドレス・コンペア方式 | |
| JP2000322289A (ja) | 制御装置エミュレーション方式及び制御装置エミュレーション方法及び制御装置エミュレーション方法を計算機に実現させるためのプログラムを記憶した計算機読取可能な記録媒体 | |
| JPS63271542A (ja) | Romデバツガ | |
| JPS5842891B2 (ja) | メイレイセイギヨホウシキ | |
| JP2686801B2 (ja) | マイクロコンピュータのプログラム開発ツール | |
| JPS61210440A (ja) | レベルトレ−ス装置 | |
| JPH0772874B2 (ja) | 割込み受取り装置 |
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 (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100227 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110227 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130227 Year of fee payment: 16 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140227 Year of fee payment: 17 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |