使用基于Linux的系统上的c/C++获取以太网名称,类,描述供应商,子系统等
问题描述:
使用ioctl接口可以获取各种信息。您如何获得产品名称,类别,供应商名称,子系统名称等额外信息?使用基于Linux的系统上的c/C++获取以太网名称,类,描述供应商,子系统等
有几个命令行工具,可作为: 1. lshw -C network
2. detecting nic and ports on systems loaded with linux
可以启动一个过程,得到的结果却是没有任何的原始C/C++方法获取上述信息?
干杯
PRASHANT
答
所有你所寻求的信息是/sys/bus/pci/devices/*/*
:
class
device
driver
modalias
subsystem
subsystem_device
subsystem_vendor
vendor
你可以看到如何lspci(8)
读通过与strace -o /tmp/out lspci
文件,/tmp/out
将有大量的细节。 (我不知道有什么简单的方法来限制这只是网卡。我想PCI ID的两个lspci(8)
和内核已经硬编码的列表 - >名称映射)
答
看在sysfs或procfs,不幸的是这个信息有一个被改变的习惯,所以不能依靠:(