X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pintos-anon;a=blobdiff_plain;f=doc%2Fdebug.texi;h=402ede606345d07785666614a18748f6c3c114eb;hp=958e51b3bafcb2e3288ed28aa58ed4605ddfe4da;hb=28034001ef25d7ac4f58c7535a6fce767c9df8f5;hpb=90053831bfef7cfa230cae40301f387ed213718c diff --git a/doc/debug.texi b/doc/debug.texi index 958e51b..402ede6 100644 --- a/doc/debug.texi +++ b/doc/debug.texi @@ -99,6 +99,8 @@ of how your program got where it is, as a list of addresses inside the functions that were running at the time of the panic. You can also insert a call to @func{debug_backtrace}, prototyped in @file{}, to print a backtrace at any point in your code. +@func{debug_backtrace_all}, also declared in @file{}, +prints backtraces of all threads. The addresses in a backtrace are listed as raw hexadecimal numbers, which are difficult to interpret. We provide a tool called @@ -724,14 +726,15 @@ In a case like this, you might appreciate being able to make Bochs print out more debug information, such as the exact type of fault that occurred. It's not very hard. You start by retrieving the source code for Bochs 2.2.6 from @uref{http://bochs.sourceforge.net} and -extracting it into a directory. Then read -@file{pintos/src/misc/bochs-2.2.6.README} and apply the patches needed. -Then run @file{./configure}, supplying the options you want (some -suggestions are in the patch file). Finally, run @command{make}. -This will compile Bochs and eventually produce a new binary -@file{bochs}. To use your @file{bochs} binary with @command{pintos}, +saving the file @file{bochs-2.2.6.tar.gz} into a directory. +The script @file{pintos/src/misc/bochs-2.2.6-build.sh} +applies a number of patches contained in @file{pintos/src/misc} +to the Bochs tree, then builds Bochs and installs it in a directory +of your choice. +Run this script without arguments to learn usage instructions. +To use your @file{bochs} binary with @command{pintos}, put it in your @env{PATH}, and make sure that it is earlier than -@file{/usr/class/cs140/`uname -m`/bochs}. +@file{@value{localpintosbindir}/bochs}. Of course, to get any good out of this you'll have to actually modify Bochs. Instructions for doing this are firmly out of the scope of