title: Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ñ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð°Ð½Ð°Ð»Ð¸Ð·Ð° Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼ Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ eBPF
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð±Ð°ÐºÐ°Ð»Ð°Ð²ÑÐ°
titleType: Subtitle
title: Development of a program for monitoring and analyzing the performance of embedded systems based on eBPF technology
Creators: name: ÐÐµÐ»ÑÐµÐ², ÐÐ³Ð¾Ñ
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2024
Subjects: eBPF
observability
APM
Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÐµ ÑÐ¸ÑÑÐµÐ¼Ñ
Linux
embedded systems

description: ÐÐºÑÑÐ°Ð»ÑÐ½Ð¾ÑÑÑ ÑÐ°Ð±Ð¾ÑÑ Ð¾Ð±ÑÑÐ»Ð¾Ð²Ð»ÐµÐ½Ð° Ð¿Ð¾ÑÑÐµÐ±Ð½Ð¾ÑÑÑÑ Ð² ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ð¸ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ° Ð´Ð»Ñ Ð¾ÑÐµÐ½ÐºÐ¸ ÑÐ°Ð±Ð¾ÑÐ¾ÑÐ¿Ð¾ÑÐ¾Ð±Ð½Ð¾ÑÑÐ¸ Ð¸ Ð²Ð»Ð¸ÑÐ½Ð¸Ñ Ð½Ð° Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÑ ÑÑÑÑÐ¾Ð¹ÑÑÐ²Ð° ÐÐ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼ Ñ Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸ÐµÐ¼ ÑÐ¾Ð²ÑÐµÐ¼ÐµÐ½Ð½ÑÑ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¹ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¸Ð½ÑÐ¾ÑÐ¼Ð°ÑÐ¸Ð¸ Ð¾ ÑÐ¸ÑÑÐµÐ¼Ðµ. ÐÐ±ÑÐµÐºÑÐ¾Ð¼ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ ÑÐ²Ð»ÑÑÑÑÑ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½ÑÐµ Ð¿ÑÐ¾ÑÐµÑÑÑ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼Ñ. ÐÑÐµÐ´Ð¼ÐµÑÐ¾Ð¼ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ ÑÐ²Ð»ÑÐµÑÑÑ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½ÑÑ Ð¿ÑÐ¾ÑÐµÑÑÐ¾Ð² Ð¸ Ð°Ð½Ð°Ð»Ð¸Ð· Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼. Ð¦ÐµÐ»ÑÑ Ð´Ð°Ð½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ ÑÐ²Ð»ÑÐµÑÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ñ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð°Ð½Ð°Â­ Ð»Ð¸Ð·Ð° Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸, Ð¾ÑÐ¸ÐµÐ½ÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð¹ Ð½Ð° Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ðµ Ð²Ð¾ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼Ð°Ñ, Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ eBPF. Ð ÑÐ¾Ð¾ÑÐ²ÐµÑÑÑÐ²Ð¸Ð¸ Ñ ÑÐµÐ»ÑÑ Ð¸ÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ, Ð² ÑÐ°Ð±Ð¾ÑÐµ ÑÐµÑÐ°ÑÑÑÑ ÑÐ»ÐµÐ´ÑÑÑÐ¸Ðµ Ð·Ð°Ð´Ð°ÑÐ¸: 1. ÐÐ½Ð°Ð»Ð¸Ð· ÑÑÑÐµÑÑÐ²ÑÑÑÐ¸Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ¾Ð² Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð°Ð½Ð°Ð»Ð¸Ð·Ð° Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Â­ ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼. 2. ÐÐ½Ð°Ð»Ð¸Ð· ÑÑÑÐµÑÑÐ²ÑÑÑÐ¸Ñ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¹ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð°Ð½Ð°Ð»Ð¸Ð·Ð° Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ ÑÐ¸ÑÑÐµÐ¼ Ð¸ Ð¾Ð±Ð¾ÑÐ½Ð¾Ð²Ð°Ð½Ð¸Ðµ Ð½ÐµÐ¾Ð±ÑÐ¾Ð´Ð¸Ð¼Ð¾ÑÑÐ¸ Ð²ÑÐ±Ð¾ÑÐ° ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ eBPF. 3. ÐÐ·ÑÑÐµÐ½Ð¸Ðµ Ð¾ÑÐ¾Ð±ÐµÐ½Ð½Ð¾ÑÑÐµÐ¹ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ eBPF Ð¸ Ð¼ÐµÑÐ¾Ð´Ð¾Ð² Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð¸Ñ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼ Ð½Ð° ÐµÑ Ð¾ÑÐ½Ð¾Ð²Ðµ. 4. ÐÐ¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ðµ ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ð¹ Ðº Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ðµ Ð¸ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° ÐµÑ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ. 5. Ð ÐµÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ñ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ñ. 6. ÐÐ¿ÑÐ¾Ð±Ð°ÑÐ¸Ñ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ñ Ð¸ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ðµ Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð°Ð¼Ð¸. Ð ÑÐµÐ·ÑÐ»ÑÑÐ°ÑÐµ ÑÐ°Ð±Ð¾ÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð° Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð° Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð°Ð½Ð°Ð»Ð¸Ð·Ð° Ð¿ÑÐ¾Ð¸Ð·Â­Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ Ð²ÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼ÑÑ ÑÐ¸ÑÑÐµÐ¼ Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ eBPF, ÐºÐ¾ÑÐ¾ÑÐ°Ñ Ð¾Ð±Ð»Ð°Ð´Ð°ÐµÑ ÑÑÐ½ÐºÑÐ¸ÑÐ¼Ð¸ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð° Ð¸ Ð¾ÑÐµÐ½ÐºÐ¸ Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ Ð½Ð° ÑÑÐ¾Ð²Ð½Ðµ Ð²ÑÐµÑ Ð¿ÑÐ¾ÑÐµÑÑÐ¾Ð² ÑÐ¸ÑÑÐµÐ¼Ñ, Ð° ÑÐ°ÐºÐ¶Ðµ ÑÑÐ½ÐºÑÐ¸ÑÐ¼Ð¸ Ð¿ÑÐ¾ÑÐ¸Ð»Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ÑÐ¿Ð¾Ð»Ð½ÑÐµÐ¼Ð¾Ð³Ð¾ ÑÐ°Ð¹Ð»Ð° Ð¿ÑÐ¾ÑÐµÑÑÐ° Ð´Ð»Ñ Ð´Ð°Ð»ÑÐ½ÐµÐ¹ÑÐµÐ¹ Ð¾Ð¿ÑÐ¸Ð¼Ð¸Ð·Ð°ÑÐ¸Ð¸ Ð² ÑÐ°Ð¼ÐºÐ°Ñ ÑÐ°Ð±Ð¾ÑÑ Ð½Ð° ÐºÐ¾Ð½ÐºÑÐµÑÐ½Ð¾Ð¹ ÑÐ¸ÑÑÐµÐ¼Ðµ. Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð½Ð¾Ðµ ÑÐµÑÐµÐ½Ð¸Ðµ Ð±Ð¾Ð»ÐµÐµ Ð¾Ð¿ÑÐ¸Ð¼Ð°Ð»ÑÐ½Ð¾ Ð¸ÑÐ¿Ð¾Ð»ÑÐ·ÑÐµÑ ÑÐµÑÑÑÑÑ ÑÐ¸ÑÑÐµÐ¼Ñ Ð¿Ð¾ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð°Ð¼Ð¸:Ð¿Ð¾ÑÑÐµÐ±Ð»ÑÐµÑ Ð¼ÐµÐ½ÑÑÐµ Ð¿ÑÐ¾ÑÐµÑÑÐ¾ÑÐ½Ð¾Ð³Ð¾ Ð²ÑÐµÐ¼ÐµÐ½Ð¸ Ð¸ Ð¿Ð°Ð¼ÑÑÐ¸, Ð° ÑÐ°ÐºÐ¶Ðµ Ð¾Ð±Ð»Ð°Ð´Ð°ÐµÑ Ð±Ð¾Ð»ÐµÐµ Ð¿ÑÐ¾ÑÑÑÐ¼ Ð¸ Ð¿Ð¾Ð½ÑÑÐ½ÑÐ¼ Ð¸Ð½ÑÐµÑÑÐµÐ¹ÑÐ¾Ð¼ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑÐ²Ð¸Ñ Ð¸ ÑÐ¿Ð¾ÑÐ¾Ð±Ð¾Ð¼ ÑÑÑÐ°Ð½Ð¾Ð²ÐºÐ¸.
description: The acutality of the work is due to the need to create a software tool for evaluating the operability and impact on device performance of embedded systems using modern technologies for obtaining information about the system. The object of the study is the software processes of embedded systems. The subject of the study is the monitoring of software processes and performance analysis of embedded systems. The purpose of this work is to develop a performance monitoring and analysis program focused on use in embedded systems based on eBPF technology. In accordance with the purpose of the study, the following tasks are solved in the work: 1. Analysis of existing monitoring and performance analysis tools for embedded systems. 2. Analysis of existing technologies for developing programs for monitoring and analyzing system performance and justification of the need to choose eBPF technology. 3. Study of the features of eBPF technology and methods of building programs based on it. 4. Defining the requirements for the program and developing its architecture. 5. Program implementation. 6. Testing of the program and comparison with analogues. As a result of the work, a program for monitoring and analyzing the performance of embedded systems based on eBPF technology has been developed, which has functions for monitoring and evaluating performance at the level of all system processes, as well as functions for profiling the executable file of the process for further optimization within the framework of work on a specific system. The developed solution uses system resources more optimally than its analogues: it consumes less processor time and memory, and also has a simpler and more intuitive interface and installation method.