Linuxには、プロセスがロードされているプロセッサ番号を知るためのコマンドがありますか?


26

Linuxには、プロセスを指定して、プロセスが実行しているプロセッサを特定するコマンドがありますか?CPUのビジー状態とそのプロセッサのCPUアイドル時間を把握することに興味があります。

回答:


32

このpsコマンドを使用して、アクティブなプロセッサを照会および表示できます。たとえば、次を実行できます。

$ ps -aF
UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
root         1     0  0  5971  1764   1 Sep15 ?        00:00:01 /sbin/init
ubuntu   28903  2975  0  3826  1208   0 09:36 pts/0    00:00:00 ps -aF

PSRカラムショーinitプロセッサ1上で実行され、psプロセッサ上で実行されていること見る0 PS(1)のマンページに表示されるフィールドをカスタマイズする方法の詳細については。

htop現在アクティブなプロセッサを表示するようなグラフィカルツールを構成できます。また、htopCPUごとの負荷表示グラフがあります。これは探しているものです。たとえば、http: //htop.sourceforge.net/からの次のスクリーンショットを参照してください

htopスクリーンショット

最後に、このtasksetツールを使用して、特定のCPUにアフィニティを強制できます。


(タスクセットを使用してアフィニティを1つのCPUのみに設定している場合を除き)この情報は、表示するまでに表示が生成される前に陳腐化する可能性があることに注意してください。
ジェイミーハンラハン

26

調べる方法はたくさんあります。htop、top、ps

htop

  • テスト済みバージョン:1.0.2
  • url:http : //htop.sourceforge.net/

    1. F2キーを押して、セットアップウィンドウを表示します
    2. [セットアップ]列で[列]を選択します
    3. 利用可能な列に移動
    4. プロセッサーを追加 htop選択プロセッサ
    5. CPU列を確認します CPU列を含むhtop

  • テスト済みバージョン:procps 3.3.8
  • url:http : //gitorious.org/procps

    1. fを押して、フィールド管理ウィンドウに入ります。
    2. P(最後に使用したCPU)を選択します

これが最後の列の例です P

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND   P 
 5626 yashi     20   0 1926276 545964  47596 R  12.6  3.4 151:10.81 gnome-sh+ 2 
 5347 root      20   0  384788  73600  55708 S   8.7  0.5  55:10.09 Xorg      1 
 8125 yashi     20   0  646240  30776  21928 S   4.3  0.2  23:06.20 gnome-sy+ 0 
 1785 yashi     20   0  581180  29288  15560 R   4.0  0.2   0:25.55 gnome-te+ 1

PS

PSRは、プロセッサIDを表示するコードです。あなたは次のようなフォーマットオプションを使用することができますps -o pid,psrまたは単に行いますps -eF

$ ps -eF|head
UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
root         1     0  0  3817   964   0 Aug14 ?        00:00:02 init [2]  
root         2     0  0     0     0   2 Aug14 ?        00:00:00 [kthreadd]
root         3     2  0     0     0   0 Aug14 ?        00:00:11 [ksoftirqd/0]
root         5     2  0     0     0   0 Aug14 ?        00:00:00 [kworker/0:0H]
root         7     2  0     0     0   0 Aug14 ?        00:00:00 [migration/0]
root         8     2  0     0     0   0 Aug14 ?        00:00:00 [rcu_bh]
root         9     2  0     0     0   3 Aug14 ?        00:00:39 [rcu_sched]
root        10     2  0     0     0   0 Aug14 ?        00:00:00 [watchdog/0]
root        11     2  0     0     0   1 Aug14 ?        00:00:00 [watchdog/1]

1

man psの内容を引用します:

psrは、プロセスが実行されているプロセッサまたは実行されているプロセッサを通知します。 pcpuは、プロセスが消費したCPU時間の割合を示します。

PS -eo PID、TID、クラス、RTPRIO、NI、PRI、PSRPCPU、STAT、WCHAN:14、COMM

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm | tail
 9847  9847 TS       -   0  19   2  0.0 S    -              kworker/2:0
10061 10061 TS       -   0  19   2  0.6 Sl   futex_wait_que chrome
10208 10208 TS       -   0  19   3  0.0 S    -              kworker/3:3
10247 10247 TS       -   0  19   1  0.0 S    -              kworker/1:1
10381 10381 TS       -   0  19   1  4.6 Sl   futex_wait_que chrome
10452 10452 TS       -   0  19   0  0.0 S    -              kworker/0:1
10491 10491 TS       -   0  19   0  0.5 Sl   futex_wait_que chrome
10504 10504 TS       -   0  19   2  0.0 S    -              kworker/2:1
10505 10505 TS       -   0  19   0  0.0 R+   -              ps
10506 10506 TS       -   0  19   3  0.0 S+   pipe_wait      tail

BSDスタイル:

PS AXO STAT、EUID、RUID、TTY、tpgid、SESの、PGRP、PPID、PID、PSRPCPU、COMM


これは一種の不可解です。これが何であるか、そしてそれを使用して問題を解決する方法について詳しく説明するために、答えを広げることはできますか? レビューから
fixer1234
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.