6

POSIXメッセージキューを使用しているときに、キューを作成していた名前でファイルシステム上にいくつかのファイルが作成されていることに気付きました。私の質問:

Q1。メッセージキューは、RAMではなくハードディスク上のメッセージをキューに入れますか?

Q2。もしそうなら、これはハードディスクを含むので、実装が非常に遅いのではないでしょうか?


編集:

私はこれを本TheLinuxProgramming Interfaceで読んだ:

Linuxでは、POSIXメッセージキューは仮想ファイルシステムのiノードとして実装され、メッセージキュー記述子とオープンメッセージキューの説明は、それぞれファイル記述子とオープンファイルの説明として実装されます。ただし、これらはSUSv3で必要とされない実装の詳細であり、他の一部のUNIX実装には当てはまりません。

VFSであっても、ハードディスクに保存されますよね?

この情報を念頭に置いて、誰かが2番目の質問に今コメントできますか?(および/または追加するものがある場合は最初のものも)

4

1 に答える 1

6

以下のリンクは、最初の質問を明確にする可能性があります http://man7.org/linux/man-pages/man7/mq_overview.7.html

2番目の質問に関しては、もちろん、ファイルベースのキューはメモリベースのキューよりも遅くなります。ただし、これはキューイング専用に最適化および実装されているため、一部のランダムファイルアクセス操作ほど遅くない場合があります。

于 2013-11-29T08:48:11.327 に答える