C+- プログラミング 道具箱 一覧

トップページへ戻る


PCIDev95.exe、PCIDevNT.exe : PCIバス検索ツール

 

動作環境

PCIDev95.exeは、Windows95/98/98SE/ME用です。

PCIDevNT.exeは、Windows 2000,XP用です。こちらは、デバイスドライバも必要です。

コマンドシンタックス

PCIDEV95

PCIDEVNT

 

コマンドスイッチ

なし

 

解説

このコマンドを実行したパソコンのPCIバスを検索し、デバイスを検出します。見つかったデバイスは、PCIコンフィギュレーションレジスタの値とともにダイアログボックスに表示します。このプログラムは、1997年当時PCIのドキュメントを読んでいるときに、自分の理解を確認するために実際のPCIコンフィグレーションレジスタ値を見ようとして作ったものです。

このコマンドを実行すると以下のダイアログアプリケーションが起動します。

この状態ではバス番号=0、機能番号=0のデバイス番号=0〜31を検出して表示しています。バス番号、機能番号を変更した場合は「再建策」ボタンをクリックしてください。 バス番号は0〜255、機能番号は0〜7の範囲が有効です。

ここで、「番号」を選択(クリック)して、「詳細」ボタンをクリックするとそのデバイスの詳細情報のダイアログが表示されます。

ここで、番号13をクリックして、詳細情報を表示させると以下のようなプロパティシートが表示されます。

ここで、タブ「ベンダ情報」、「ベースアドレス」、「割込みなど」をクリックするとそれぞれの情報を見ることができます。

 

参考文献

インタフェース増刊 オープンデザイン No.7     PCIバスの詳細と応用へのステップ    CQ出版社

インタフェース 1997年3月号                    PCI/CompactPCIバスの概要と応用     CQ出版社

注意

今のところ問題は起きていませんが、PCIDev95はPCIコンフィギュレーションレジスタに直接アクセスしているので十分注意して使ってください。 コンピュータがハングしてしまうことがあるかもしれません。

 

ダウンロード

ダウンロードはこちら(V1.06)から。 ダウンロードしたファイルを解凍すると以下の構成になっています。

Release\

    bin\

        PCIDev95.exe               Windows 95/98/98SE/ME用

        PCIDevNT.exe               Windows 2000/XP用

    w2kdd\

        genport.inf

        genport.sys                WIndows 2000/XPのデバイスドライバ

        インストール(W2K).txt      Windows 2000へのgenport.sysのインストール手順

        インストール(XP).txt       Windows XPへのgenport.sysのインストール手順

2000とXPでは、デバイスドライバgenport.sysをインストールする必要があります。デバイスドライバのインストールはコントロールパネルの「ハードウェアの追加と削除」(2000)、「ハードウェアの追加ウィザード」(XP)からできます。

旧バージョン(V1.05)はこちらから。

 

考察

デバイスドライバgenport.sysは、Windows2000 DDKのサンプルgeneral\portio\genport.cにPCIバス情報読み取り関数を追加したものです。

PCIバス情報の読み取りにはカーネルサポートルーチンHalGetBusDataを使っています。この関数はWindows 2000 DDKドキュメントではすでにobsolete(時代遅れの, 旧式の)となっています。HalXxx形式の関数はすべてobsoleteとなっているので、このような形のハードウェアの抽象化はあまり有効ではなかったということでしょうか。 または、単にNTのドキュメントを見てくれといっているだけかもしれません。このHalXxx形式の関数以外に直接バスドライバを呼び出す方式もNT以降では用意されているようです。NT以降のドライバアーキテクチャは階層化ドライバの考え方が基本のようなので直接バスドライバを呼び出す方式を推奨しているとも読み取れます。

 

一覧へ戻る


当ホームページは、正当な引用を心がけているつもりですが、お気づきの点がありましたら作成者までご連絡をいただけるとありがたいです。また、内容の無断転載は困りますが、引用はかまいません。
編集後記へ
作成者情報
Copyright © 2002 [
佐々木芳]. All rights reserved.
更新日 : 2008/12/06.