Компания Canonical представила утилиту etrace и добавила поддержку LZO в snap
1 ноября 2020 года
Компания Canonical представила утилиту etrace, предназначенную для отслеживания активности во время выполнения приложения. Программа напоминает утилиты strace и ltrace, и также использует ptrace в процессе работы. Код распространяется под лицензией GPLv3.
Основным назначением etrace является отладка и анализ приложений, запускаемых из пакетов в формате snap. Утилита позволяет быстро оценить какие программы и какие файлы используются при запуске snap-пакета. Предоставляются две команды - "exec" и "file", позволяющие получить информацию об обращении к файлам и выполнению других процессов. В первом случае отслеживается работа системных вызовов, связанных с работой с файлами, а во втором перехватывается семейство системных вызов execve. $ etrace exec telegram-desktop—no-window-wait 56 exec calls during snap run: Start Stop Elapsed Exec 0 95417 95.417022ms /snap/bin/telegram-desktop 14991 20267 5.276918ms /usr/lib/snapd/snap-seccomp 38522 39649 1.127004ms /usr/lib/snapd/snap-device-helper ... 88778 93460 4.682064ms snap-update-ns 95417 100613 5.196094ms /usr/lib/snapd/snap-exec 100613 212749 112.13684ms /snap/telegram-desktop/1708/bin/desktop-launch 105275 107645 2.36988ms /usr/bin/date 115309 118616 3.30615ms /usr/bin/getent ... 120239 122471 2.232074ms /usr/bin/md5sum 192968 196316 3.347873ms /usr/bin/head 199725 203120 3.395795ms /usr/bin/ln 204533 207864 3.331899ms /usr/bin/rm 208199 211477 3.277063ms /usr/bin/ln 212749 6000720 5.787970066s /snap/telegram-desktop/1708/usr/bin/telegram-desktop Total time: 6.000720024s Total startup time: 6.008373172s
Утилита также может применяться для определения узких мест в производительности графических приложений на базе X11, и показывает какое время приложение затрачивает на инициализацию до начала отрисовки окна. Дополнительно доступны специфичные для snap опции "--reinstall-snap" и "--clean-snap-user-data", дающие возможность перед запуском переустановить snap-пакет для проведения измерения без учёта кэша или удалить связанные с пакетом пользовательские данные.
Кроме того, компания Canonical объявила о реализации поддержки в snap-пакетах алгоритма сжатия LZO. Алгоритм LZO сфокусирован на достижении максимальной скорости распаковки, ценой (Архивная копия от 13 октября 2017 на Wayback Machine) увеличения размера итогового архива. При тестировании пакета с Chromium применение LZO вместо используемого по умолчанию алгоритма XZ позволяет в 2-3 раза ускорить запуск snap-пакета за счёт сокращения времени на распаковку образа SquashFS.
В частности, первый запуск Chromium, установленного из обычного deb-пакета, занимает около 1.7 секунд. Запуск из snap при использовании занимает 8.1 сек, а при LZO - 3.1. При повторном запуске, в условиях когда данные прокэшированы в памяти, время запуска составляет 0.6, 0.7 и 0.6 сек. соответственно. Размер snap-пакета при использовании LZO увеличился со 150 до 250 МБ.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.