4

私は次のスクリプトを見ました:

$ ./crazy-malloc &
[1] 2817
malloced 3056 MB
$ jobs -x pmap %1
2823: ./crazy-malloc
000cc000 4112K rw--- [ anon ]
004d0000 104K r-x-- /lib/ld-2.3.5.so
004ea000 4K r---- /lib/ld-2.3.5.so
004eb000 4K rw--- /lib/ld-2.3.5.so
004ee000 1168K r-x-- /lib/libc-2.3.5.so
00612000 8K r---- /lib/libc-2.3.5.so
00614000 8K rw--- /lib/libc-2.3.5.so
00616000 8K rw--- [ anon ]
006cf000 124388K rw--- [ anon ]
08048000 4K r-x-- /home/john/examples/mm/crazy-malloc
08049000 4K rw--- /home/john/examples/mm/crazy-malloc
08051000 2882516K rw--- [ anon ]
b7f56000 125424K rw--- [ anon ]
bfa43000 84K rw--- [ stack ]
bfa58000 5140K rw--- [ anon ]
ffffe000 4K ----- [ anon ]
total 3142980K

Q1>回線の使い方はjobs -x pmap %1?ここに何%1を示していますか?

jobs -x command [args ...] -xオプションが指定されている場合、jobsはcommandまたはargsで見つかったjobspecを対応するプロセスグループIDに置き換え、コマンドを実行してargsを渡し、終了ステータスを返します。

pmap-プロセスのメモリマップを報告します

Q2>最初の2列は何を表していますか?

4

2 に答える 2

5
  1. %1は、開始してバックグラウンド化したプロセスを表します ( ./crazy-malloc、pid 2817)。コマンドjobs -x pmap %1は に展開されpmap 2817ます。

  2. の出力の 4 つの列は、pmapプロセスによってマップされた各メモリ領域のベース アドレス、サイズ、アクセス許可、およびマップされたファイルをそれぞれ表します。

于 2012-05-28T22:38:29.390 に答える
3

%1あなたが投稿した段落が話しているジョブスペックです。基本的に、このような行が表示された場合

[2] 2817

バックグラウンドでジョブを実行する場合、そのジョブスペックは%2.

于 2012-05-28T22:40:15.103 に答える