【发布时间】:2013-02-13 11:36:56
【问题描述】:
在使用 POSIX 消息队列时,我注意到在文件系统上创建了一些文件,这些文件的名称与我创建队列的名称相同。我的问题:
第一季度。消息队列是否在硬盘而不是 RAM 上排队消息?
第二季度。如果是这样,由于涉及硬盘,执行起来不应该很慢吗?
编辑:
我在The Linux Programming Interface 的书中读到了这个:
在 Linux 上,POSIX 消息队列被实现为虚拟中的 i 节点 文件系统、消息队列描述符和打开的消息队列 描述被实现为文件描述符和打开文件 分别描述。但是,这些是实现细节 SUSv3 不需要并且在其他一些 UNIX 上不适用 实现。
即使是VFS,也是存储在HardDisk上的吧?
考虑到这些信息,现在有人可以评论第二个问题吗? (和/或第一个如果还有更多要添加的内容)
【问题讨论】:
-
我认为它只是存储在 RAM 中,而不是存储在硬盘上。它类似于 RAM 磁盘,因此您可以“像”文件系统一样访问它,但它不存在于硬盘上。
标签: linux message-queue posix-api