$ ipcs
したがって、このセクションを実行するとshared memory segment
さまざまな結果が返されます。
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 524288 jvn 600 524288 2 dest
0x00000000 1048577 jvn 600 524288 2 dest
0x00000000 1769474 jvn 600 393216 2 dest
0x00000000 753667 jvn 600 524288 2 dest
0x00000000 1146884 jvn 600 16777216 2
この0x00000000
値はすべてのIPCオブジェクトに存在しますが、なぜ変わらないのですか?どういう意味ですか?
より多くの背景情報を提供するために、TLDP状態:
一意のIDを取得するにはキーを使用する必要があります。キーは、クライアントとサーバープロセスの両方で同意する必要があります。これは、アプリケーション用のクライアント/サーバーフレームワークを構築する最初のステップです。
電話で誰かに電話をかけるときは、その人の番号を知る必要があります。また、電話会社は発信電話を最終宛先に転送する方法を知る必要があります。相手が電話を受けて応答すると、接続が確立されます。
System V IPC 施設では、
telephone'' correllates directly with the type of object being used. The
電話会社またはルーティング方法が IPC キーに直接接続できます。キー値をアプリケーションにハードコードすると、キーは毎回同じ値になる可能性があります。欠点は、キーがすでに使用されている可能性があることです。通常、ftok()関数はクライアントとサーバーのキー値を生成するために使用されます。
答え1
答えは、Linux Foundation Certified System Administratorsのオンラインコースコンテンツを通して見つけました。
現在実行中のほぼすべての共有メモリセグメントにはキー(IPC_PRIVATEとも呼ばれます)があります。
0
これは、0x00000000
親/子関係のあるプロセス間でのみ共有されることを意味します。