Доклад

Отладка с помощью аппаратных точек останова и их поддержка в отладчиках

  • На русском языке

Каждый разработчик хотя бы раз, но пользовался отладчиком, чтобы поставить breakpoint. Как оказывается, из-за деталей реализации обычных программных точек останова в некоторых сценариях очень сложно или даже невозможно поймать место ошибки. В докладе рассмотрим технологию аппаратных точек останова, позволяющую обойти указанные ограничения.

Мы начнем с типичного сценария применения программных точек останова в отладке, а затем обсудим, как их реализация может привести к ограничениям их применения. В качестве первого примера рассмотрим отладку микроконтроллера с read-only памятью, где программные точки останова не могут быть эффективно использованы. Далее перейдем к многопоточной среде, где конкуренция между потоками может затруднять процесс отладки. Также обсудим сценарий с самомодифицирующимся кодом, характерным для JIT-компиляции, и увидим, как программные точки останова могут не справиться с этой задачей.

В заключении представлю способ обхода описанных ограничений с помощью аппаратных точек останова и рассмотрю, как современные отладчики реализуют поддержку этих технологий, что делает процесс отладки более эффективным и надежным.

Спикеры

Расписание