JP2001290673A - デバッグ方法およびシステム - Google Patents

デバッグ方法およびシステム

Info

Publication number
JP2001290673A
JP2001290673A JP2000104711A JP2000104711A JP2001290673A JP 2001290673 A JP2001290673 A JP 2001290673A JP 2000104711 A JP2000104711 A JP 2000104711A JP 2000104711 A JP2000104711 A JP 2000104711A JP 2001290673 A JP2001290673 A JP 2001290673A
Authority
JP
Japan
Prior art keywords
synchronization
debugging
processing
device driver
unit
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
JP2000104711A
Other languages
English (en)
Inventor
Hirosuke Kanemitsu
弘介 金光
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 Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2000104711A priority Critical patent/JP2001290673A/ja
Publication of JP2001290673A publication Critical patent/JP2001290673A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 アプリケーションプログラムの動作に関わら
ずデバイスドライバの初期化処理のデバッグを行うこと
ができると共に、デバッグを効率的に行うことができる
デバッグ方法およびシステムを提供する。 【解決手段】 デバイス及びデバイスドライバを有する
ターゲットのデバッグを行うデバッグ方法において、デ
バイス12とデバイスドライバ11に閉じたデバッグ機
能を持たせ、アプリケーションプログラム等を使わずに
デバッグする。デバイスドライバ11は、デバイス12
にデバッグ情報を出力させるための処理を行う情報表示
処理部13と、デバイス12との同期処理を行う同期処
理部14を有し、デバイス12は、デバッグ情報を表示
する情報出力部15と、デバイスドライバ11との同期
処理を行う処理同期部16を有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、デバッグ方法お
よびシステムに関し、特に、情報処理装置のデバイスド
ライバの開発におけるデバッグ方法およびシステムに関
する。
【0002】
【従来の技術】図5は、従来の情報処理装置のデバッグ
システムの例を示すブロック図である。図5に示すよう
に、デバッグシステム1は、デバッグが行われる情報処
理装置であるターゲット2と、ターゲット2に接続され
ターゲット2のデバッグを行うための機能を持つデバッ
グ装置3とからなる。
【0003】ターゲット2は、デバイス4と、デバイス
ドライバ5と、アプリケーションプログラム6とを有
し、デバイス4は、ターゲット2上で動作しデバッグの
対象となるデバイスドライバ5により制御され、アプリ
ケーションプログラム6は、ターゲット2上で開発者の
操作によりデバイスドライバ5と通信を行う。
【0004】ここで、デバイスドライバ5とデバイス4
は、特別なデバッグ機能を持たないことから、情報を取
得しながらデバイスドライバ5に対し逐次的な実行をす
る場合、ターゲット2に接続されたデバッグ装置3を経
由して、開発者がブレークポイントの設定やデバイス情
報の表示等を行う。
【0005】また、動作中のターゲット2上で、アプリ
ケーションプログラム6からデバイスドライバ5へ通信
し、開発者がブレークポイントの設定やデバイス情報を
表示することで、デバッグを行う。
【0006】
【発明が解決しようとする課題】しかしながら、上述し
たデバッグシステム1において、アプリケーションプロ
グラム6からは、デバイスドライバ5の初期化処理のデ
バッグを行うことができなかった。即ち、デバイスドラ
イバ5の初期化処理が行われるのは、ターゲット2の初
期化処理中であり、アプリケーションプログラム6は動
作できないからである。
【0007】また、一般的に、デバッグ装置3は特殊な
装置であり高価なことから、常時必要な台数を用意でき
るとは限らず、デバッグを効率的に行うことが容易では
なかった。
【0008】この発明の目的は、アプリケーションプロ
グラムの動作に関わらずデバイスドライバの初期化処理
のデバッグを行うことができると共に、デバッグを効率
的に行うことができるデバッグ方法およびシステムを提
供することである。
【0009】
【課題を解決するための手段】上記目的を達成するた
め、この発明に係るデバッグ方法は、デバイス及びデバ
イスドライバを有するターゲットのデバッグを行うデバ
ッグ方法において、前記デバイスと前記デバイスドライ
バに閉じたデバッグ機能を持たせ、アプリケーションプ
ログラム等を使わずにデバッグすることを特徴としてい
る。
【0010】上記構成を有することにより、デバイス及
びデバイスドライバを有するターゲットにおいて、デバ
イスとデバイスドライバに閉じたデバッグ機能を持た
せ、アプリケーションプログラム等を使わずにデバッグ
する。これにより、アプリケーションプログラムの動作
に関わらずデバイスドライバの初期化処理のデバッグを
行うことができると共に、デバッグを効率的に行うこと
ができる。
【0011】また、この発明に係るデバッグシステムに
より、上記デバッグ方法を実現することができる。
【0012】
【発明の実施の形態】以下、この発明の実施の形態につ
いて図面を参照して説明する。
【0013】図1は、この発明の一実施の形態に係るデ
バッグシステムのブロック図である。図1に示すよう
に、デバッグシステム10は、デバッグの対象となるデ
バイスドライバ11と、このデバイスドライバ11によ
り制御されるデバイス12からなる。
【0014】デバイスドライバ11は、情報表示処理部
13と同期処理部14を有し、デバイス12は、情報出
力部15と処理同期部16を有する。情報表示処理部1
3は、デバイス12にデバッグ用の情報を出力させるた
めの処理を行い、同期処理部14は、デバイス12との
同期処理を行う。情報出力部15は、デバッグ情報を表
示し、処理同期部16は、人手操作可能であり、デバイ
スドライバ11との同期処理を行う。
【0015】デバイスドライバ11は、開発者がデバイ
ス12の中の処理同期部16を操作するまで、情報出力
部15にデバッグ情報を表示したまま同期処理部14中
で停止している。開発者が、表示されたデバッグ情報を
確認した後に処理同期部16を操作すると、処理同期部
16を監視していた同期処理部14はそれを認識し、デ
バイスドライバ11は処理を再開する。
【0016】これを繰り返すことで、デバッガの起動等
のオペレーティングシステムを操作することなく、デバ
イスドライバ11の動作情報の表示を行うと共にデバイ
スドライバ11の逐次的な実行を可能にする。即ち、デ
バイスドライバ11のデバッグを可能とする。
【0017】図2は、図1のデバッグシステムの具体的
構成例を示すブロック図である。図2に示すように、デ
バイスドライバ11は、情報表示処理部13、同期処理
部14及びデバイス制御部17を有し、デバイス12
は、情報出力部15、処理同期部16、手動入力装置1
8及びレジスタ19を有する。
【0018】情報表示処理部13は、デバイス12にデ
バッグ用の情報を出力させるための処理を行い、同期処
理部14は、デバイス12との同期処理を行い、デバイ
ス制御部17は、デバイス12のレジスタアクセス等の
制御を行う。
【0019】この情報表示処理部13は、デバイスドラ
イバ11の指示により、デバイス12の情報出力部15
にデバッグ情報を出力する。同期処理部14は、デバイ
スドライバ11の指示により、デバイス12の処理同期
部16にアクセスし、処理の同期を行う。デバイス制御
部17は、デバイスドライバ11の指示により、デバイ
ス12のレジスタ19等にアクセスし、デバイス12の
制御を行う。
【0020】情報出力部15は、情報表示処理部13か
ら表示要求された情報を表示出力し、処理同期部16
は、デバイスドライバ11との同期を行う。手動入力装
置18は、人手で処理同期部16の操作を行い、レジス
タ19は、デバイス12の動作を制御する。
【0021】この情報出力部15は、情報表示処理部1
3から表示要求された情報を視覚的に表示し、処理同期
部16は、同期処理部14と手動入力装置18からアク
セス可能な同期用のフラグを持っている。手動入力装置
18は、デバイスドライバ11の開発者が、処理同期部
16にアクセスするための操作を手動で行うことが可能
な入力装置であり、例えばトグルスイッチやロータリー
スイッチである。レジスタ19は、このデバイス12の
動作を決定するものであり、デバイス制御部17により
アクセスされる。
【0022】図3は、図2のデバイスデバッグシステム
の具体例の動作を説明するフローチャートである。図3
に示すように、先ず、デバイスドライバ11は、デバイ
ス12に対してデバイス12の制御を行う前に、情報表
示処理部10により、デバイス12の情報出力部15に
デバッグ情報を出力する(ステップS101)。これに
より、デバッグ情報が表示され視覚的に認識することが
できる。
【0023】次に、デバイスドライバ11は、同期処理
部14により、デバイス12の処理同期部16に同期要
求を発する(ステップS102)。同期要求を発した
後、同期が成功したか否かを判断し(ステップS10
3)、成功しない(No)場合は判断を繰り返す。即
ち、同期要求を発した同期処理部14は、同期が成功す
るまでループし続ける。
【0024】ステップS103で、同期が成功した場合
(Yes)、つまり、ループし続けている間に、デバイ
スドライバ11の開発者から手動入力装置18を介して
入力が行われると、デバイスドライバ11は、デバイス
制御部17によりデバイス12の制御を行う(ステップ
S104)。
【0025】以後、開発者は、デバッグの必要に応じ
て、ステップS101からステップS104を繰り返
す。
【0026】図4は、図3の動作をより詳細に説明する
フローチャートである。図4に示すのは、デバイスドラ
イバ11が、デバイス制御部17を用いてデバイス12
のレジスタ19にアクセスする場合であり、レジスタ1
9の番号はアクセスする順に1,2とする。
【0027】先ず、デバイスドライバ11は、最初にア
クセスするレジスタ19の番号“1”を、情報表示処理
部13により情報出力部15に表示し(ステップS20
1)、その後、同期処理部14により同期要求を発する
(ステップS202)。
【0028】次に、同期成功か否かを判断し(ステップ
S203)、成功しない(No)場合は判断を繰り返
す。即ち、デバイスドライバ11は、同期成功待ちのル
ープに入り、開発者から同期入力が行われるまでループ
し続ける。
【0029】この状態では、次にアクセスするレジスタ
19の番号が情報出力部15に表示されており、開発者
は、次にデバイスドライバ11が行う動作を確認するこ
とができる。
【0030】開発者は、表示されたデバッグ情報を確認
した後、手動入力装置18を用いて処理同期部16を操
作し、同期入力によりデバイスドライバ11との同期を
行う。開発者がこの操作を行うことにより、ループして
いたデバイスドライバ11は同期に成功し、レジスタ番
号“1”にアクセスする(ステップS204)。
【0031】続けて、番号“2”のレジスタ19にアク
セスするため、デバイスドライバ11は、レジスタ19
の番号“2”を、情報表示処理部13により情報出力部
15に表示する(ステップS205)。
【0032】その後、同期要求を発し(ステップS20
6)、同期成功か否かが判断され(ステップS20
7)、開発者から同期入力が行われることにより、レジ
スタ番号“2”にアクセスする(ステップS208)と
いう、レジスタ番号“1”にアクセスする場合と同様の
シーケンスを繰り返す。
【0033】従って、開発者は、情報出力部15の表示
を見ながら手動入力装置18を操作することにより、デ
バイスドライバ11の動作を確認しつつデバッグを行う
ことが可能になる。
【0034】このように、この発明によれば、情報処理
装置のデバイスドライバ11の開発において、通常はデ
バッグが困難なオペレーティングシステムの立ち上げ途
中のデバッグを、容易に行うことができる。
【0035】この結果、オペレーティングシステムの起
動が完了する前でもデバッグを行うことができる。これ
は、デバイスドライバ11とデバイス12に閉じたデバ
ッグ機能を持たせることにより、アプリケーションプロ
グラム等を使わずにデバッグすることが可能になるから
である。
【0036】また、アナライザ等の特別な装置やカーネ
ルデバッガ等のソフトウェアを使用せずにデバッグを行
うことができる。これは、デバイス12がデバッグ機能
を持っているからである。
【0037】
【発明の効果】以上説明したように、この発明によれ
ば、デバイス及びデバイスドライバを有するターゲット
において、デバイスとデバイスドライバに閉じたデバッ
グ機能を持たせ、アプリケーションプログラム等を使わ
ずにデバッグするので、アプリケーションプログラムの
動作に関わらずデバイスドライバの初期化処理のデバッ
グを行うことができると共に、デバッグを効率的に行う
ことができる。
【0038】また、この発明に係るデバッグシステムに
より、上記デバッグ方法を実現することができる。
【図面の簡単な説明】
【図1】この発明の一実施の形態に係るデバッグシステ
ムのブロック図である。
【図2】図1のデバッグシステムの具体的構成例を示す
ブロック図である。
【図3】図2のデバイスデバッグシステムの具体例の動
作を説明するフローチャートである。
【図4】図3の動作をより詳細に説明するフローチャー
トである。
【図5】従来の情報処理装置のデバッグシステムの例を
示すブロック図である。
【符号の説明】
10 デバッグシステム 11 デバイスドライバ 12 デバイス 13 情報表示処理部 14 同期処理部 15 情報出力部 16 処理同期部 17 デバイス制御部 18 手動入力装置 19 レジスタ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】デバイス及びデバイスドライバを有するタ
    ーゲットのデバッグを行うデバッグ方法において、 前記デバイスと前記デバイスドライバに閉じたデバッグ
    機能を持たせ、アプリケーションプログラム等を使わず
    にデバッグすることを特徴とするデバッグ方法。
  2. 【請求項2】前記デバイスにデバッグ情報を出力し、前
    記デバッグ情報が表示される処理と、 前記デバイスに同期要求が発せられ、同期が成功した場
    合、前記デバイスドライバが前記デバイスの制御を行う
    処理とを有することを特徴とする請求項1に記載のデバ
    ッグ方法。
  3. 【請求項3】同期が成功しない場合、同期入力操作によ
    り同期が成功するまでループし続けることを特徴とする
    請求項2に記載のデバッグ方法。
  4. 【請求項4】前記デバイスドライバは、デバッグ情報を
    表示したまま停止し、表示されたデバッグ情報を確認し
    た後に同期入力操作を行うことにより、処理を再開し、
    これが繰り返されることを特徴とする請求項2または3
    に記載のデバッグ方法。
  5. 【請求項5】前記デバイスに同期要求が発せられて同期
    成功か否かを判断する際に、次のアクセス対象の番号が
    表示され、次に前記デバイスドライバが行う動作を確認
    することができることを特徴とする請求項2から4のい
    ずれかに記載のデバッグ方法。
  6. 【請求項6】デバイス及びデバイスドライバを有するタ
    ーゲットのデバッグを行うデバッグシステムにおいて、 前記デバイスドライバは、前記デバイスにデバッグ情報
    を出力させるための処理を行う情報表示処理部と、前記
    デバイスとの同期処理を行う同期処理部を有し、 前記デバイスは、前記デバッグ情報を表示する情報出力
    部と、前記デバイスドライバとの同期処理を行う処理同
    期部を有することを特徴とするデバッグシステム。
  7. 【請求項7】前記デバイスドライバは、前記処理同期部
    が操作されるまで、デバッグ情報を表示したまま処理を
    停止し、前記同期処理部が、前記処理同期部の操作によ
    り表示されたデバッグ情報を認識することにより、処理
    を再開することを特徴とする請求項6に記載のデバッグ
    システム。
  8. 【請求項8】前記デバイスドライバは、前記デバイスに
    アクセスし前記デバイスの制御を行うデバイス制御部を
    有し、 前記デバイスは、前記処理同期部にアクセスするための
    操作を手動で行うことが可能な手動入力装置と、前記デ
    バイス制御部によりアクセスされ前記デバイスの動作を
    決定するレジスタとを有することを特徴とする請求項6
    または7に記載のデバッグシステム。
JP2000104711A 2000-04-06 2000-04-06 デバッグ方法およびシステム Pending JP2001290673A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000104711A JP2001290673A (ja) 2000-04-06 2000-04-06 デバッグ方法およびシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000104711A JP2001290673A (ja) 2000-04-06 2000-04-06 デバッグ方法およびシステム

Publications (1)

Publication Number Publication Date
JP2001290673A true JP2001290673A (ja) 2001-10-19

Family

ID=18618207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000104711A Pending JP2001290673A (ja) 2000-04-06 2000-04-06 デバッグ方法およびシステム

Country Status (1)

Country Link
JP (1) JP2001290673A (ja)

Similar Documents

Publication Publication Date Title
US5630049A (en) Method and apparatus for testing software on a computer network
JP2513417B2 (ja) 情報処理装置
JP2001290673A (ja) デバッグ方法およびシステム
JP2007004516A (ja) 組込みシステムのプログラムデバッグ方法
JP4562439B2 (ja) プログラム検証システムおよびプログラム検証システム制御用コンピュータプログラム
JP2004252585A (ja) プログラム検証システム
JPH09259004A (ja) デバッグ方法
JP2006293515A (ja) Osエミュレータ時間経過制御装置
JPS5968034A (ja) マイクロコンピユ−タ開発装置用入出力ポ−トシミユレ−タ
JP3559439B2 (ja) プラント監視制御装置及びプラント監視制御方法
CN118069382A (zh) 一种嵌入式余度计算机软件同步调试系统和方法
JPH0756729A (ja) プログラムデバッグシステム
JPH04243431A (ja) 障害処理機能の評価方式
JPH10269104A (ja) 並列システムテスト方法
JPH05204698A (ja) デバッガ処理方式
JPH10154084A (ja) 命令シミュレーション方法および命令シミュレーションシステム
JP2006350676A (ja) 組込みシステムのプログラムデバッグ方法
JPS59106054A (ja) 情報処理システム
JP2000298599A (ja) 交換ソフトウェアの自動試験システム
JP2004046716A (ja) デバッグ装置
KR20040073127A (ko) 프로토타이핑 보드의 클럭 동기화 장치 및 방법
JPH04369044A (ja) コンピュータ用テスト装置
JPH01147641A (ja) デバッグ装置
JPH03102540A (ja) シミュレータにおけるデバッグ方式
JPS6242254A (ja) チヤネルイニシヤライズ方式