web-dev-qa-db-ja.com

Windows 7で特定のソフトウェアのRAM使用状況を監視することは可能ですか?

特定のアプリケーションで使用されているRAMの量を知りたいのですが、たとえば、ブラウザ(ie:opera)で使用されている正確なRAM)です。複数のインスタンスがブラウザによって作成されるため、手動で計算するのは難しいということです。

TaskManagerがRAMの合計量を表示していることは知っていますが、これはあまり役に立ちません。

したがって、これを監視できるソフトウェアを知っている場合は、共有してください:)。

ありがとう

1
The Beast

手動で計算するのは難しいです。

tasklistを使用して、メモリ使用量を取得できます。

例:

> tasklist /fi "imagename eq opera*"

Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
opera.exe                     5444 Console                    1      78840 K
opera_crashreporter.exe       8404 Console                    1       6308 K
opera.exe                     8936 Console                    1      66708 K
opera.exe                     7804 Console                    1      70344 K
opera.exe                     2304 Console                    1      28200 K
opera.exe                     4612 Console                    1      73640 K
opera.exe                     8460 Console                    1      41168 K

次のバッチファイルはあなたのために合計を行い、60秒ごとに結果を表示します。

test.cmd:

@echo off
setlocal enabledelayedexpansion
:start
set _mem=0
for /f "skip=3 usebackq tokens=5" %%i in (`tasklist /fi "imagename eq opera*"`) do (
  set /a _mem += %%i
  )
echo Total Memory = !_mem! K
rem wait 60 seconds
timeout 60 /nobreak
goto :start
endlocal

例:

> test
Total Memory = 365464K

Waiting for  0 seconds, press CTRL+C to quit ...
Total Memory = 365216K

Waiting for 51 seconds, press CTRL+C to quit ...
^CTerminate batch job (Y/N)? y

参考文献

1
DavidPostill