Настройка WinDBG kernel debugger для отладки гостевой системы в VirtualBox.
Коротко, ничего лишнего.
WinDBG устанавливается на хосте, отлаживается система внутри VirtualBox.
Считаем что ОС Windows Vista или Windows 7 (x86 или x64) уже установлены.
1. Останавливаем эмуляцию, открываем свойства виртуальной машины.
Переходим на вкладку "COM-порты", включаем порт COM1.
Режим порта "Хост-канал", чекбокс "Создать канал" установлен.
Прерывание 4, порт 0x3F8.
Путь к порту/файлу: \\.\pipe\wmdbgcom1
2. Включаем эмуляцию, ждем загрузки гостевой ОС. Открываем cmd.exe c правами админа.
Вводим:
bcdedit /dbgsettings SERIAL DEBUGPORT:1 BAUDRATE:115200
bcdedit /bootdebug on
bcdedit /debug on
3. Запускаем WinDBG на хосте, открываем File - Kernel Debug, вкладка "COM"
В окошке вводим наши параметры:
Port: \\.\pipe\wmdbgcom1
Baud Rate: 115200
Установить галочку "Pipe"
Нажимаем ОК
4. Перезагружаем гостевую ОС в VirtualBox
5. Загружаем отладочные символы из интернета: ждем когда отладчик прицепится, ждем загрузки гостевой ОС, переходим в WinDBG, жмем Ctrl+Break. После остановки и перехода в режим отладки, в главном меню WinDBG выбираем пункт File - Symbol search path
Вводим: SRV*f:\localsymbols*http://msdl.microsoft.com/download/symbols
Жмем ОК.
В командной строке отладчика вводим: .reload
Ждем завершения операции
6. Все, отлаживаемся на здоровье
Важно: без запущенного отладчика гостевая ОС будет стартовать оооочень долго. Поэтому без WinDBG теперь эта виртуалка работать не будет. Чтобы вернуть все назад, нужно отключить отладку в гостевой ОС. Или как вариант - выключить COM порт в настройках VirtualBox (это проще)
Читать дальше...