You should use gdb to debug your program rather than dbx.
Dbx doesn't know how to decipher C++ names, so you will see function
names like Run__9SchedulerP6Thread.
On the other hand, in GDB (but not DBX) when you do a stack backtrace when in a forked thread (in homework 1), after printing out the correct frames at the top of the stack, the debugger will sometimes go into a loop printing the lower-most frame (ThreadRoot), and you have to type control-C when it says "more?". If you understand assembly language and can fix this, please let me know.