Инструмент отладки .ASM - PullRequest
0 голосов
/ 06 февраля 2012

Мне интересно, какой инструмент отладки я могу использовать для программы сборки и как его использовать.

Я написал простой сборочный загрузчик. Тем не менее, это не совсем работает должным образом, хотя я думаю, что логика верна. Итак, я пытаюсь использовать отладчик, чтобы пройти через загрузчик, проверить состояние реестра и т. Д.

Я попробовал GDB в Ubuntu, скомпилировав мои .asm в .elf и .o (нужно ли это делать? Если да, каков следующий шаг?) Также я прочитал, что в симуляторе Bochs есть внутренний отладчик , но я не могу найти какой-либо документ, как его использовать. У меня также есть Visual Studio 2010, windbg, но я не знаю, как использовать его для отладки файла .asm.

Если бы вы сделали это раньше, это был бы простой ответ. Любая помощь будет очень признательна.

С уважением

1 Ответ

1 голос
/ 06 февраля 2012

Если вы хотите отлаживать код загрузчика, вам, очевидно, нужно запустить его в той же среде, в которой будет выполняться сам код. Как я уверен, вы уже знаете, код загрузчика выполняется в реальном режиме после загрузки BIOSзаканчивает делать пост.Затем загрузчик загружается в память в 7 часов утра и выполняется переход к этому адресу.

Очевидно, что подобную среду нельзя надежно эмулировать, если у вас уже работает компьютер и уже установлена ​​«настоящая» операционная система.загружен, так как к этому времени ваш процессор находится в защищенном режиме (или длинном режиме, если это AMD64).Ваша единственная возможность на данный момент - использовать QEMU или Bochs для эмуляции реального ПК в вашей операционной системе.Я использовал Bochs для отладки некоторого кода загрузчика, который я написал в прошлом, и он работал довольно хорошо.Обратитесь к страницам руководства за более подробными инструкциями.

...