mmap() を使用してプロセス間でメモリを共有したい。mmap() は、通常のファイルまたは POSIX 共有メモリ ファイル (shm_open) に適用できます。しかし、違いは何ですか?違いは、ディスクにアクセスするかどうかではありません。
- 頻繁にアクセスされ、最近アクセスされた通常のファイルは、ファイルシステムのキャッシュ/バッファーに存在するため、それらのコンテンツは既にメモリ内にあります。
- shm_open() で mmap() を使用する場合でも、システムが高いメモリ ストレス下にある場合、そのメモリ領域がスワップ アウトされることがあります。