상위 질문
타임라인
채팅
관점

메모리 디버거

메모리 누수와 버퍼 오버플로를 찾기 위한 프로그래밍 도구 위키백과, 무료 백과사전

Remove ads

메모리 디버거(memory debugger)는 메모리 누수버퍼 오버플로를 찾기 위한 프로그래밍 도구이다. 이는 동적 메모리 할당 및 할당 해제와 관련된 소프트웨어 버그 때문에 발생한다. 쓰레기 수집을 가진 언어들로 쓰여진 프로그램들도 메모리 디버거를 필요로 하는데, 예를 들면 콜렉션들에서 "살아있는" 참조들에 의한 메모리 누수가 발생하기 때문이다.

개요

메모리 디버거는 메모리 접근, 할당 그리고 할당 해제를 모니터링한다. 많은 메모리 디버거들은 애플리케이션이 API들이 기존의 동적 메모리 할당 라이브러리들과 호환되거나 동적 링킹을 사용하는 특별한 동적 메모리 할당 라이브러리들로 재컴파일되기를 요구한다. Electric Fence는 이러한 디버거로서 Malloc으로 메모리 할당을 디버그한다. Valgrind 같은 몇몇 메모리 디버거들은 가상 머신 같은 환경에서 실행 파일을 돌리고 메모리 접근, 할당 그리고 해제를 모니터링해서 특별한 메모리 할당 라이브러리들로 재컴파일하는 것이 필요치 않다.

소프트웨어 에이징에서 비정상적으로 높은 메모리 활용이 기여 요소가 되기 때문에, 메모리 디버거들은 프로그래머가 컴퓨터 시스템 메모리를 소진하는 소프트웨어 버그들을 피하는데 도움을 줄 수 있다. 그래서 긴 런타임 동안 소프트웨어의 높은 신뢰성을 보장한다.

Remove ads

메모리 디버깅 도구들의 목록

요약
관점

아래는 메모리 디버깅을 하는데 유용한 도구들의 목록이다. 프로파일러는 메모리 디버거와 함께 사용될 수 있다.

자세한 정보 이름, 운영체제 ...
Remove ads

같이 보기

참고 자료

각주

Loading content...

외부 링크

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads