shared-memory

    2

    1答えて

    共有メモリのブロックを使用して互いに通信する2つのプログラムがあります。 最初のプログラムはコマンドラインから引数をとり、指定された回数だけforkし、各子のプロセスIDとランダムに生成された数値が2番目のプログラムに渡されるはずの2次元配列に格納されます添付のメモリブロックを介して。問題はどのようにこれを行うにはわからないと私はこれになると少し初心者ですので、いくつかの助けを感謝します。ここで

    1

    1答えて

    メモリマップされたファイルがどのように動作するかを誰かが理解できるようになることを本当に願っています。私はオンラインで多くの研究をしてきましたが、時には助けを求めるのが簡単です。 私は実行しているサーバー上にドキュメント作成システムを作成しています。クライアントプログラム(それ自体がファイルを要求する実際のクライアントへのサービス)に要求に応じてテンプレートファイルを提供するサービスを作成したいと

    0

    2答えて

    PHPでshmop_openに相当するRubyで共有メモリブロックを開く方法はありますか? 私は1つのプロセスで定期的にメモリブロックを更新しています。 My Railsアプリはこれらのデータを読み込む必要があります。

    0

    1答えて

    私はboost :: interprocess :: managed_shared_memoryを使用してメモリ内に共有ベクトルを作成しています。共有メモリが正常に作成されました。ベクターを読むと見つかりました。コメント1にベクトル内のすべての要素を表示しますが、ベクトルg/grの初期化の範囲、つまりメイン関数を終了すると、ベクトルコンテンツにはもうアクセスできません。同じ、なぜ?誰でも答えられる

    3

    1答えて

    私は答えがノーだと思います。 (なぜhereのコメントの理由についての仮説を見てください)しかし、パイプ/キュー/マネージャを使用してプロセスを分岐させた後に、プロセス間で新しい共有(生の)配列を構築できるのは本当にうれしいでしょう。セットアップ。私はOSに精通していません。これまで起きていることの見込みはありますか? 本当の共有配列と同じ読み書き速度を提供する賢明な回避策(おそらくmemmap?

    0

    2答えて

    公式ガイドのshared memory exampleを参照してthis questionに続いて、私はちょうど私が を作ったこの悪い描かれた画像のようである熱方程式の行列を構築しようとしていますここで は、最小限の例では、コードは大きなN(32より大きい)を合わせて配置されている #define N 32 #define BLOCK_SIZE 16 #define NUM_BLOCKS ((

    1

    1答えて

    私の共有メモリカーネル設定のshmmniパラメータを変更したいのですが、書き込みしようとすると「操作できません許可された "。 sysctl -w kern.sysv.shmmni=2048 出力:これはどのような方法で kern.sysv.shmmni: 64 sysctl: kern.sysv.shmmni=2048: Operation not permitted を回避することが

    0

    1答えて

    プロセスの共有メモリブロックが存在する場所.Stackセグメントヒープセグメントまたはその他

    -2

    1答えて

    共有メモリとfork()親プロセスと子プロセスで階乗を計算したいと思っています。私の問題は子プロセスが機能していないようですが、親から数値を渡したい子に、そして、子が階乗の結果を親に渡した後。しかし結果は私が与えた数と同じです。 変数を各プロセスに渡すためにsnprintf()またはspritnf()またはitoa()とatoi()を使用するように求められました。 私は次のように達し: #incl

    1

    1答えて

    #include<sys/shm.h> #include<sys/stat.h> #include<stdio.h> int main(void) { int segment_id; char *shared_memory; const int size=4069; segment_id=shmget(IPC_PRIVATE,size,S_IRUSR|S_IWUSR); prin