|
|
fs is implemented as a collection of debugger-independent library routines which are linked in with the application being debugged; that is, fs runs in ``application space,'' not in ``debugger space.'' This makes it possible for fs to work with any debugger, or even without a debugger, that is, when debugging with printf's. For example:
extern void foo(); main() { // ... fs_showall(); // see what's on the freestore // ... fs_mark(); // set a mark now foo(); fs_since(); // see what foo() forgot to delete // ... }
However, fs interfaces with any source-level debugger, including UnixWare's debug(1), that permits calls to C language functions from the debug session.