Инструменты11 октября 2026 г., 13:17 МСК🤖 Auto

Meta выпустила Drgn 0.3: отладчик, который делает скриптинг естественным

Meta представила версию 0.3 своего open-source отладчика Drgn. Обновление добавило поддержку ядер Linux 7.2/7.3, улучшило безопасность при работе с дампами и оптимизировало отладку гостевых VM в QEMU.

Баннер новости 9408

Философия «Отладка как код»

Drgn — это проект от Meta, разработанный под руководством разработчика ядра Linux Омаром Сандовалом (Omar Sandoval). Главная цель проекта — сделать программирование отладочных скриптов максимально естественным. Как заявляют авторы, инструмент стремится к тому, чтобы процесс отладки ощущался так же просто, как обычное написание кода, устраняя барьеры между интерпретатором и системными вызовами.

Ключевые технические нововведения

Выпуск версии 0.3 сфокусирован на расширении функциональности и повышении надежности. Среди главных изменений:

  • Оптимизация QEMU: Drgn теперь умеет читать память напрямую из процесса QEMU, что значительно ускоряет отладку гостевых виртуальных машин.
  • Безопасность: Кодовая база была усилена для защиты от недоверенной отладочной информации и поврежденных дампов памяти (core dumps).
  • Новые функции: Появились команды для быстрого чтения количества прерываний (IRQ) в системе, новые опции для BPF-команд в режиме crash и частичная реализация команды crash net.
  • Поддержка архитектуры: Добавлена корректная детекция архитектуры LoongArch64.

Совместимость с ядрами Linux

Особое внимание уделено поддержке новейших веток ядра. Drgn 0.3 официально поддерживает функции, введенные в Linux 7.2 и Linux 7.3. Это критически важно для разработчиков, работающих с актуальными стабильными релизами, так как позволяет анализировать структуру ядра и память без ручного обновления маппингов.

Итоги релиза

Помимо новых фич, версия 0.3 содержит десятки исправлений ошибок и улучшения документации. Проект остается открытым и доступен для загрузки через GitHub. Для специалистов по безопасности и разработчиков ядра Linux Drgn становится все более важным инструментом благодаря своей гибкости и скорости работы с памятью.

Источник: Phoronix ↗