読者です 読者をやめる 読者になる 読者になる

ポジローぽけっと

昨日より今日、今日より明日を信じて、トライトライ

第八回スパルタンプログラミング

ナイフ? ノンノン フォーク!!

メールのやり取りの語尾に「もす」を付けるのがはやり、東山動物園近くの太平閣へ行き、薄焼き卵で巻かれた春巻きと腸詰めうめぇーとなった、次の日、UNP vol1を第5章まで読んでforkのテストをこりこり書く。ごりごりは書けない。

いっしーがやさしい。タバコやめたからだろうか(彼が)。プハー

知らないことは覚えましょ

コマンド

  • ps:実行中ファイル名
  • kill:プロセスおよびジョブを終了する

/etc/services

ポートを11111でlistenにしたソケットをnetstatで確認しようとしたら見つからなかった。ポートを9877に変えると見つかった。 netstat両者の結果を見比べるとvceがどうやら11111だということがわかる。 ネットで調べても英語でしんどくて、いっしーに聞いたら/etc/services見てみろとのこと。

うーむ、ポート番号とサービス名との対応表が在る。

説明

forkまとめ

  • forkは親プロセスの複製をつくる。
  • プロセス内の戻り値は親なら子プロセスのIDが返り、子なら0が返る。
  • 返り値で条件分岐して、それぞれの振る舞いをかえる。
  • 子プロセスはexitで終了しても、zombieとして残る。
  • zombieを残さないように処理するには、exit終了時に子プロセスが返すSIGCHLDシグナルをSignal(SIGCHLD, sig_chld)で捕捉し、sig_chld(UNP Vol1 p.125)内でwaitpidで処理する。
  • waitやwaitpidは、子プロセスの終了を待ち、終了状態を取得することでzombieを開放する。

のんびり勉強