CHAPTER 8 · 6 LESSONS · 78 問
プロセスとシグナル
いま何が動いているかを見る。止まらないものを止める。うしろで動かす。
打ったコマンドが返ってこない。そんなときに何をするかの章だよ。
動いているプログラム1つ1つをプロセスと呼び、それぞれに番号(PID)が付いている。ps で一覧を出せる。
ps… 動いているものの一覧。-oで出す列を選べるpstree… 親子関係を木の形で見るtop… いま何が CPU とメモリを食っているかを、動かしながら見るkill… プロセスに合図(シグナル)を送る&jobsfg… うしろで動かして、呼び戻すnice… 優先度を下げて動かす
kill という名前は少し脅かしすぎで、実際には合図を送るだけの道具だよ。既定の合図(TERM)は「片づけて終わってね」というお願いで、聞かないものには -9(KILL)を送る。この違いを知っておくと、データを壊さずに止められるようになる。
あなたはすでに Ctrl-C を使ったことがあるはず。あれも合図(INT)を送る操作なんだ。ボタンの裏で何が起きていたかが、この章で分かるようになるよ。
プロセスの親子関係も見ておこう。全部のプロセスは init(番号1)から枝分かれしていて、あなたのシェルもその枝の1本だよ。
この章のレッスン
動いているものを見る
合図を送る、うしろで動かす