74542


GNU の `top` だと以下の通り **VIRT** という項目があります。

[code]

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    
[/code]

一方、Mac の top で表示される結果は GNU 版と異なり、 **VIRT** の項目が見当たりません。

[code]

    PID    COMMAND      %CPU TIME     #TH   #WQ  #PORT MEM    PURG   CMPRS PGRP  PPID  STATE    BOOSTS            %CPU_ME %CPU_OTHRS UID  FAULTS     COW      MSGSENT    MSGRECV    SYSBSD
    
[/code]

top コマンドのマニュアル (`man top`) に以下の記載があるので、これがそうなんでしょうか？

> PURG: Purgeable memory size

あと man の中に CMPRS という単語が出てこないのでこれが何なのかわかりません。


CC BY-SA 4.0
2021-03-09T06:48:42.710
74541
2021-03-09T07:45:40.863
2021-03-09T07:45:40.863
7290
question
macos
macOS でプロセスごとの仮想メモリサイズを知るコマンドってありますか？


  1. アクティビティモニタで見る（ⓘマークを押す）※コマンドではありません。

[![アクティビティモニタ](https://i.stack.imgur.com/nCJZS.png)](https://i.stack.imgur.com/nCJZS.png)

  2. ps コマンドを使う（vsz オプション）

[code]

    % ps x -o rss,vsz,command
    
       RSS      VSZ COMMAND
      3280  4302932 /usr/sbin/distnoted agent
      6136  4358868 /System/Library/Frameworks/LocalAuthentication.framework/Suppor
      3020  4331460 /usr/sbin/cfprefsd agent
     12164  4368288 /usr/libexec/UserEventAgent (Aqua)
      9384  4364396 /System/Library/PrivateFrameworks/CloudServices.framework/Helpe
     18536  4372088 /usr/libexec/knowledge-agent
      8924  4373108 /System/Library/CoreServices/talagent
     35112  4976672 /System/Library/CoreServices/Dock.app/Contents/MacOS/Dock
     32516  5106820 /System/Library/CoreServices/ControlCenter.app/Contents/MacOS/C
     10476  4365824 /usr/libexec/lsd
    ...
    
[/code]

参考：[How can I monitor memory usage of a process running from the terminal in
OSX](https://superuser.com/q/700126/1197980)


CC BY-SA 4.0
2021-03-09T07:42:44.313
74542
2021-03-09T07:42:44.313
7290
74541
answer