2012-02-24 9 views
0

私のプロジェクト要件の場合Reg Shared Memory Design

以下のシナリオでは、Inter Processsのコミュニケーションを設計する際に助けが必要です。

IPCを使用して1つの宛先プロセスと通信したい4つのソースプロセスがあります。

私はこの目的のためのメカニズムとして共有メモリを選択しました。

のような設計上の問題で終わる1)各プロセスに4つの共有メモリを使用する必要がありますか?または私は単一のメモリを使用する必要がありますか?

2)私は4つのメモリを使用する場合、私は4つの同期オブジェクトを別々にソースと宛先プロセスを同期するために行く必要があります。将来的には、もう一つのプロセスが来て、私はそれをやりたいと思っていないdestimationプロセスのソースコードを編集しています。

3)宛先がマルチスレッドである必要がありますか?私はより多くのソース・プロセスを使用していますbecoz ..

その中で私を導いてください...

答えて

0

1は、i)は、各プロセスのために4共有メモリを使用する必要がありますでしょうか?または私は単一のメモリを使用する必要がありますか?

必須ではありません。共有メモリセグメントを1つ作成し、アクセスするすべてのプロセスにアタッチします。私は4つのメモリを使用する場合、私は4同期のために行く必要が

2).....

おそらくあなたは、共有メモリセグメントへのアクセスを同期するためにセマフォを使用することができます。

3)宛先がマルチスレッドである必要がありますか? becoz私はより多くのソースプロセスを使用しています..

に依存します。マルチスレッド環境を使用する場合、共有メモリセグメントを必要としないかもしれませんが、共有データ[すなわち:ヒープ]を使用することができます。

希望する!