2017-03-23 7 views
0

ARM 용으로 컴파일 한 C 코드가 있으며 ARM 장치에서 실행 중입니다. 프로그램의 메모리 사용량, 즉 힙 및 스택 할당에 관심이 있습니다.ARM의 힙 및 스택 측정

이러한 값을 측정 할 수있는 도구가 있습니까? 지금까지 얻을 수있는 것은 armlink의 링커 출력 뿐이지 만 이러한 값을 사용하여 힙과 스택을 계산할 수는 없습니다. 현재 ARM 워크 벤치 IDE를 사용하고 있지만이 문제와 관련된 항목을 찾을 수 없습니다.

답변

0

일반적으로 힙 및 스택 사용량은 모두 이어야하며 코드를 정적으로 분석하고 계산할 수는 없습니다.

운좋게도 임베디드 코드에서는 코드에 들어가기 만하면됩니다. malloc()을 선택하고 측정을 포함 시키십시오. 그런 다음 예를 들어 디버거를 사용하여 검사 할 수 있습니다.

알려진 사용 데이터로 스택 공간을 채우고 응용 프로그램이 필러를 실제 데이터로 덮어 쓸 때 남아있는 "최고 수위"를 확인하여 스택 사용량을 수동적으로 측정 할 수 있습니다.

이 두 가지 방법 모두 물론 프로그램을 실행해야합니다. 즉, 이러한 리소스를 사용하는 다양한 코드 경로를 통해 실행해야합니다 (다시 정적 분석이 아닌 동적 측정 임).