LinuxDoc.ru - Новости Linux - ktap система динамической трассировки для ядра Linux

ktap система динамической трассировки для ядра Linux

LinuxDoc.Ru,
Представлен первый выпуск проекта ktap, в рамках которого развивается новая система динамической трассировки работы ядра Linux, предоставляющая собственный скриптовый язык для создания сценариев. Сценарии могут быть использованы как для автоматизации выявления узких мест, так и для изменения параметров работы ядра. При этом возможности не ограничиваются мелким тюнингом, скрипты ktap могут использоваться для изменения поведения систем ядра и даже для реализации дополнительной функциональности.



От существующих систем, таких как SystemTap и DTrace, ktap отличается иной архитектурой и другими принципами организации выполнения скриптов трассировки. Скрипты преобразуются в байткод, загружаемый и выполняемый уже работающим центральным модулем ktap, что не требует сборки и загрузки отдельных модулей ядра из расчёта отдельный модуль для каждого из сценариев трассировки. Байткод выполняется внутри специальной регистровой виртуальной машины ktapvm (подобный подход близок к DTrace и отличается от SystemTap, в котором используется транслятор). Байткод является универсальным и может быть использован без пересборки в ядрах на системах с различной архитектурой, т.е. скрипт может быть собран и проверен на ПК разработчика и потом выполнен на встраиваемом устройстве на базе другой процессорной архитектуры.

Синтаксис языка сценариев напоминает язык Си и отличается в основном методом объявления переменных (в ktap используются динамические переменные, без явного объявления), поддержкой вместо массивов табличных структур (хэши ключ/значение, позволяющие указывать t["key"] = 10), отсутствием необходимости завершения строки знаком ';'. Замедление работы ядра при активации ktap не превышает 10%, после интеграции JIT в виртуальную машину ktapvm паразитную нагрузку планируется свести к 3-5%.




Первый выпуск ktap пока доступен только для 32- и 64-разрядных систем x86. Среди поддерживаемых возможностей отмечается поддержка установки точек трассировки (tracepoints), анализ работы системных вызовов, использование контрольных проверок kprobes и kretprobes, отслеживание вызова обработчиков событий от таймера, оценка состояния стека. Для использования в скриптах поставляется встроенная библиотека функций для упрощения работы с различными низкоуровневыми механизмами трассировки.

Код проекта распространяется под лицензией GPL и оформлен в виде модуля для ядра Linux. Система может использоваться с ядрами начиная с версии 3.4 (ядро должно быть собрано с опциями CONFIG_EVENT_TRACING, CONFIG_PERF_EVENTS, CONFIG_KPROBES и CONFIG_KALLSYMS) и не требует применения дополнительный патчей для кода ядра.


Пример простой функции трассировки системных вызовов:

function eventfun (e) {
printf("%d %dt%st%s", cpu(), pid(), execname(), e.tostring())
}
kdebug.probe("tp:syscalls", eventfun)

kdebug.probe_end(function () {
printf("probe endn")
})
linux

Новости Linux

. ktap система динамической трассировки для ядра Linux ktap система динамической трассировки для ядра Linux
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Если Вы обнаружите в опубликованных документах ошибки, опечатки, несоответствия и неточности - сообщите о них.
>>> Опубликованы корректирующие выпуски Firefox 82.0.3, Firefox 78.4.1 и Thunderbird 78.4.2, в которых устранена критическая уязвимость (CVE-2020-26950). Доступ к подробной информации о характере уязвимости пока ограничен, сообщает лишь, что проблема связана с неверным использованием кода операции MCallGetProperty и может привести к обращению к уже освобождённой области памяти (use-after-free), пригодному для создания рабочего эксплоита.
>>> После более года разработки и шести с половиной лет с момента прошлого значительного выпуска сформирован корректирующий релиз офисного пакета Apache OpenOffice 4.1.8, в котором предложено 24 исправления. Готовые пакеты подготовлены для Linux, Windows и macOS.
>>> Что может случиться с ноутбуком и как решить проблему
Любая компьютерная техника периодически ломается, и ноутбуки не исключение. В отличие от стационарных компьютеров, элементарное обслуживание которых может сделать даже продвинутый пользователь, ноутбук нуждается в особом подходе.
>>> В состав Chrome включена новая реализация интерфейса встроенного просмотрщика документов в формате PDF. Интерфейс примечателен выносом в верхнюю панель всех настроек. Если раньше в верхней панели отображались только название файла, информация о страницах, кнопки поворота, печати и сохранения, то теперь в неё перенесено и содержимое боковой панели, включавшей элементы управления масштабированием и размещения документа по размеру страницы. Добавлена возможность сохранения отредактированных PDF-форм, а также режим двухстраничного просмотра.


Редакция портала:

Добро пожаловать на сайт, посвященный документации к ОС Linux, ее переводу и распространению. Мы надеемся, что Вы найдете тут всю необходимую информацию. Здесь представлены три основных вида документации на русском языке: руководства (man-pages), HOWTO и mini-HOWTO. В скором будущем возможно появление и других видов документации.
Авторские права на представленные документы принадлежат авторам перевода и распространяются в соответствии со Стандартной Общественной Лицензией, если в документе не указано обратное.
Если Вы обнаружите в опубликованных документах ошибки, опечатки, несоответствия и неточности - сообщите о них.


Живая лента

Глава РАН заявил о потере Россией космоса Провал вселенского масштаба

STFW.Ru: Мы больше не можем конкурировать в космосе с другими ведущими в этой области державами. К такому печальному выводу подвел присутствующих в среду на заседании комитета Госдумы РФ по ...

В Италии антитела к коронавирусу нашли в крови, взятой в сентябре 2019 года

STFW.Ru: В Италии коронавирус Sars-Cov-2 распространялся уже в сентябре 2019 года: антитела к нему нашли в крови, взятой на анализ еще в том месяце."Мы провели анализ и изучили специфические ...

Изучайте детальный обзор брокера Герчик Ко от экспертов МОФТ

STFW.Ru: Gerchik Co — востребованный Форекс брокер, основателем которого является популярный трейдер, финансовый аналитик и эксперт — Александр Герчик. Эта компания уже длительное время является ...

12:03 Второй выпуск Glimpse, форка графического редактора GIMP


12:03 Опубликован web-браузер Min 1.13


12:03 Выпуск дистрибутива Zorin OS 15.2


12:03 Объявлено об объединении проектов FreeNAS и TrueNAS


06:01 Из Kali Linux уберут права root по умолчанию


06:01 Tails 4.2.2 - экстренный релиз


06:01 РЖД закупит 15 000 компьютеров с российскими процессорами «Эльбрус»


06:01 Минкомсвязи утвердило требования к российским DNS


08:11 Выпуск Debian 9.6


08:11 Четвёртый бета-выпуск FreeBSD 12.0. Прекращение поддержки FreeBSD 10


08:11 Mozilla тестирует в Firefox две новые возможности: Price Wise и Email Tabs


08:11 В Chrome развивается API для создания полноценных пользовательских приложений


08:11 Выпуск wayland-protocols 1.17 с поддержкой буфера обмена по средней кнопке мыши