2 つのプロセス間でメモリを共有したい。私が知っている 1 つの方法はmmap
、共有ファイルを使用することです。ただし、共有ファイルを使用したくありません。メモリ内に匿名のマッピングが必要です。どうやってやるの。
質問する
3890 次
5 に答える
3
shm_openはあなたの友達です。shm_unlinkを使用して、共有領域のマップを解除できます。
于 2012-07-20T16:25:36.520 に答える
3
共有メモリはあなたが望むものです:http://en.wikipedia.org/wiki/Shared_memory
Linuxを使用しているので、ここに移動します:http ://www.kernel.org/doc/man-pages/online/pages/man7/shm_overview.7.html
于 2012-07-20T16:21:58.933 に答える
2
mmap されたファイルは、ほとんどの Linux システムで tmpfs (つまり、メモリーベースのファイルシステム) としてマウントされているディレクトリ /dev/shm に置くことができます。
または、独自の tmpfs をディレクトリ ツリーの別の場所にマウントすることもできます (他のオプションが必要な場合)。
于 2012-07-20T16:24:22.847 に答える
0
NUMA システムでは、コアが別々のノードにある場合、コアから等距離にある NUMA ノードを選択しない限り、異なる速度でメモリにアクセスすることに注意してください。
于 2012-07-20T16:43:11.243 に答える