68user's page 掲示板

Prev< No. 1782> Next  [最新発言に戻る] [過去ログ一覧]
No. 1782 # Tel 2001/03/05 (月) 16:05:53
はじめまして。Telと申します。
以前、こちらで共有メモリについて少し触れられていたようなので、質問をしてみようと思いました。

現在、共有メモリ上にフラグの役割をもつ変数を用意し、複数のプロセス間でそのフラグを参照し、フラグの状態によって処理の分岐をするというプログラムを書いています。
そこでわからない点が出てきました。

共有メモリに変数を用意する方法の記述についてはサンプル等を見て作成することができると考えています。
しかし、それを参照する各プロセス側での記述方法について、サンプルが少なくよくわからないのです。
たとえば
int flag;
char data[datalength];
という2つの変数が共有メモリにある場合、flagの内容によってdataに書き込む内容を分けるという処理は具体的には、どう記述すれば良いのでしょうか。

プログラムAは
flag==1 ならば"good morning."
flag==2 ならば"good afternoon."
flag==3 ならば"good evening."
をdataに書き込む。
プログラムBは
flag==1 ならば"beakfast."
flag==2 ならば"lunch."
flag==3 ならば"dinner."
をdataに書き込む。
上記のような場合、AとBそれぞれではどう宣言してからflagやdataを使うのでしょうか。

勉強不足からくる質問だと思いますがUNIXの知識がない為なのか、書籍の選びかたが悪い為なのか、難しくて具体的な記述方法がわからないためにこちらにきてみました。
どうかご指導願います。よろしくおねがいします。

Prev< No. 1782> Next  [最新発言に戻る] [過去ログ一覧]