使用C/C++处理sysfs内容的最佳方法是什么?

Linux内核使用/ sys中的sysfs文件系统公开有关当前环境的信息.我有兴趣获取有关在线CPU及其内存层次结构(1级到3级缓存)的信息.

由于所有这些信息基本上都是文本文件,我可以自己编写解析器,但我很好奇在sysfs中处理信息的最佳方法是什么.目前我发现了两种选择:

libsysfs

libudev

libsysfs的缺点似乎是代码现在差不多5年了,几乎没有可用的文档,libudev似乎更活跃,但文档很少见.我在libudev-http://www.signal11.us/oss/udev/上找到了一个有用的教程

在C/C++中处理sysfs内容的最新方法是什么?

[更新]

目前,由于暴露的信息不是真实设备,因此无法访问存储在/ sys / devices / system中的数据.访问此数据的唯一方法是手动执行此操作.

最佳答案
内核作者已经发布了sysfs-rules.txt,它解释了如何使用sysfs.他们特别指出

Do not use libsysfs

转载注明原文:使用C/C++处理sysfs内容的最佳方法是什么? - 代码日志