Ubuntu의 특정 프로세스에 할당된 총 메모리 확인

Ubuntu의 특정 프로세스에 할당된 총 메모리 확인

Ubuntu에서 특정 프로세스에 할당된 총 메모리를 찾는 방법은 무엇입니까?

답변1

노력하다:

pidof bash | xargs ps -o rss,sz,vsz

현재 쉘의 메모리 사용량을 찾으십시오 bash(하나를 사용한다고 가정 bash). bash조사 중인 내용으로 변경하세요 . 특정 절차를 수행하는 경우 단독으로 사용하세요.

ps -o rss,sz,vsz <process id>

man페이지 에서 :

RSS: 상주 세트 크기, 작업에 사용되는 스왑되지 않은 물리적 메모리(KB)입니다.

SZ: 프로세스 코어 이미지의 물리적 페이지 크기입니다. 여기에는 텍스트, 데이터 및 스택 공간이 포함됩니다.

VSZ: 프로세스의 가상 메모리 크기(KiB(1024바이트 단위))입니다.

man페이지에는 ps옵션에 대해 가능한 모든 매개변수가 나열됩니다 -o(선택할 수 있는 매개변수가 많습니다). 대신 대체 메모리 레이아웃을 보여주는 -o rss,szBSD 스타일 옵션(대시 없음)을 사용할 수 있습니다 .v

답변2

pmap이를 사용하여 프로세스의 메모리 맵을 표시 할 수 있습니다 .

pmap -p pid

이에 대한 자세한 내용은 매뉴얼 페이지 man pmap나 보기를 참조하세요.pmap(1): 프로세스의 메모리 맵을 보고합니다 - Linux 매뉴얼 페이지.

답변3

우분투에서 특정 프로세스에 할당된 총 메모리를 찾는 방법은 무엇입니까?

당신은 무엇인지 정의하지 않았습니다메모리 할당이는 실제로 프로세스에 대한 매우 복잡한 문제입니다(공유 메모리 매핑은 어떻습니까? 참조).매핑(2)POSIX 공유 메모리에 대해 자세히 알아보세요.shm_개요(7)다음 페이지에 대해 자세히 알아보세요.페이지 캐시열린 파일의 경우 등...)

파일 시스템을 사용할 수 있습니다(btw, , , 등. /proc/이 파일 시스템 사용). 읽다pspmaptophtop공정(5)더 알아보기. 특히 pid가 1234인 프로세스의 경우 등을 /proc/1234/status사용할 수 있습니다 . 이는 모두 보거나 읽는 데 사용할 수 있는 텍스트 의사 파일(파이프와 유사)입니다./proc/1234/statm/proc/1234/mapscat하나씩일부 프로그램에서는). 그런데, 프로그램 내부에서 순차 읽기 등을 사용하고 있을 수도 있습니다 /proc/self (의사 심볼릭 링크) ./proc/self/status

당신은 또한 볼 수 있습니다리눅스AteMyRam.

관련 정보