avrmon-stk200 is a Linux debug monitor system for Atmel AVR microcontrollers. It is compatible with the connection scheme used in Atmels "STK200 Starter Kit".
Beesoft Tracer is a suite of tools for remote debugging of running programs. All elements are written in pure C++ using the STL library. The communication between elements is via sockets: Unix domain socket and TCP/IP.
Carillon is a simple, fast, and effective type-based system for finding Y2K errors in C programs. Carillon extends the standard C type system with a user-defined set of year-related type qualifiers.
Clint is a testbed for static source-code checking techniques. It is currently designed to check C++ for common programmer errors and suggest improvements.
(commercial) CodeWizard is a unique coding standards enforcement tool that uses patented Source Code Analysis technology (patent #5,860,011) to help developers prevent errors and standardize C++ code automatically.
COVTOOL is an open source test coverage analyzer for C++ programs. It lets you dynamically instrument your source code as you compile. An instrumented program keeps track of the lines of code that were executed during its run and produces a log of the same upon program termination. Multiple program runs will produce multiple logs.
cqual is a type-based analysis tool for finding bugs in C programs. cqual extends the type system of C with extra user-defined type qualifiers.
Crash Core Analysis Suite
Crash Core Analysis Suite is a self-contained tool, loosely based on the SVR4 crash command, but completely merged with gdb, thereby combining the kernel-specific nature of crash with the source level debugging capabilities of gdb.
cutee is a C++ unit testing environment that makes it really easy to create and run tests of a library or application.
DIOTA is a novel method for instrumenting binaries. The technique correctly deals with programs that contain traditionally hard to instrument features such as data in code and code in data. The technique does not require reverse engineering, program understanding tools or heuristics about the compiler or linker used. The basic idea is that instrumented code is generated on the fly, while the original process is used for data accesses.
DRT is a design recovery tool for interactive graphical applications running under X Windows. The tool automatically captures actions performed while using such an application.
DTrace for Oracle
DTrace is a comprehensive dynamic tracing framework that was initially developed for the Oracle Solaris operating system, and is now available to Oracle Linux customers. DTrace is designed to give operational insights that allow users to tune and troubleshoot the operating system.
Dynamic Probes is a generic and pervasive debugging facility that will operate under the most extreme software conditions such as debugging a deep rooted operating system problem in a live environment, for example in the page-manager of the kernel or perhaps a problem that will not re-create easily in either a lab or production environment.
find-sym attempts to figure out where one or more unresolved externals you are seeing lives. These errors are common when porting C code from one *ix to another.
flawfinder is a program that examines source code looking for security weaknesses (``flaws''). Unlike ITS4, flawfinder is completely open source and it's fully free software.
(commercial) FlexeLint checks your C/C++ source code and find bugs, glitches, inconsistencies, non-portable constructs, redundant code, and much more.
Fuzz is a fuzz testing tool. It runs the target program repeatedly and provides random data streams to applications in a number of ways and then reports whether the program can be made to crash.
FXScintilla is an implementation of the Scintilla source code editing component for the FOX GUI toolkit.
Geodesic Runtime Analyzer
(commercial) Geodesic Runtime Analyzer installs itself at runtime, integrates seamlessly with application software without requiring changes to source code, and scans applications for 34 hidden problem areas that may affect performance, such as throughput and scalability, as well as reliability issues such as bloat and data corruption. Runtime Analyzer then generates a report that outlines the most critical application risk factors and recommends next steps for addressing them.
glAppGrapher is an interactive graphical server that allows clients to indirectly render three-dimensional objects. It is intended to be a debugging tool for software developers who need to visualize aspects of their programs without turning their programs upside-down in the process.
gramdiag assists in debugging shift/reduce and reduce/reduce conflicts from grammars input to Bison.
(commercial) Great Circle is an advanced testing and diagnostic environment that allows software engineers to identify and resolve performance and reliability problems in application software.
hhmalloc extends standard C malloc/free interface to simplify tasks of memory disposal when allocated structures exhibit hierarchical properties.
(commercial) Insure++ is a tool that automatically detects large classes of programming and run-time errors, including algorithmic anomalies, bugs, and deficiencies. By visualizing the execution of a program and the concurrent data manipulation, Insure++ helps developers understand how code operates.
(commercial) Isolator++ enables easy unit testing of even the most problematic pieces of code in your project, by allowing you to intercept and fake the behavior of almost any C/ C++ code.
Jelie is a JTAG port driving software for Intel XScale CPU family. With only a JTAG connection, Jelie is able to upload a debug handler, initialize the memory, upload and debug programs.
(commercial) KernelDriver is a toolkit designed for the development of non-monolithic (layered or mini-port) USB/PCI driver architecture for Windows and Linux (up to kernel 2.4).
leakbug is a small, simple library intended to show where memory leaks are occuring within a program.
Libckpt is a portable checkpointing tool for Unix. It provides a mechanism for enabling fault-tolerance for long-running programs. Libckpt implements most optimizations that have been proposed to improve the performance of checkpointing.
lisp debug is a source level debugger.
LobTraceStream is a C++ trace/log mechamism which intends to be easy to use, as the programmer only needs to manipulate 5 macros for a very flexible trace output.
LogiTest provides a simple graphical user interface for creating and playing back tests.
mpatrol is yet another link library that attempts to diagnose run-time errors that are caused by the wrong use of dynamically allocated memory.
Netsh is a tool designed to debug network applications. It enables the user to dump incoming packets in ascii or hexadecimal, and to send hand made custom packets (again, ascci and hexadecimal forms can also be used).
ParseTrace parses output from strace and generates a list of files that were opened and of binaries that were executed.
PrivateICE is a kernel level debugger similar to SoftICE on Windows.
pylint is a python tool that checks if a module satisfy a coding standard. Pylint can be seen as another pychecker since nearly all tests you can do with PyChecker* can also be done with Pylint. But Pylint offers some more features, like checking line-code's length, checking if variable names are well-formed according to your coding standard, or checking if declared interfaces are truly implemented.
Qmmslog is a port of the Jakarta Project's log4j to Qt/C++.
QScintilla is a port of the Scintilla C++ editor class to the Qt GUI toolkit. QScintilla includes features especially useful when editing and debugging source code. These include support for syntax styling, error indicators, code completion and call tips.
Reverse Engineer's Assembly Producer is a Perl/Tk-based GUI for the objdump binutil. Not only a disassembler, it also cross-references JMPs and CALLs, and inserts string references where appropriate. In addition to providing advanced editing features, this program displays information about the binary under inspection, the offset of an opcode, header info, and more.
RNV is an implementation of Relax NG Compact Syntax validator in ANSI C. The command-line utility uses Expat. It is distributed under BSD license.
Scintilla is a free source code editing component. As well as features found in standard text editing components, Scintilla includes features especially useful when editing and debugging source code.
SmartGDB is a set of modifications made to a common breakpoint-debugger to enhance and expand its capabilities.
(commercial) SOAPtest is an automated inter-module testing application for Enterprise Systems that can emulate both the SOAP client and SOAP server. This allows for early module testing of applications that can help you focus on error prevention rather than trouble shooting and debugging late in the game.
sortchk is a sort algorithm test suite. It was developed on NetBSD, but it will also compile and run well on other systems, such as FreeBSD, OpenBSD, Darwin, AIX and Linux.
strace is a system call trace, i.e. a debugging tool which prints out a trace of all the system calls made by a another process/program. The program to be traced need not be
recompiled for this, so you can use it on binaries for which you don't have source.
The TestApe unit test framework is a framework for unit testing embedded software written in plain C. TestApe supports GCC in Linux or CygWin
(commercial) TotalView is a full-featured, source-level, graphical debugger for applications written in C, C++, Fortran (77 and 90), PGI HPF, assembler, and mixed source/assembler codes. It is a multiprocess, multithread debugger that supports multiple parallel programming paradigms including MPI, PVM and OpenMP.
vimDebug integrates your favorite debugger with vim. it currently supports gdb (the GNU debugger), the perl debugger, pdb (the python debugger), and jdb (the java debugger).
VSC Lite is a lite version of the full Open Group commands and utilities test suite. It provides test coverage for 77 commands and utilities from the POSIX.2-1992 specification.