Debugging
Erscheinungsbild
Bug wurde ursprünglich von der Computerpionierin Grace Hopper geprägt. Im heutigen Deutsch ist es üblich den Begriff Bug als Fehler in einem Computerprogramm zu bezeichnen.
Als Debuggen wird das Auffinden, Diagnostizieren und Eliminieren von Fehlern in Hardware und heutzutage vor allem auch Fehlern in Software bezeichnet.
Ein Werkzeug zum Debuggen von Software nennt sich Debugger. Der Debugger ermöglicht in der Regel eine Ablaufverfolgung des zu untersuchenden Programmes in einzelnen Schritten oder zwischen definierten Haltepunkten. Ein Debugger ist oft Bestandteil einer Programm-Entwicklungsumgebung (auch integrierte Entwicklungsumgebung (bzw. IDE) genannt).
Zur Fehlersuche verwendete Werkzeuge
- Hardware:
- JTAG
- Logic-Analyzer
- ICE - In-Circuit-Emulator
- Software (Debugger):
- debug - ein DOS-Tool
- gdb - der GNU Debugger, ein Unix-Tool
- ddd - ein graphisches Frontend zum gdb
- ltrace - zeigt dynamische Bibliotheksaufrufe an
- strace (Linux), truss (Solaris) - zeigt Systemaufrufe an
- valgrind - zum Debuggen und Profilen von x86-Linux Programmen
- SoftICE - Leistungsfähiger Low-Level Debugger für x86 Systeme
- IDA - sehr guter Disassembler für viele Rechner-Architekturen. Enthält seit neuestem auch einen Debugger
- OllyDb - ein weiterer guter Debugger mit schöner GUI. Die Grundfunktionen sind einfach zu bedienen.
- Diverse Source-Level-Debugger, in der Regel Teil einer Integrierten Entwicklungsumgebung.