Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

Проект SoLo развивает загрузчик системных so-библиотек для полностью статических Linux-программ

Новости собранные из разных RSS источников
Аватара пользователя
root:#
Site Admin
Сообщения: 2235
Зарегистрирован: Вт ноя 08, 2022 3:27 pm
Благодарил (а): 60 раз
Поблагодарили: 28 раз

Проект SoLo развивает загрузчик системных so-библиотек для полностью статических Linux-программ

Сообщение root:# »

Проект SoLo развивает загрузчик системных so-библиотек для полностью статических Linux-программ
Опубликован проект SoLo, позволяющий полностью статическим Linux-программам, собранным с musl, загружать через dlopen() установленные в системе glibc-библиотеки, в первую очередь GPU-драйверы. Обычно статическая сборка несовместима с драйверами Vulkan и OpenGL, которые дистрибутивы поставляют в виде разделяемых библиотек, собранных с glibc. SoLo снимает это ограничение при помощи встроенного в исполняемый файл загрузчика ELF и прослойки, транслирующей вызовы glibc в musl-рантайм процесса — сам glibc в процесс не загружается, второго libc в процессе не появляется. Код написан на C++ и распространяется под лицензией MIT. В репозиторий входит наглядный пример: статический исполняемый файл, в котором нет ни интерпретатора, ни динамической секции, штатным для Vulkan способом находит установленный в системе драйвер, загружает его вместе с зависимостями, выполняет вычислительный шейдер и сохраняет результат в PNG. В рамках непрерывной интеграции пример проверяется на Alpine, Fedora и Ubuntu с пакетами Lavapipe из штатных репозиториев этих дистрибутивов. Подход уже используется на практике — им формируются релизные сборки эмулятора терминала Shitty.
Источник: https://www.opennet.ru/opennews/art.shtml?num=66103