如何计算命令使用的内存?

时间:2016-06-15 08:25:51

标签: shell unix command-line command

考虑我正在运行一个命令:

cprogram.c using gcc command

以下命令使用的内存:

gcc cprogram.c

注意: 不应该使用top和ps命令。

我需要其他方法来计算命令使用的内存,这个内存应该只针对这个命令。

2 个答案:

答案 0 :(得分:0)

如果您使用Linux,则可以直接使用源ps使用:有关内存使用情况的信息(以及其他内容)在/proc文件系统上公开。例如,以root身份尝试cat /proc/1234/status,其中1234是流程的pid。

请注意,这可能不会计算gcc的子进程使用的内存。

答案 1 :(得分:0)

您可以使用/usr/bin/time来获取命令使用的峰值内存:

/usr/bin/time -l ps

<强>输出

  PID TTY           TIME CMD
97160 ttys000    0:00.01 -bash
97167 ttys000    0:00.00 /usr/bin/time -l ps
        0.00 real         0.00 user         0.00 sys
    946176  maximum resident set size                     <-- peak memory usage
         0  average shared memory size
         0  average unshared data size
         0  average unshared stack size
       244  page reclaims
         0  page faults
         0  swaps
         3  block input operations
         0  block output operations
         0  messages sent
         0  messages received
         0  signals received
         5  voluntary context switches
         0  involuntary context switches