Детальная информация

Название Perfly - портативная статическая сборка perf и ее интеграция в контейнерную среду: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_01 «Технология разработки и сопровождения качественного программного продукта» = Perfly – portable static build and its integration into container environment
Авторы Панкова Полина Алексеевна
Научный руководитель Молодяков Сергей Александрович
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика perf ; профилирование ; статическая сборка ; Linux ; Cmake ; статическая компоновка ; контейнер ; profiling ; static build ; static linking ; container
Тип документа Выпускная квалификационная работа магистра
Язык Русский
Уровень высшего образования Магистратура
Код специальности ФГОС 09.04.04
Группа специальностей ФГОС 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-4888
Права доступа Доступ по паролю из сети Интернет (чтение)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\45061
Дата создания записи 04.09.2026

Разрешенные действия

Действие 'Прочитать' будет возможно после подготовки администраторами необходимых файлов

Группа Анонимные пользователи
Сеть Интернет

Объектом исследования является процесс сборки инструмента анализа производительности perf из состава ядра Linux. Цель работы – разработать систему сборки, обеспечивающую получение статически скомпонованного, переносимого между различными версиями ядра и дистрибутивами исполняемого файла perf. В ходе работы из исходного кода ядра Linux версии 6.18 выделено подмножество каталогов (tools/perf, tools/lib, tools/include, tools/arch), необходимое для автономной сборки. Сформировано фиксированное сборочное окружение на базе контейнера openSUSE Leap 15.2, описанное средствами Dockerfile. Внешние зависимости (binutils, elfutils, libunwind, libtraceevent, libpfm4, opencsd и другие) собраны из исходных текстов в статическом виде сценарием deps.sh. Штатная система сборки на основе GNU Make переработана в систему на основе CMake с использованием механизма пресетов, что позволило получить статическую (perfly) конфигурацию. Результатом является воспроизводимый процесс сборки и переносимый бинарный файл, пригодный для применения на целевых системах с устаревшими версиями ядра.

The subject of the research is the build process of the perf performance analysis tool shipped within the Linux kernel. The aim of the work is to develop a build system that produces a statically linked perf executable portable across different kernel versions and Linux distributions. During the work, a subset of directories (tools/perf, tools/lib, tools/include, tools/arch) required for a standalone build was extracted from the Linux kernel source tree version 6.18. A fixed build environment based on an openSUSE Leap 15.2 container was created and described by means of a Dockerfile. External dependencies (binutils, elfutils, libunwind, libtraceevent, libpfm4, opencsd and others) were built from source as static libraries by the deps.sh script. The original GNU Make based build system was reworked into a CMake based one using the presets mechanism, which made it possible to obtain a static (perfly) configuration. The result is a reproducible build process and a portable binary suitable for use on target systems with outdated kernel versions.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Интернет Авторизованные пользователи СПбПУ
Интернет Анонимные пользователи
...