Open/Close Menu Yapı Taahhüt ve İnş. Tic. Ltd. Şti.

Size Özel Tekliflerimiz?
İletişime Geçin! »

Bizi Arayın:
0216 537 19 46/47

Valgrind 도구 제품군은 프로그램을 더 빠르고 정확하게 만드는 데 도움이 되는 다양한 디버깅 및 프로파일링 도구를 제공합니다. 이러한 도구 중 가장 인기있는 Memcheck라고합니다. C 및 C++ 프로그램에서 흔히 볼 수 있는 많은 메모리 관련 오류를 검색할 수 있으며 충돌 및 예기치 않은 동작으로 이어질 수 있습니다. Memcheck가 오류를 보고하지 않도록 프로그램을 깨끗하게 만들어보십시오. 이 상태를 달성하면 프로그램 변경으로 인해 Memcheck가 새 오류를 보고하는 경우 훨씬 쉽게 확인할 수 있습니다. Memcheck 사용의 몇 년에서 경험은 심지어 거대한 프로그램이 Memcheck 청소를 실행할 수 있음을 보여줍니다. 예를 들어, KDE, OpenOffice.org 및 파이어 폭스의 큰 부분은 Memcheck 청소, 또는 그것에 매우 가깝습니다. 더 많은 정보가 있는 Valgrind FAQ 및 Valgrind 사용자 설명서를 참조하십시오. Valgrind 분포의 다른 도구는 –tool 옵션을 사용하여 호출할 수 있습니다.

Valgrind는 오픈 소스 / 무료 소프트웨어이며, GNU 일반 공공 라이센스, 버전 2에 따라 자유롭게 사용할 수 있습니다. 밈체크는 완벽하지 않습니다. 때때로 거짓 긍정을 생성하고 이를 억제하는 메커니즘이 있습니다(Valgrind 사용자 설명서의 오류 억제 참조). 그러나 일반적으로 99%의 시간이므로 오류 메시지를 무시하지 않도록 주의해야 합니다. 결국 컴파일러에서 생성 한 경고 메시지를 무시하지 않을 것입니다. 억제 메커니즘은 Memcheck가 변경할 수 없는 라이브러리 코드의 오류를 보고하는 경우에도 유용합니다. 기본 억제 설정은 이러한 것들을 많이 숨기지만 더 많이 찾아올 수 있습니다. TEST02는 초기화되지 않은 일부 데이터에 액세스하는 예입니다.

Valgrind는 동적 분석 도구를 구축하기 위한 계측 프레임워크입니다. 많은 메모리 관리 및 스레딩 버그를 자동으로 감지하고 프로그램을 자세히 프로파일링할 수 있는 Valgrind 도구가 있습니다. Valgrind를 사용하여 새로운 도구를 만들 수도 있습니다. 오류 메시지를 이해하지 못하는 경우 Memcheck가 생성하는 모든 오류 메시지의 예가 있는 Valgrind 사용자 설명서의 Memcheck의 오류 메시지 설명을 참조하십시오. VALGRIND 예제는 C 버전과 C ++ 버전 및 FORTRAN77 버전에서 사용할 수 있습니다. FORTRAN90 버전. 일부 오류 메시지에는 관련된 메모리 주소를 설명하는 두 번째 구성 요소가 있습니다. 이는 기록된 메모리가 example.c의 5줄에 malloc()으로 할당된 블록의 끝을 지나고 있음을 보여줍니다. TEST01은 피보나치 시퀀스의 11개 요소가 10개 요소에 대해서만 할당된 벡터에 저장되는 예입니다. 예를 들어 정적 또는 스택에 할당된 배열에 대한 범위를 벗어난 읽기 또는 쓰기를 검색할 수 없습니다.

그러나 프로그램을 충돌시킬 수있는 많은 오류를 감지해야합니다 (예 :