Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is exactly difference between NTSD and WinDbg?

I am bit confused about Windows Debugging Tools.

WinDbg Tutorial

Windbg – wraps KD and NTSD with a decent UI. WinDbg can function both as a kernel-mode and user-mode debugger.

Does that mean whatever commands I use in NTSD can be used in WinDbg? Whenever I do user mode debugging NTSD is actually working behind the scenes?

like image 890
Pranit Kothari Avatar asked Aug 24 '14 02:08

Pranit Kothari


People also ask

What is WinDbg used for?

The Windows Debugger (WinDbg) can be used to debug kernel-mode and user-mode code, analyze crash dumps, and examine the CPU registers while the code executes. To get started with Windows debugging, see Getting Started with Windows Debugging.

Where are Microsoft debugging tools located?

The default installation directory for 64 bit OS installs for the debugging tools is C:\Program Files (x86)\Windows Kits\10\Debuggers\. If you have a 32-bit OS, you can find the Windows Kits folder under C:\Program Files.


1 Answers

WinDbg, NTSD, CDB, and KD all share the same debugging engine, so they share all the same commands. The only differences between them is that WinDbg has GUI interface, NTSD, CDB and KD have console interfaces, NTSD and CDB only support user mode debugging, KD only supports kernel mode, while WinDbg supports both.

Note that the NTSD command installed in the System32 directory on older versions of Windows will likely be a much older version of the debugger than any version of WinDbg you might have installed on the machine. In that case the old and new debuggers will have differences in the commands they support.

like image 89
Ross Ridge Avatar answered Oct 18 '22 19:10

Ross Ridge