Linux c:apis vs / proc文件?

我在一个应用程序上收集和发送各种系统信息(分区空间/免费,笔记本电脑电池信息等).我没有太多的成功获取这种信息的形式直接c api ..虽然它的所有可用通过/ proc(或类似)中的文件.

所以 – 我想知道在我的c应用程序中是否阅读/解析这些文件获取此信息的适当方式,还是应该继续尝试发现API? (注意:我正在使用statvfs).

到目前为止,它似乎更容易在Win32中收集这种信息.似乎很奇怪

解决方法

到目前为止,最好的做法是遵循以下优先顺序的API.

>您的语言API(在这里没有太多的帮助,但是对于字符串来说,C99字符串函数比使用Posix或其他OS标准指定的库字符串设施更好).
> Posix操作软件API
记录内核API
>未记录的内核API(至少这些将会破坏ioctl用户,如果他们改变,所以他们可能不会改变)
> / proc
> / dev / kmem,/ dev / mem

没有理由相信/ proc trolling将从发布到发布的可移植性甚至相同.不是每个系统都会有一个/ proc安装!

说完所有这一切,只需要从/ proc中删除东西就更容易了,如果它是唯一可用的接口,那么你应该继续使用it.qa

最后,最后两个的排序并不完全清楚,因为/ proc不能用于验证内核崩溃转储分析,但可以在核心转储中窥探的工具仍然可以工作.

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...