The Modular Debugger (MDB) is a general purpose debugging tool for the Oracle Solaris OS whose primary feature is its extensibility. This guide describes how to use MDB to debug complex software systems, with a particular emphasis on the facilities available for debugging the Oracle Solaris kernel and associated device drivers and modules. The guide also includes a complete reference for and discussion of the MDB language syntax, debugger features, and MDB Module Programming API.