ioctl インターフェイスを使用すると、さまざまな情報を取得できます。製品名、クラス、ベンダー名、サブシステム名などの追加情報を取得するにはどうすればよいですか?
1. lshw -C network
2. Linux がロードされたシステムでの NIC とポートの検出
プロセスを開始して結果を取得できますが、上記の情報を取得する生の c/c++ メソッドはありますか?
乾杯
プラシャント
ioctl インターフェイスを使用すると、さまざまな情報を取得できます。製品名、クラス、ベンダー名、サブシステム名などの追加情報を取得するにはどうすればよいですか?
1. lshw -C network
2. Linux がロードされたシステムでの NIC とポートの検出
プロセスを開始して結果を取得できますが、上記の情報を取得する生の c/c++ メソッドはありますか?
乾杯
プラシャント
あなたが求めるすべての情報は次の場所にあります/sys/bus/pci/devices/*/*
:
class
device
driver
modalias
subsystem
subsystem_device
subsystem_vendor
vendor
lspci(8)
を使用してファイルを読み取る方法を確認するとstrace -o /tmp/out lspci
、/tmp/out
多くの詳細が表示されます。(これをNICだけに制限する簡単な方法はわかりません。両方lspci(8)
とカーネルには、PCI ID->名前マッピングのハードコードされたリストがあると思います。)
sysfs または procfs を調べてください。残念ながら、この情報は変更される傾向があるため、信頼することはできません :(