Запись и воспроизведение отладки - Record and replay debugging

Запись и воспроизведение отладки это процесс записи выполнения программы, чтобы ее можно было воспроизвести в отладчик чтобы помочь диагностировать и устранить дефекты.[1] Эта концепция аналогична использованию регистратор полетных данных для диагностики причины неисправности полета самолета.[2]

Запись и воспроизведение

Запись и воспроизведение записи отладчиков состояние приложения на каждом этапе процесса программы и выполнения потока, включая взаимодействие с памятью, детерминированные и недетерминированные входные данные, состояние системных ресурсов и сохранение его на диске в журнале.[3] Запись позволяет воспроизводить программу снова и снова и отлаживать именно так, как это произошло.

Применение

Записи можно делать в одном месте и воспроизводить в другом,[4] что делает его полезным для удаленной отладки.

Отладка с записью и воспроизведением особенно полезна для отладки прерывистых и недетерминированных дефектов, которые может быть трудно воспроизвести.

Технология отладки записи и воспроизведения часто является фундаментальной для обратная отладка и отладка путешествия во времени.

Отладчики записи и воспроизведения

  • GDB (GNU)
  • Живой рекордер (отменить)
  • rr (Mozilla)
  • TotalView (RogueWave)

использованная литература

  1. ^ Mozilla (2017). «Техническая запись и воспроизведение расширенного технического отчета о возможности развертывания». arXiv:1705.05937 [cs.PL ].
  2. ^ Зикари, Роберто. «О надежности программного обеспечения. Интервью с Барри Моррисом и Дейлом Вайлом». ODBMS Industry Watch. ODBMS Industry Watch. Получено 2 апреля 2019.
  3. ^ Undo, Ltd. «Система и метод отладки компьютерных программ». Патенты Google. Патентное ведомство США. Получено 23 февраля 2016.
  4. ^ Undo, Ltd. «Удаленная запись». Отменить документацию. Отменить, ООО. Получено 1 октября 2019.