トップページ⇒tech
34コメント8KB

UNIXのC言語に詳しい方教えてください。

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
UNIXのC言語で分からない所が有るのですが、どなたか詳しい方教えてください。
質問は、
・セマフォの生成方法。
・シグナルの送受信方法。
・バッファをアロック?エムアロック?での獲得方法。
以上の3つを出来ればソース付きで、教えてください。
この話だけでは、分からない場合は私が自分で分かる範囲の状況説明をいたします
宜しくお願いします。
0002名無しさん@お腹いっぱい。NGNG
>>1
そんなもん、ネットで検索すりゃ出てくるだろうが
0003>>1NGNG
ところで、お幾つなのですか?
0004>>1NGNG
ところで、家族構成は一人っ子 or 末っ子だと推察しましたが
あってますか?
0005名無しさん@お腹いっぱい。NGNG
http://www.ncad.co.jp/~komata/c-frame.htm
0006名無しさん@お腹いっぱい。NGNG
皆様、ご協力有難うございます。
まだ苦戦中なので、お手数ですが引き続きお願いします。

>そんなもん、ネットで検索すりゃ出てくるだろうが
ネットでも検索して、参考書片手に苦戦しています(^^;)
お勧めサイトが有れば、是非お教えください。

>ところで、お幾つなのですか?
サバ読んで答えて宜しいでしょうか?(^_^;)

>ところで、家族構成は一人っ子 or 末っ子だと推察しましたが
>あってますか?
惜しいのですが、違います。
ご期待に添えずすみません。

5さん(名前が分からないので投稿番号で呼ばせてください)
有難うございます、参考にさせて頂きます。

以上の方々忙しい所、有難うございます。
0007名無しさん@お腹いっぱい。NGNG
http://www.ueda.info.waseda.ac.jp/~toyama/network/
0008名無しさん@お腹いっぱい。NGNG
http://piza.2ch.net/test/read.cgi?bbs=tech&key=967778156
0009名無しさん@お腹いっぱい。NGNG
三番目は何が言いたいのかわからん
0010名無しさん@お腹いっぱい。NGNG
そのリンク集の中にあるよんといことなのでは?
0011名無しさん@お腹いっぱい。NGNG
そのリンク集の中にあるよんといふことなのでは?
0012名無しさん@お腹いっぱい。NGNG
man 2 kill
man sigaction
man 7 signal
0013名無しさん@お腹いっぱい。NGNG
man shmget
man shmctl
man shmat
man shmdt
man ftok
0014???????????????BNGNG
3 ttsume ha
nani ga iitaino?
0015テレパスごっこNGNG
3つめはもしかしてこういうことか?
char*buf=malloc(MAXBUF);
0016名無しさん@お腹いっぱい。NGNG
セマフォはここで詳しく書いてあるよ
http://docs.sun.com:80/ab2/coll.141.7/MTP/@Ab2PageView/idmatch(SYNC-11157)?Ab2Lang=ja&Ab2Enc=shift_jis#SYNC-11157
スレッド関係だったらここである程度分かるんだが、以下マルチスレッドのプログラミングのことが細かく書いてあります
http://docs.sun.com:80/ab2/coll.141.7/MTP/@Ab2TocView?Ab2Lang=ja&Ab2Enc=shift_jis
0017名無しさん@お腹いっぱい。NGNG
man 48te
man 69
man sm
man analsex
0018ギコハトNGNG
こーの、クズ!>17
0019名無しさん@お腹いっぱい。NGNG
>13
そりは共有メモリじゃない?
セマフォはsemget();で生成して、
semctl()で初期化して、semop();でUP、DOWN操作。
別に難しくありません。manでマニュアル見て書いてある
とおりに使ってください。

シグナルは、kill();で、送信先のプロセスIDと送信する
シグナル指定するだけです。
受けるほうはsignal();で、シグナルの種類とそれを受けたときに
起動する関数のポインタしてすれば、そのシグナル飛んできたら
その関数に飛びます。そんだけ。

・・・難しくないよ。単に知らないんで怯えてるだけでしょ?
002019NGNG
あーそういえばこの辺のシステムコールって
SystemV系のUNIXおんりいだっけ?

そうじゃないUNIX使われてますか?
0021名無しさん@お腹いっぱい。NGNG
>>19
昔の人は共有メモリつかってセマフォ実現してたり普通にやってたの。
つうか、ユニックスにはあんまりまともな mutex のメカニズムは無かったのよ。
0022名無しさん@お腹いっぱい。NGNG
たしかシグナルのプログラミングって、BSD系とSystemV系で違うよね?。
同じSunでも、SunOSとSolarisで違ったと思ったけど…。
昔のことで忘れた。
(今時SunOS使ってる人いないか…)
0023名無しさん@お腹いっぱい。NGNG
/* メモリを2Gほど確保してみよう */
main(){void*p=malloc(2*1024*1024*1024);return 0;}
/* 多分駄目(笑) */
0024名無しさん@お腹いっぱい。NGNG
/* root で実行してみよう! */
main(){return kill(1);}

0025名無しさん@お腹いっぱい。NGNG
24
間違えた。kill(1@`SIGTERM);だ。
0026名無しさん@お腹いっぱい。NGNG
リチャード・スティーヴンス著『詳解 UNIXプログラミング』は良い本だったよ。
ただし、現在絶版らしい。
0027名無しさん@お腹いっぱい。NGNG
これどうだ?

C for UNIX システムコールの基礎と応用
http://www.shuwasystem.co.jp/books/wwwsrch/cgi-bin/content/0031/index.htm
ISBN4-7980-0031-0
0028名無しさん@お腹いっぱい。NGNG
>>27
>>5のリンク先のひとが出した本だよ。
0029名無しさん@お腹いっぱい。NGNG
>>26
おめでと、新装されて再出版されました。
0030名無しさん@お腹いっぱい。NGNG
>>29
出版社はどこ!!!!?
0031RsNGNG
unixやって金になるのでしょうか?
0032名無しさん@お腹いっぱい。NGNG
>30
著者は他かいしてなかったっけ?
0033名無しさん@お腹いっぱい。NGNG
>>30
http://pc.bookmall.co.jp/cbook/shinkan/001215.html

情報源は、fj.unix。Thanks!
0034名無しさん@お腹いっぱい。NGNG
init には kill が聞かないんだな、これが。
■ このスレッドは過去ログ倉庫に格納されています