gpt4 book ai didi

c++ - Linux C++ : apis vs/proc files?

转载 作者:IT王子 更新时间:2023-10-29 00:07:03 25 4
gpt4 key购买 nike

我正在开发一个应用程序来收集和发送各种系统信息(分区空间/可用空间、笔记本电脑电池信息等)。我以直接 C++ API 的形式获取这些信息并没有取得多大成功。尽管它都可以通过/proc(或类似)中的文件获得。

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

到目前为止,在 Win32 中收集此类信息似乎更容易。看起来很奇怪。

最佳答案

到目前为止最好的做法是按照以下优先顺序坚持使用 API。

  • 您的语言 API(在这里对您没有太大帮助,但对于字符串来说,C99 字符串函数比 Posix 或其他操作系统标准指定的库字符串工具更好用。)

  • Posix 操作软件 API

  • 文档化的内核 API

  • 未记录的内核 API(至少这些会破坏,比方说,如果 ioctl 用户更改,因此它们可能不会更改)

  • /proc

  • /dev/kmem, /dev/mem

没有理由相信 /proc trolling 将是可移植的,甚至从一个版本到另一个版本都是一样的。甚至不是每个系统都会挂载 /proc!

话虽如此,从 /proc 中删除内容要容易得多,如果它是唯一可用的接口(interface),那么您应该继续使用它。qa

最后,最后两个的顺序并不完全清楚,因为 /proc 不可用于事后内核崩溃转储分析,但可以查看核心转储的工具仍然有效。

关于c++ - Linux C++ : apis vs/proc files?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4650998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com