是否有相当于设置的Linux功能
Is there a Linux equivalent of SetupDiGetClassDevs function
我已经写了一个C 程序,用于使用HDEVINFO对象和SetupDigetClassDevs函数在Windows中搜索PCI设备。
这些功能是否有Linux当量?我将使用Kubuntu,因此KDE特定和/或Ubuntu特异性解决方案很好。一个示例代码将得到更加感谢; - )
谢谢
您几乎可以通过迭代/sys/devices/pci*目录获得有关连接的PCI设备的任何信息。
例如,
cat /sys/devices/pci0000:00/0000:00:00.0/subsystem_vendor
将返回该设备的供应商ID。
总的来说,我建议您查看/proc和/sys文件系统的内容,这几乎是您可以在用户空间中使用的所有内容。对于一些更有趣的东西,请考虑编写内核模块(这不是这样的问题,我建议阅读最新版本的Linux设备驱动程序)。
upd1:是的,这并不是一个函数,正如某人肯定会指出的那样,但是阅读和编写这些文件似乎并不困难,与Windows相比,这是一种不同的方法。
upd2:对于内核模块方法,我建议您搜索有关pci_register_driver
功能的信息,以及随之而来的所有信息。
upd3:更重要的是,对于用户空间,通常有一种直接与PCI设备资源合作的方法 - 只需打开/sys/devices/pci0000:00/0000:00:00.0/resourceX
,其中x是相应的bar的数量。只要您知道正确的偏移量,这些文件就可以按照您的意愿进行读取和编写。
相关文章:
- 这里在 Linux 中具有"CreatePipe"和"CreateProcessW"功能吗?
- 在 Linux 中使用 ioctl() 获取隐藏功能报告时,零字节消失
- 如何使用 C/C++ 和 system() 系统调用以外的其他方法在 Linux 中获取文件功能?
- Linux 源代码中普通磁盘文件的"轮询"功能在哪里实现?
- 二叉搜索树 - 使用 Linux 在虚拟机中制作删除功能
- Linux 蓝牙 API 功能位置
- 无法从Linux,C ++执行"my_script" python脚本"main(filename)"功能;pModule = PyImport_Import(pName);返回空值
- 将Linux打开,读,写,关闭功能以在Windows上工作
- C Linux代码破坏Windows构建,因为缺少标头意味着功能不确定
- 是否有相当于设置的Linux功能
- 检查Linux功能以设置线程优先级
- 如何通过makefile添加CAP_NET_RAW功能到Linux上的C 可执行文件
- 在Linux上构建具有链接时代码生成功能的静态库的正确方法是什么
- 在Linux Mint上编译Qt-OpenGL功能测试失败
- 当功能返回时,Linux C 系统()调用崩溃
- Clang-Linux:报告CFI错误而不会崩溃.ftrap功能和-O2
- 在Linux Makefile中对功能的未定义引用
- 挂钩在Linux上通过.def文件上的功能
- 使用 C/C++ 获取正在运行的 PID 的完整路径,而无需使用系统功能 (Linux)
- 使用linux功能读取块的不连续运行