28.12.2013 Aufrufe

Folien - Chemnitzer Linux-Tage

Folien - Chemnitzer Linux-Tage

Folien - Chemnitzer Linux-Tage

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Valgrind<br />

4.)<br />

1.)<br />

3.)<br />

2.)<br />

Valgrind ist ein Framework, um das dynamische Verhalten von Programmen zu<br />

untersuchen. Es ist eine virtuelle Maschine, die den Code vor dem Ausführen erst in einen<br />

Zwischencode compiliert, der dann durch unterschiedliche Tools modifiziert werden kann.<br />

Erst danach wird ein Maschinencode erstellt.<br />

C-Code<br />

gcc<br />

Binärer Code<br />

valgrind<br />

Intermediate<br />

Representation (IR)<br />

Tools<br />

Versch. Instrumentationen<br />

valgrind<br />

Binärer Code<br />

Memcheck: findet nicht initialisierten Speicher, Schreiben<br />

über Speichergrenzen, Memory-Leaks<br />

SGcheck: ähnlich wie Memcheck, benützt aber andere<br />

Methoden zum Auffinden von<br />

Speicherzugriffsfehlern<br />

Callgrind: Misst Anzahl CPU-Takte, Cache-Zugriffe<br />

Helgrind: Thread-Fehler detektor Auffinden von Race<br />

Conditions<br />

DRD: ähnlich wie helgrind, benützt aber andere<br />

Algorithmen<br />

Massif: Heap und Stack-Profiler<br />

DHAT: Heap-Profiler, findet Speicher-Layout-Probleme<br />

<strong>Chemnitzer</strong> <strong>Linux</strong> <strong>Tage</strong> 2013, Wolfram Luithardt, EIA-Fribourg Schweiz, 16.3.2013 30

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!