Who Should Use This Book
If you were a detective and were investigating at the scene of
a crime, you might interview the witnesses and ask them to describe what
happened and who they saw. However, if there were no witnesses or these
descriptions proved insufficient, you might consider collecting fingerprints and forensic evidence that could be
examined for DNA to help solve the case. Often, software program failures divide
into analogous categories: problems that can be solved with source-level debugging tools, and
problems that require low-level debugging facilities, examination of core files, and knowledge of
assembly language to diagnose and correct. MDB facilitates analysis of this second class
of problems.
MDB is most useful when you are programming a complex low-level software system
such as an operating system. The MDB debugging framework allows you to construct
your own custom analysis tools to aid in the diagnosis of these low-level
problems. MDB also provides a powerful set of built-in commands that enable you
to analyze the state of your program at the assembly language level.