2013-02-27 3 views
0

우리가 알고있는 리눅스 파일 proc/{pid}/status는 특정 프로세스에 대한 미세 입자 메모리 풋 프린트를 제공합니다. 그것에 의해 던져진 매개 변수 중 하나는 'VmExe'또는 프로세스의 텍스트 세그먼트 크기입니다. 나는이 분야에 특히 관심이 있지만, proc 파일 시스템이없는 Windows 환경에서 나를 돕고있다. cygwin은 대부분의 procfs를 모방하지만 {pid}/* 파일은 cygwin이 무시하는 부분 중 하나 인 것처럼 보입니다. 나는 Windows sysinternals에서 VmMap 도구로 놀아 보았지만, 가장 가까운 필드는 개인 작업 세트에서 '개인 데이터 크기'였습니다. 이것이 내가 원하는 것인지 확실하지 않습니다.윈도우 프로세스의 정확한 코드 세그먼트 크기

+0

Windows가 해당 정보를 추적하는지는 모르겠지만 매우 유용 할 것 같지 않습니다. FWIW를 사용하면 EnumProcessModulesEx를 사용하여 프로세스로로드 된 모듈 및/또는 VirtualQueryEx를 사용하여 프로세스 메모리 레이아웃을 검사 할 수 있습니다. –

답변

0

나는 sysinternals에서 vmmap.exe을보고 주어진 프로세스에 대해 찾고있는 정보가 표시되는지 확인합니다. 찾고있는 정보가 여기에 표시되면 응용 프로그램에서 사용하는 API 호출을 살펴 보거나 msdn의 sysinternals 포럼에서 요청할 수 있습니다. 나는 이것이 당신이 대답에서 찾고 있던 것과는 정확히 일치하지 않는다는 것을 잘 알고 있지만, 그것은 올바른 방향으로 당신을 가리키고 있습니다.

PE의 : 텍스트 세그먼트에 대해 이야기하는 경우 debughlp 라이브러리 및 기타 여러 가지 방법으로이 정보를 얻을 수 있습니다 (이진 분석을 위해 주위에 몇 개의 라이브러리가 있습니다).