Отладчик ядра
Отладчик ядра — это отладчик, присутствующий в ядрах некоторых операционных систем для облегчения отладки и разработки ядра разработчиками ядра. Отладчик ядра может быть заглушкой, реализующей низкоуровневые операции, с полноценным отладчиком, таким как GNU Debugger (gdb), работающим на другой машине и отправляющим команды в заглушку по последовательному каналу или сетевому соединению, или он может предоставлять командная строка, которую можно использовать непосредственно на отлаживаемой машине.
Операционные системы и ядра операционных систем, содержащие отладчик ядра:
- Семейство Windows NT включает отладчик ядра KD. [1] который может действовать как локальный отладчик с ограниченными возможностями (чтение и запись памяти ядра и установка точек останова) [2] и может подключаться к удаленному компьютеру через последовательную линию, соединение IEEE 1394 , USB 2.0 или USB 3.0 . соединение [3] Отладчик WinDbg GUI также можно использовать для отладки ядер на локальных и удаленных компьютерах.
- BeOS и Haiku включают в себя отладчик ядра, который можно использовать либо с экранной консолью, либо через последовательный порт. Он содержит различные команды для проверки памяти, потоков и других структур ядра. [4]
- Стрекоза БСД
- ядро Linux ; До версии 2.6.26-rc1 отладчик ядра не был включен в основное дерево Linux, потому что Линус Торвальдс не хотел, чтобы отладчик ядра был в ядре. [5] [6]
- NetBSD (DDB для локального, KGDB для удаленного)
- macOS — ddb для локального, kdp для удаленного [11]
- OpenBSD включает в себя ddb, синтаксис которого аналогичен GNU Debugger . [12]
Ссылки
[ редактировать ]- ^ «Среды отладки» . Средства отладки для Windows (WinDbg, KD, CDB, NTSD) . Проверено 16 февраля 2020 г. .
- ^ «Локальная отладка в режиме ядра» . Проверено 16 февраля 2020 г. .
- ^ «Живая отладка в режиме ядра с использованием KD» . Проверено 16 января 2020 г. .
- ^ «Добро пожаловать в страну отладки ядра» .
- ^ «LWN.net» . Проверено 29 мая 2008 г.
- ^ Торвальдс, Линус (3 мая 2008 г.). «Линукс 2.6.26-rc1» . ЛВН . Проверено 9 марта 2015 г.
- ^ Неллитирта, Харипрасад. «Внутри отладчика ядра Linux» . ИБМ . Архивировано из оригинала 21 июня 2008 года . Проверено 29 мая 2008 г.
- ^ «Еженедельные новости ядра LWN» . 7 сентября 2008 г.
- ^ «Сайт MDB на Github» . 1 января 2016 г. Архивировано из оригинала 22 марта 2016 г.
- ^ «Еженедельные новости ядра LWN» . 28 июня 2010 г.
- ^ Сингх, Амит (декабрь 2003 г.). «XNU: Ядро» . Что такое Mac OS X? . Архивировано из оригинала 2 июня 2020 года . Проверено 25 мая 2012 г.
встроенный низкоуровневый отладчик ядра ddb является частью компонента Mach XNU, как и kdp, реализация протокола удаленной отладки ядра.
- ^ "ддб(4)" . Сервер страниц руководства OpenBSD . 6 декабря 2019 года . Проверено 13 декабря 2019 г.
Отладчик ddb предоставляет средства для отладки ядра и анализа ядра после сбоя системы («паники») с синтаксисом, подобным gdb(1).