0

在 Linux 中,我希望我的用户空间程序使用类似于 /proc/meminfo 的方法提供有关其内部计数器的信息:用户只需读取文件即可获取信息。

我正在考虑使用常规文件 /tmp/my_counters (/tmp 在易失性内存中)。但这可能会导致某些情况下,文件的读取可能会导致部分内容(如果程序没有同时完成写入)。

还有其他好的方法吗?

谢谢你。

4

1 回答 1

0

我通过实现一个简单的 libfuse 文件系统来做到这一点。当文件句柄打开时,计数器被原子读取到 fs 实现内的缓冲区中 - 然后客户端的 read 系统调用从该内存缓冲区中读取。这避免了您描述的同步问题,因为计数器的图像是在文件打开时拍摄的。

http://fuse.sourceforge.net/

于 2012-06-08T06:50:11.627 回答