실행 중인 프로세스의 힙 메모리를 찾는 방법은 무엇입니까? [복사]

실행 중인 프로세스의 힙 메모리를 찾는 방법은 무엇입니까? [복사]

백그라운드에서 실행되는 프로세스의 힙 메모리를 찾는 방법을 알고 싶습니다. 이것을 허용하는 명령이 있습니까?

답변1

wing_ide예를 들어 다음 과 같은 특정 프로세스를 보려면

ps a | fgrep wing_ide | fgrep -v fgrep

줄 시작 부분에 숫자를 지정하고(내 경우에는 29837) 해당 숫자를 다음과 같이 사용합니다.

fgrep '[heap]' /proc/29837/maps

출력은 다음과 같습니다.

01d56000-07026000 rw-p 00000000 00:00 0                       [heap]

이 작업을 정기적으로 수행하는 경우 다음 Python 프로그램을 사용할 수 있습니다.

import sys
import psutil

for p in psutil.process_iter():
    if p.name == sys.argv[1]:
        print(pid)
        for map in p.get_memory_maps(grouped=False):
            if '[heap]' in map.path:
                print(map.addr)

검색할 프로세스 이름을 인수로 제공하는 프로그램은 무엇입니까?

python findheap.py wing_ide

관련 정보