Comments
Description
Transcript
Linux - プロセスコマンド
プロセス管理 基本用語 • タスク – コンピューターで処理される作業の最小単位 • ジョブ – コンピューターの仕事の単位。一連のプログラムの流れで一つのまとまった 業務。 • バックグラウンドジョブとフォアグラウンドジョブ – コンピュータでは複数の仕事を同時に実行できる(マルチタスク)。 – このとき、現在画面上で制御中のジョブをフォアグラウンドジョブ、それ以外 のものをバックグラウンドジョブという。 – フォアグラウンドジョブだけで作業を行うと、一つの仕事が終わるまで他の仕 事に取りかかることができない。しかし、バックグラウンドジョブを用いれば、 時間のかかる仕事をバックグラウンドジョブに任せれば、他の仕事をフォアグ ラウンドジョブで実行できる。 jobsコマンド jobs 用途)ジョブを一覧表示 使用方法) jobs 例) バックグラウンドジョブの一覧を表示するには以下のように 入力する。 unix>jobs この結果、たとえば以下のような出力を得る。 [1]+running kterm [2]+running netscape ここで、1,2はジョブ番号を示す。 psコマンド ps 用途) 現在作動しているジョブの実行状況を表示 使用方法) ps_[スイッチ][RET] スイッチ) a 自分以外の人が実行したジョブも表示 l 情報が、幅の広いフォーマットで表示 u ジョブを実行しているユーザー名を表示 x システム中のジョブも表示 killコマンド kill 用途) 実行しているジョブを中断 使用方法) kill [スイッチ] [PID] kill [スイッチ] [バックグラウンドジョブ番号] スイッチ) -TERM ジョブに終了コードを送る。 -KILL 強制的にジョブを停止。 • スイッチに-KILLを指定するとジョブは強制的に停止されるが、 その前にスイッチ-TERMを指定してkillコマンドを実行しない と、ゾンビジョブ が残る。従って、必ず最初にスイッチ-TERM を指定してコマンドを実行した後、スイッチ-KILLを指定してコ マンドを実行する。 ジョブの管理方法 コマンド名 フォアグランドジョブとして実行する. コマンド名 & 最初から、バックグラウンドジョブとして実行する. Ctrl+Z フォアグランドジョブを一時停止する. stop ジョブ番号 ジョブ番号で示されたジョブをサスペンドする. fg ジョブ番号 ジョブ番号で示されたジョブをフォアグラウンドジョブで 再開する. bg ジョブ番号 ジョブ番号で示されたジョブをバックグラウンドジョブで 再開する. kill ジョブ番号 ジョブ番号で示されたジョブを強制終了する. 練習問題 emacsコマンドを用いて実習してみよう. • emacs と入力すると,コマンドがフォアグラウンド で実行される.このとき,他のコマンドを受け付け ない. • Ctrl+Z と入力して停止する. • bg と入力すると,コマンドがバックグラウンドで 実行される.このとき,他のコマンドを受け付ける. • fg と入力すると,コマンドがフォアグラウンドで実 行される. 演習問題 • FireFoxを起動し,そのPIDを調査しなさい. 続いて, FireFoxを強制終了しなさい. Windows編 GUIによる方法 • Ctrl+Alt+Deleteを同時に押すと,新しいウインド ウが開く. アプリケーショ 実行中のアプリケーション一覧. ン 選択して強制終了できる. プロセス OSの実行中プロセスの一覧. パフォーマンス CPU使用率など ネットワーク ネットワークアダプタの状況 ユーザー ログインしているユーザー 強制ログアウトできる. 実行コマンドをリスト表示 コマンド名 用法 tasklist •コマンド一覧を表示する. tasklist 左から,「イメージ名,PID,セッション名,セッション#,メモリ使用量」を示す. イメージ名はコマンド名,PIDはプロセスIDである.中でも,特に大事なのは PID(プロセスID) •詳しいコマンド一覧を表示する. tasklist /v 上記のデータに加えて,コマンドを実行しているユーザー名,実行状態, CPU時間,ウインドウなどが表示される. •プロセスのサービスを表示する. tasklist /svc 表示内容 N/A Not Avaiable EventLog イベントログ 実行コマンドの強制終了 コマンド名 用法 taskkill •PIDが123であるコマンドを強制的に終了する. taskkill /pid 123 •Pコマンド名(イメージ名)ABCであるコマンドを強制的に終了する. Dが 123であるコマンドを強制的に終了する. taskkill /IM ABC