# Debugger tutorials

Here you can find a comprehensive set of step-by-step tutorials categorized by different debugging types and platforms.

## General introduction into debugging with IDA

* Overview of [Linux debugging with IDA](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/linux_debugger)
* Overview of [Windows debugging with IDA](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/win_debugger_hub)
* [Debugging a Windows executable locally and remotely](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_windows_local)
* IDA scriptable debugger: [Overview](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/ida_scriptable_debugger1) and [scriptability](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/ida_scriptable_debugger1/ida_scriptable_debugger2)

## Local debugging tutorials

**Windows local debugging**:

* [IDA Win32 local debugging](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_windows_local)
* [Debugging Windows applications with IDA Bochs plugin](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/bochs_debugger_primer)

**Linux local debugging**:

* [Debugging Linux applications locally](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_linux_local)
* [IDA Linux local debugging](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/linuxlocal)
* [Using the Bochs debugger plugin in Linux](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/bochs_linux_primer)

## Remote debugging tutorials

* [General remote debugging with IDA Pro](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/remote-debugging-with-ida-pro)
* [Debugging Mac OSX Applications with IDA Pro](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/mac_debugger_primer2)
* [Debugging iOS Applications with IDA Pro](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/ios_debugger_primer2)
* [Debugging iOS >= 17 Applications via CoreDevice with IDA Pro](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/ios_debugging_coredevice)
* [Debugging a Windows executable remotely](https://docs.hex-rays.com/user-guide/debugger/debugger_windows_local#debugging-a-remote-process)
* [Debugging Windows Kernel with VMWare and IDA WinDbg plugin](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_windbg_kernel)
* [Debugging Linux Kernel under VMWare using IDA GDB debugger](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/gdb_linux_vmware)

**PIN Tracer**:

* [Debugging Linux/Windows applications with PIN Tracer module](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_pin)

## Other specialized debugging tutorials

**Android/Dalvik debugging**:

* [Debugging Dalvik programs](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/debugger_dalvik)

**XNU debugging**:

* [Debugging the XNU Kernel with IDA Pro](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/xnu_debugger_primer)

**QEMU debugging**:

* [Debugging code snippets with QEMU debugger (a la IDA Bochs debugger)](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/primer)

**Trace and replay debugger features**:

* [Trace Replayer and Managing Traces](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/trace_replayer)
* [Using IDA Pro's tracing features](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/tracing)

**Appcall mechanism**:

* [Appcall](https://docs.hex-rays.com/user-guide/debugger/debugger-tutorials/appcall_primer)

## Archived tutorials

Outdated tutorials that no longer apply have been moved to the archive.

* [IDA Win32 to Win32 debugging](https://docs.hex-rays.com/archive/win32towin32)
* [IDA Win32 to Win64 debugging](https://docs.hex-rays.com/archive/win32towin64)
