Проект bpftime развивает реализацию eBPF, работающую в пространстве пользователя

Представлен проект bpftime, развивающий runtime и виртуальную машину для выполнения обработчиков eBPF в пространстве пользователя. Bpftime позволяет создавать eBPF-сценарии трассировки и вмешательства в работу процессов, реализующие такие возможности, как uprobe и программный перехват всех системных вызовов, работающие целиком в пространстве пользователя. Отмечается, что благодаря исключению лишних переключений контекста bpftime позволяет добиться десятикратного снижения накладных расходов по сравнению с использованием функциональности uprobe и uretprobe, предоставляемой ядром Linux. Кроме того, bpftime значительно упрощает отладку, потенциально может применяться на системах без ядра Linux и не требует расширенных привилегий, необходимых для загрузки eBPF-приложения в ядро. Код проекта написан на языках С/C++ и распространяется под … Читать далее Проект bpftime развивает реализацию eBPF, работающую в пространстве пользователя

Выпуск стандартной Си-библиотеки PicoLibc 1.8.6

Опубликован релиз стандартной Си-библиотеки PicoLibc 1.8.6, развиваемой Китом Паккардом (Keith Packard, лидер проекта X.Org) для применения на встраиваемых устройствах с ограниченным размером постоянного хранилища и оперативной памяти. При разработке часть кода заимствована из библиотеки newlib от проекта Сygwin и AVR Libc, развивавшейся для микроконтроллеров Atmel AVR. Код PicoLibc распространяется под лицензией BSD. Поддерживается сборка библиотеки для архитектур ARM (32-bit), Aarch64, i386, RISC-V, x86_64, m68k и PowerPC. Изначально проект развивался под именем «newlib-nano» и был нацелен на переработку некоторых ресурсоёмких функций Newlib, которые было проблематично использовать на встраиваемых устройствах с небольшим ОЗУ. Например, в PicoLibc функции stdio заменены на компактный вариант … Читать далее Выпуск стандартной Си-библиотеки PicoLibc 1.8.6

Выпуск DietPi 9.0, дистрибутива для одноплатных ПК

Опубликован выпуск специализированного дистрибутива DietPi 9.0, предназначенного для использования на одноплатных ПК на базе архитектур ARM и RISC-V, таких как Raspberry Pi, Orange Pi, NanoPi, BananaPi, BeagleBone Black, Rock64, Rock Pi, Quartz64, Pine64, Asus Tinker, Odroid и VisionFive 2. Дистрибутив построен на пакетной базе Debian и доступен в сборках для более, чем 50 плат. DietPi также может применяться для создания компактных окружений для виртуальных машин и обычных ПК на базе архитектуры x86_64. Сборки для плат отличаются компактностью (в среднем 130 МБ) и занимают меньше места на накопителе, по сравнению с Raspberry Pi OS и Armbian. Проект оптимизирован для минимального потребления … Читать далее Выпуск DietPi 9.0, дистрибутива для одноплатных ПК

Для ядра Linux подготовлены оптимизации, повышающие производительность планировщиков ввода/вывода

Йенс Эксбо (Jens Axboe), создатель io_uring и планировщиков ввода/вывода CFQ, Deadline и Noop, продолжил свои эксперименты с оптимизацией ввода/вывода в ядре Linux. На этот раз под его внимание попали планировщики ввода/вывода BFQ и mq-deadline, оказавшиеся узким местом как минимум в случае скоростных накопителей NVMe. Как показало изучение ситуации, одной из ключевых причин неоптимальной производительности подсистем планировщиков ввода/вывода стали проблемы с конкурирующими блокировками («lock contention«, попытка получить блокировку, удерживаемую другим потоком). Благодаря мерам, нацеленным на снижение соперничества при обработке блокировок, таким как сериализация диспетчеризации и вставки запросов, скорость работы плинировщиков выросла в ряде ситуаций в разы (в IOPS). При тестировании планировщика … Читать далее Для ядра Linux подготовлены оптимизации, повышающие производительность планировщиков ввода/вывода

Разработчики FreeBSD обсуждают использование языка Rust в базовой системе

Алан Сомерс (Alan Somers), разработчик новой реализации драйвера FUSE для FreeBSD и автор Rust-обвязок над некоторыми библиотеками FreeBSD, начал обсуждение процесса включения кода на языке Rust в состав базовой системы. В ходе дискуссии коммиттеров проекта были определены цена и преимущество внедрения. Ценой включения поддержки Rust станет удвоение времени сборки, а преимуществом — упрощение разработки некоторых утилит. Список утилит, которые есть намерение переписать на языке Rust, если бы поддержка Rust появилась в базовой системе: ctl-exporter (экспорт статистики ctlstat в Prometheus). Тесты fusefs. devd . zfsd. nscd. Компоненты стеков 802.11ac и Lightning, работающие в пространстве пользователя. freebsd-kpi-r14-0. Список портов на языке Rust, … Читать далее Разработчики FreeBSD обсуждают использование языка Rust в базовой системе

8.2% наиболее популярных загрузок в NPM приходится на устаревшие пакеты

Исследователи из компании Aqua Security опубликовали результаты анализа статистики о 50 тысячах наиболее загружаемых пакетов в репозитории NPM. 7500 (15%) из наиболее загружаемых пакетов оказались связаны с устаревшими пакетами и прекратившими существование проектами. Для упрощения определения устаревших пакетов среди зависимостей, используемых в своём проекте, предложена утилита Dependency-Deprecated-Checker, опубликованная под лицензией MIT. В 4100 (8.2%) рассмотренных пакетов в цепочке зависимостей выявлены пакеты, официально объявленные в NPM устаревшими или связанные с устаревшими проектами (например, пакет request помечен устаревшим, но продолжает использоваться как прямая зависимость у 55000 пакетов). 2300 (4.6%) пакетов связаны с репозиториями на GitHub, переведёнными в разряд архивных (разработка прекращена, например, … Читать далее 8.2% наиболее популярных загрузок в NPM приходится на устаревшие пакеты

Выпуск СУБД SQLite 3.45

Опубликован релиз SQLite 3.45, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Bentley, Bloomberg, Expensify и Navigation Data Standard. Основные изменения: Все SQL-функции для работы с форматом JSON переписаны и переведены на новый внутренний формат дерева разбора JSONB, который сериализируется и может храниться в БД для исключения повторного разбора при использовании значений JSON. Новые версии функций, формирующих JSON, теперь генерируют бинарный формат JSONB вместо текстового. В функцию json_valid() добавлен … Читать далее Выпуск СУБД SQLite 3.45

Опыт создания хранилища Ceph c пропускной способностью тебибайт в секунду

Инженер из компании Clyso обобщил опыт создания кластера хранения на базе отказоустойчивой распределённой системы Ceph с пропускной способностью, превышающей тебибайт в секунду. Отмечается, что это первый кластер на базе Ceph, который смог достигнуть подобного показателя, но перед получением представленного результата инженерам потребовалось преодолеть серию не очевидных подводных камней. Например, для повышения производительности на 10-20% было достаточно включить на серверах в настройках энергосбережения BIOS работу только в режиме максимальной производительности и отключить c-state (c-state меняет параметры энергосбережения в зависимости от нагрузки, что отражается на Ceph). Также оказалось, что при использовании накопителей NVMe ядро Linux значительное время тратит на обработку spin-блокировок в … Читать далее Опыт создания хранилища Ceph c пропускной способностью тебибайт в секунду

Платформа совместной разработки SourceHut была выведена из строя на 7 дней из-за DDoS-атаки

Разработчики платформы совместной разработки SourceHut опубликовали отчёт об инциденте, в результате которого работа сервиса была нарушена в течение 7 дней из-за продолжительно DDoS-атаки, к которой инфраструктура проекта оказалась не готова. Базовые сервисы удалось восстановить на третий день, но некоторые службы оказались недоступны с 10 по 17 января. На начальном этапе атаки разработчики не успели среагировать и попытаться противостоять проблеме на стороне своих серверов, так весь трафик к серверам SourceHut был полностью блокирован на стороне вышестоящего провайдера. Для обеспечения работы SourceHut использовались серверы в трёх датацентрах. В первом выполнялась рабочая конфигурация, второй использовался для резервного копирования, а третий применялся для экспериментов … Читать далее Платформа совместной разработки SourceHut была выведена из строя на 7 дней из-за DDoS-атаки

Samsung обеспечил поддержку формата изображений JPEG XL

Компания Samsung добавила поддержку формата изображений JPEG XL в приложение для работы с камерой, поставляемое в смартфонах Galaxy S24. Ранее в числе сторонников формата также выступили компании Apple, Facebook, Adobe, Mozilla, Intel, Krita, The Guardian, libvips, Cloudinary, Shopify и Free Software Foundation. До этого компания Google удалила экспериментальную реализацию JPEG XL из кодовой базы Chromium, мотивируя данное решение отсутствием достаточного интереса к формату со стороны экосистемы. Среди преимуществ JPEG XL упоминается снижение размера до 60% по сравнению с изображениями JPEG идентичного качества и наличие расширенных возможностей, таких как HDR, анимация, прозрачность, режим прогрессивной загрузки, плавное ухудшение качества при уменьшении битрейта, … Читать далее Samsung обеспечил поддержку формата изображений JPEG XL

В KDE улучшена поддержка масштабирования и добавлено автосохранение в Dolphin

Нейт Грэм (Nate Graham), разработчик, занимающийся контролем качества в проекте KDE, опубликовал отчёт о подготовке к релизу KDE 6, запланированному на 28 февраля. Кодовая база KDE Plasma 6.0 и KDE Gears 6.0 ответвлена в отдельный репозиторий, а в ветке master началось накопление изменений для KDE Plasma 6.1 и KDE Gears 24.05. Среди включённых в ветку master изменений (появятся в KDE Plasma 6.1 и KDE Gears 24.05): В файловом менеджере Dolphin обеспечено автоматическое сохранение открытых окон и вкладок, состояние которых теперь восстанавливается в случае аварийного завершения или перезапуска системы. Также добавлена возможность управления показом файлов корзины и резервных копий вместе со … Читать далее В KDE улучшена поддержка масштабирования и добавлено автосохранение в Dolphin

Выпуск Wayland-Protocols 1.33

После полугода разработки опубликован выпуск пакета wayland-protocols 1.33, содержащего набор протоколов и расширений, дополняющих возможности базового протокола Wayland и предоставляющих возможности, необходимые для построения композитных серверов и пользовательских окружений. Все протоколы последовательно проходят три фазы — разработка, тестирование и стабилизация. После завершения стадии разработки (категория «unstable«) протокол помещается в ветку «staging» и официально включается в состав набора wayland-protocols, а после завершения тестирования перемещается в категорию стабильных. Протоколы из категории «staging» уже можно применять в композитных серверах и клиентах, где требуется связанная с ними функциональность. В отличие от категории «unstable» в «staging» запрещено внесение изменений, нарушающих совместимость, но в случае выявление … Читать далее Выпуск Wayland-Protocols 1.33

Ханс Райзер прокомментировал перевод ReiserFS в разряд устаревших

В списке рассылки разработчиков ядра Linux опубликованы письма, полученные одним из разработчиков в ходе переписки с Хансом Райзером (Hans Reiser), в 2008 году приговорённым к пожизненному заключению за убийство своей жены в результате ссоры с последующей попыткой сокрытия преступления (в 2025 году Ханс сможет подать ходатайство на условно-досрочное освобождение). В опубликованных письмах Ханс сожалеет о своих ошибках при взаимодействии с сообществом разработчиков, рассуждает о переводе ReiserFS v3 в разряд устаревших в ядре Linux 6.6, анализирует историю разработки ReiserFS, упоминает надежды, связанные с продвижением ReiserFS v4, и поясняет реализованные в ReiserFS v4 технические решения. Комментируя решение об удалении ReiserFS из состава … Читать далее Ханс Райзер прокомментировал перевод ReiserFS в разряд устаревших

Выпуск Hangover 9.0, пакета для запуска Windows-приложений на системах ARM64

Опубликована новая ветка проекта Hangover, позволяющего запускать 32-разрядные Windows-приложения, собранные для архитектур x86 (i386) и ARM32, в окружениях на базе архитектуры ARM64 (Aarch64). В разработке находится реализация варианта Hangover для архитектуры RISC-V. Выпуск основан на кодовой базе Wine 9.0, что отражено в номере версии. Наработки проекта распространяются под лицензией LGPL-2.1. Проект позволяет добиться заметно более высокой производительности по сравнению с запуском Wine целиком в режиме эмуляции, так как при использовании Hangover эмулятор применяется только для выполнения кода самого приложения, а все системные вызовы, библиотеки и компоненты Wine выполняются вне эмулятора в родном для текущей платформы исполнении (Hangover разрывает цепочку эмуляции … Читать далее Выпуск Hangover 9.0, пакета для запуска Windows-приложений на системах ARM64

Компания Foxconn присоединилась к инициативе по защите Linux от патентных претензий

Компания Foxconn вошла в число участников организации Open Invention Network (OIN), занимающейся защитой экосистемы Linux от патентных претензий. Вступлением в OIN компания Foxconn продемонстрировала свою приверженность идеям по совместному развитию инновации и неагрессивному распоряжению патентами. Foxconn занимает 20 место в рейтинге крупнейших корпораций по размеру выручки (Fortune Global 500) и является самым большим в мире контрактным производителем электроники (около 40% всех потребительских электронных устройств произведены в Foxconn). Участники OIN обязуются не выдвигать патентные претензии и безвозмездно разрешают использовать запатентованные технологии в проектах, связанных с экосистемой Linux. В число участников OIN входит более 3800 компаний, сообществ и организаций, подписавших лицензионное соглашение … Читать далее Компания Foxconn присоединилась к инициативе по защите Linux от патентных претензий

Выпуск текстового редактора GNU Emacs 29.2

Проект GNU опубликовал релиз текстового редактора GNU Emacs 29.2. Вплоть до выпуска GNU Emacs 24.5 проект развивался под личным руководством Ричарда Столлмана, который передал пост лидера проекта Джону Вигли (John Wiegley) осенью 2015 года. Код проекта написан на языках Си и Lisp и распространяется под лицензией GPLv3. В новом выпуске на платформе GNU/Linux по умолчанию Emacs выставлен по умолчанию в качестве обработчика схемы URI ‘org-protocol’. Режим «org» позволяет быстро сохранять закладки, заметки и ссылки, используя команду ’emacsclient’, например для сохранения ссылки URL с заголовком можно выполнить ’emacsclient «org-protocol://store-link?url=URL&title=TITLE». Кроме того, в новой версии предложена новая опция ‘tramp-show-ad-hoc-proxies’, при помощи которой … Читать далее Выпуск текстового редактора GNU Emacs 29.2

Уязвимость LeftoverLocals в GPU AMD, Apple, Qualcomm и Imagination

В графических процессорах компаний AMD, Apple, Qualcomm и Imagination выявлена уязвимость (CVE-2023-4969), получившая кодовое имя LeftoverLocals и позволяющая извлечь данные из локальной памяти GPU, оставшиеся после выполнения другого процесса и возможно содержащие конфиденциальную информацию. С практической стороны уязвимость может представлять опасность на многопользовательских системах, в которых обработчики разных пользователей запускаются на одном GPU, а также может применяться во вредоносном ПО для отслеживания активности выполняемых на GPU процессов. Например, в ходе атаки можно определить данные, обрабатываемые выполняемыми на GPU процессами (GPU kernel). Уязвимость вызвана недостаточной изоляцией локальной памяти GPU и отсутствием очистки локальной памяти после выполнения процессов на GPU, в результате … Читать далее Уязвимость LeftoverLocals в GPU AMD, Apple, Qualcomm и Imagination

Обновление X.Org Server 21.1.11 с устранением 6 уязвимостей

Опубликованы корректирующие выпуски X.Org Server 21.1.11 и DDX-компонента (Device-Dependent X) xwayland 23.2.4, обеспечивающего запуск X.Org Server для организации выполнения X11-приложений в окружениях на базе Wayland. В новых версиях устранено 6 уязвимостей, некоторые из которых могут быть эксплуатированы для повышения привилегий в системах, в которых X-сервер выполняется с правами root, а также для удалённого выполнения кода в конфигурациях, в которых для доступа используется перенаправление сеанса X11 при помощи SSH. Выявленные проблемы: CVE-2023-6816 — переполнение буфера, возникающее при передаче некорректного индекса массива в операциях DeviceFocusEvent и ProcXIQueryPointer. Уязвимость вызвана тем, что X-сервер выделяет память массива с учётом фактического числа кнопок, в то … Читать далее Обновление X.Org Server 21.1.11 с устранением 6 уязвимостей

PixieFAIL — уязвимости в сетевом стеке прошивок UEFI, применяемом для PXE-загрузки

В UEFI-прошивках на основе открытой платформы TianoCore EDK2, обычно используемых на серверных системах, выявлено 9 уязвимостей, получивших собирательное кодовое имя PixieFAIL. Уязвимости присутствуют в сетевом стеке прошивок, применяемом для организации сетевой загрузки (PXE). Наиболее опасные уязвимости позволяют неаутентифицированному атакующему организовать удалённое выполнение своего кода на уровне прошивки в системах, допускающих PXE-загрузку с использованием сети IPv6. Менее опасные проблемы приводят к отказу в обслуживании (блокирование загрузки), утечке информации, отравлению кэша DNS и перехвату TCP-сеансов. Большая часть уязвимостей может быть эксплуатирована из локальной сети, но отдельные уязвимости допускают и атаку из внешней сети. Типовой сценарий атаки сводится к мониторингу трафика в локальной … Читать далее PixieFAIL — уязвимости в сетевом стеке прошивок UEFI, применяемом для PXE-загрузки

Доступна СУБД MySQL 8.3.0

Компания Oracle сформировала новую ветку СУБД MySQL 8.3 и опубликовала корректирующее обновление MySQL 8.0.36. Сборки MySQL Community Server 8.3.0 подготовлены для всех основных дистрибутивов Linux, FreeBSD, macOS и Windows. MySQL 8.3.0 является третьим выпуском, сформированным в рамках новой модели формирования релизов, предусматривающей наличие двух типов веток MySQL — «Innovation» и «LTS». Ветки Innovation, к которым отнесены MySQL 8.1, 8.2 и 8.3, рекомендованы для тех, кто хочет раньше получать доступ к новой функциональности. Данные ветки публикуются каждые 3 месяца и поддерживаются только до публикации следующего значительного релиза (например, после появления ветки 8.3 прекращена поддержка ветки 8.2). LTS-ветки рекомендованы для внедрений, которым … Читать далее Доступна СУБД MySQL 8.3.0

Выпуск VirtualBox 7.0.14

Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.0.14, в котором отмечено 14 исправлений. Одновременно сформировано обновление прошлой ветки VirtualBox 6.1.50 с 7 изменениями, в числе которых поддержка пакетов с ядром из дистрибутивов RHEL 9.4 и 8.9, а также реализация возможности импорта и экспорта образов виртуальных машин с контроллерами накопителей NVMe и носителем, вставленным в виртуальный привод CD/DVD. Основные изменения в VirtualBox 7.0.14: Улучшена поддержка 3D. Добавлена поддержка импорта и экспорта образов виртуальных машин в формате OVF, содержащих контроллеры накопителей NVMe. Добавлена поддержка экспорта образов виртуальных машин в формате OVF, содержащих носитель, вставленный в виртуальный привод CD/DVD, привязанный к контроллеру … Читать далее Выпуск VirtualBox 7.0.14