GDBGDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes.