プロセスを囲む括弧は何を意味しますか?


62
$ ps -Awwo pid,comm,args
  PID COMMAND         COMMAND
    1 init            /sbin/init
    2 kthreadd        [kthreadd]
    3 ksoftirqd/0     [ksoftirqd/0]
    5 kworker/u:0     [kworker/u:0]
    6 migration/0     [migration/0]
    7 cpuset          [cpuset]
    8 khelper         [khelper]
    9 netns           [netns]
   10 sync_supers     [sync_supers]
   11 bdi-default     [bdi-default]
   12 kintegrityd     [kintegrityd]
   13 kblockd         [kblockd]
   14 kacpid          [kacpid]
   15 kacpi_notify    [kacpi_notify]
   16 kacpi_hotplug   [kacpi_hotplug]
   17 ata_sff         [ata_sff]
   18 khubd           [khubd]

括弧の意味は何ですか?argsは常にプロセスコマンドへのフルパスを返し/bin/catますか(例)


2
私のアーチ宿敵、user626201は、すでにstackoverflowの上でこの質問をしたstackoverflow.com/questions/7078258/...
joslinm

3
はい、通常はカーネルスレッドです。
ステファンギメネス

2
カーネルスレッドにならないのはいつですか?「プロセス引数が利用できない」のはいつですか?
mgalgs

回答:


51

コマンドの引数が見つからない場合、コマンド名の前後に括弧が表示されます。

ps(1)FreeBSD のmanページには、これがシステムプロセスとカーネルスレッドでよく発生する理由が説明されています。

引数が見つからない場合(通常はシステムプロセスやカーネルスレッドのように設定されていないため)、コマンド名は角括弧内に表示されます。

ps(1)Linux のマニュアルページにも同様の記載があります。

プロセス引数が使用できない場合があります。これが発生すると、psは代わりに実行可能ファイル名を角かっこで出力します。


1
使用できない引数は、プロセスコマンド(/bin/cat)へのフルパスを出力しないことと何の関係がありますか?argsはコマンドの後に渡される引数だと思いました。(コマンド自体は実際に表示されargvますが、よくわかりませんが、便利な機能だと考えました。)
n611x007

14

マニュアルから:

プロセス引数が使用できない場合があります。これが発生すると、ps代わりに角括弧内の実行可能ファイル名を出力します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.