Отладчик ядра - Kernel debugger

А отладчик ядра это отладчик присутствует в некоторых ядра операционной системы для облегчения отладки и разработки ядра разработчиками ядра. Отладчик ядра может быть заглушкой, реализующей низкоуровневые операции, с полноценным отладчиком, например Отладчик GNU (gdb), работающий на другом компьютере, отправляющий команды на заглушку через последовательная линия или сетевое соединение, или он может предоставлять командную строку, которую можно использовать непосредственно на отлаживаемой машине.

Операционные системы и ядра операционных систем, содержащие отладчик ядра:

  • В Windows NT семейство включает отладчик ядра с именем KD,[1] который может действовать как локальный отладчик с ограниченными возможностями (чтение и запись памяти ядра и установка точек останова)[2] и может подключаться к удаленному компьютеру по последовательной линии, IEEE 1394 связь, USB 2.0 или же USB 3.0 связь.[3] В WinDbg GUI debugger также можно использовать для отладки ядер на локальных и удаленных машинах.
  • BeOS и Хайку включить отладчик ядра, который можно использовать либо с экранной консолью, либо по последовательной линии. Он содержит различные команды для проверки памяти, потоков и других структур ядра. [4]
  • DragonFly BSD
  • Ядро Linux; Отладчик ядра не был включен в основное дерево Linux до версии 2.6.26-rc1, потому что Линус Торвальдс не хотел отладчик ядра в ядре.[5][6]
    • KDB (местный)[7]
    • КГДБ (удаленный)
    • MDB (локальный / удаленный)[8][9][10]
  • NetBSD (DDB для локального, KGDB для удаленного)
  • macOS,[11] Дарвин который управляет XNU ядро с использованием Мах компонент
  • OpenBSD включает ddb, синтаксис которого похож на Отладчик GNU.[12]

Рекомендации

  1. ^ «Среда отладки». Инструменты отладки для Windows (WinDbg, KD, CDB, NTSD). Получено 16 февраля 2020.
  2. ^ «Локальная отладка в режиме ядра». Получено 16 февраля 2020.
  3. ^ «Отладка в режиме реального времени с использованием KD». Получено 16 января 2020.
  4. ^ «Добро пожаловать в страну отладки ядра».
  5. ^ "LWN.net". Получено 29 мая 2008.
  6. ^ Торвальдс, Линус (3 мая 2008 г.). «Linux 2.6.26-rc1». LWN. Получено 9 марта 2015.
  7. ^ Неллиитерта, Харипрасад. «Внутри отладчика ядра Linux». Архивировано из оригинал 21 июня 2008 г.. Получено 29 мая 2008.
  8. ^ "Еженедельные новости ядра LWN". 7 сентября 2008 г.
  9. ^ "Веб-сайт MDB на Github". 1 января 2016 г. Архивировано с оригинал 22 марта 2016 г.
  10. ^ "Еженедельные новости ядра LWN". 28 июня 2010 г.
  11. ^ Сингх, Амит (декабрь 2003 г.). «XNU: ядро». Что такое Mac OS X?. Получено 25 мая 2012. встроенный низкоуровневый отладчик ядра, ddb, является частью компонента Mach XNU, как и kdp, реализация протокола удаленной отладки ядра.
  12. ^ "ddb (4)". Сервер справочной страницы OpenBSD. 6 декабря 2019 г.. Получено 13 декабря 2019. Отладчик ddb предоставляет средства для отладки ядра и анализа ядра после сбоя системы («паники») с синтаксисом, подобным gdb (1).