|
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)から。 ダウンロードしたファイルを解凍すると以下の構成になっています。
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以降のドライバアーキテクチャは階層化ドライバの考え方が基本のようなので直接バスドライバを呼び出す方式を推奨しているとも読み取れます。
|
当ホームページは、正当な引用を心がけているつもりですが、お気づきの点がありましたら作成者までご連絡をいただけるとありがたいです。また、内容の無断転載は困りますが、引用はかまいません。
|