タグ

シグナルと読み物に関するiwwのブックマーク (3)

  • Ctrl+Cとkill -SIGINTの違いからLinuxプロセスグループを理解する | ギークを目指して

    しばらくLinuxネタが続く・・。 近いうちに最近出たJava8ネタを書いてみようと思います。が、もう少しLinuxネタにお付き合いください。 前回はsshdを対象に親プロセスをkillした場合の動作を確認した。 killされたプロセスの子プロセスは孤児プロセスとなり、カーネルによって自動的にinitプロセスの子として扱われる事を説明した。(この動作を「リペアレンティング」と呼ぶ) 今回はこの続き。 Linuxで作業していてCtrl+Cしてプロセスを終了した場合、フォアグラウンドのプロセスやその子プロセスも一緒に終了する。 ということは、子プロセスは孤児として扱われず、リペアレンティングされていないことになる。 今回の記事ではこの振る舞いの違い(リペアレンティングされるか否か)に着目し、kill -SIGINTコマンドとCtrl+Cの違いについて考えていく。 そもそもkillコマンドやCt

    Ctrl+Cとkill -SIGINTの違いからLinuxプロセスグループを理解する | ギークを目指して
    iww
    iww 2014/07/28
    killでプロセス番号にマイナスつけるとグループ宛になるやつって、こんなことやってたのか。
  • 技術/UNIX/なぜnohupをバックグランドジョブとして起動するのが定番なのか?(擬似端末, Pseudo Terminal, SIGHUP他) - Glamenv-Septzen(ぐらめぬ・ぜぷつぇん)(archive)

    Glamenv-Septzen(ぐらめぬ・ぜぷつぇん)(archive) 技術/UNIX/なぜnohupをバックグランドジョブとして起動するのが定番なのか?(擬似端末, Pseudo Terminal, SIGHUP他) [ Prev ] [ Next ] [ 技術 ] 何をいまさら当たり前の事を・・・と思われるだろう。 $ nohup long_run_batch.sh & SSHからログアウト後も実行を続けたいバッチジョブを、"&"を付けてバックグラウンドジョブとしてnohupから起動するのは定番中の定番である。 しかし、「nohupを使わなくても実行を続けることが出来る」やり方があったり、さらには「nohupを付けてもログアウト時に終了してしまう」パターンがあるとしたらどうだろう? そして、ある日あなたの後輩や同僚がこれらについてあなたに質問してきたら、あなたはどう答えるだろうか?

  • ほぼ日刊イトイ新聞- バフンウニの嘆き

    あ、ここですね、 自分の名前の不当さを嘆く場所というのは。 それでは、さっそく嘆かせていただきます。 なお、当方の嘆きに関しては、 ほぼ日刊イトイ新聞宇宙部に所属する 佐藤ベイさんの監修を経ております。 さて、私、ゾンビプロセスと申します。 私はUNIXにおけるプロセスの あるひとつの状態を指すといえます。 ご存じかと思いますが解説すると、 UNIXというのはOSの呼び名で、 もともとは1968年にアメリカのAT&T社で 開発されたものですが、 現在はそこから多くの派生OSが存在するため、 そういったUNIX的OSを総称して UNIXと呼ぶ場合が多いようです。 そのUNIXからメモリ領域の割り当てを受けて 処理を実行するプログラムが すなわちプロセスなのですが、 あるプロセスは必要に応じて 他のプロセスを起動することができまして 起動する側を親プロセス、 起動された側を子プロセスと呼ぶわけ

  • 1