The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

·21.03 Выпуск облачной платформы Apache CloudStack 4.18 (10 +3)
  Состоялся релиз облачной платформы Apache CloudStack 4.18, позволяющей автоматизировать развертывание, настройку и поддержание приватной, гибридной или публичной cloud-инфраструктуры (IaaS, инфраструктура как сервис). Платформа CloudStack была передана Фонду Apache компанией Citrix, которая получила проект после поглощения компании Cloud.com. Установочные пакеты подготовлены для CentOS, Ubuntu и openSUSE.

CloudStack не зависит от типа гипервизора и позволяет использовать в одной cloud-инфраструктуре одновременно Xen (XCP-ng, XenServer/Citrix Hypervisor и Xen Cloud Platform), KVM, Oracle VM (VirtualBox) и VMware. Для управления пользовательской базой, хранилищем, вычислительными и сетевыми ресурсами предлагается web-интерфейс и специальный API. В простейшем случае облачная инфраструктура на базе CloudStack состоит из одного управляющего сервера и набора вычислительных узлов, на которых организуется выполнение гостевых ОС в режиме виртуализации. В более сложных системах поддерживается использование кластера из нескольких управляющих серверов и дополнительных балансировщиков нагрузки. При этом, инфраструктура может быть разбита на сегменты, каждый из которых функционирует в отдельном дата-центре.

Выпуск 4.18 отнесён к категории LTS (Long Term Support) и будет сопровождаться в течение 18 месяцев. Основные новшества:

  • Добавлена поддержка "Edge Zone", легковесных зон, обычно привязанных к одному хост-окружению (в настоящее время поддерживаются только хосты с гипервизором KVM). В Edge Zone можно производить все операции с виртуальными машинами, за исключением операций с общим хранилищем и доступом к консоли, требующим CPVM (Console Proxy VM). Поддерживается прямая загрузка (direct-download) шаблонов и использование локального хранилища.
  • Реализована поддержка автомасштабирования виртуальных машин (параметр "supports_vm_autoscaling").
  • Добавлен API для управления пользовательскими данными.
  • Добавлен фреймворк для двухфакторной аутентификации.
  • Добавлена поддержка аутентификации при помощи одноразовых паролей с ограниченным временем действия (TOTP Authenticator).
  • Добавлена поддержка шифрования разделов хранилища.
  • Интегрирована поддержка SDN Tungsten Fabric.
  • Добавлена поддержка Ceph Multi Monitor.
  • Реализован API для доступа к консоли.
  • Улучшены средства разделения доступа к консоли.
  • Предложен новый интерфейс с глобальными настройками.
  • Предоставлена поддержка настройки MTU для сетевых интерфейсов VR (Virtual Router). Добавлены настройки vr.public.interface.max.mtu, vr.private.interface.max.mtu и allow.end.users.to.specify.vr.mtu.
  • Реализованы адаптивные группы привязки виртуальной машины к хост-окружению (Affinity Groups).
  • Предоставлена возможность определения собственных DNS-серверов.
  • Улучшен инструментарий для поддержки гостевых операционных систем.
  • Добавлена поддержка дистрибутива Red Hat Enterprise Linux 9.
  • Для гипервизора KVM предложен плагин Networker Backup.
  • Предоставлена возможность назначения собственных тарифов для квот на трафик.
  • Для KVM добавлена поддержка защищённой консоли VNC с TLS-шифрованием и доступом на базе сертификатов.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск облачной платформы Apache CloudStack 4.17
  3. OpenNews: 17 проектов Apache оказались затронуты уязвимостью в Log4j 2
  4. OpenNews: Альтернативный пользовательский интерфейс для Apache CloudStack
  5. OpenNews: CloudStack получил статус первичного проекта Apache
  6. OpenNews: PaaS-фреймворк Stratos получил статус первичного проекта Apache
Обсуждение (10 +3) | Тип: Программы |


·21.03 Релиз утилиты cURL 8.0 (72 +15)
  Утилите для получения и отправки данных по сети curl исполнилось 25 лет. В честь данного события сформирована новая значительная ветка cURL 8.0. Первый выпуск прошлой ветки curl 7.x был сформирован в 2000 году и с тех пор кодовая база увеличилась с 17 до 155 тысяч строк кода, число опций командной строки доведено до 249, реализована поддержка 28 сетевых протоколов, 13 криптографических библиотек, 3 SSH-библиотек и 3 библиотек HTTP/3. Код проекта распространяется под лицензией Curl (вариант лицензии MIT).

Для HTTP/HTTPS утилита предоставляет возможность гибкого формирования сетевого запроса с заданием таких параметров, как Cookie, user_agent, referer и любых других заголовков. Помимо HTTPS, HTTP/1.x, HTTP/2.0 и HTTP/3, утилита поддерживает отправку запросов с использованием SMTP, IMAP, POP3, SSH, Telnet, FTP, SFTP, SMB, LDAP, RTSP, RTMP и других сетевых протоколов. Параллельно развивается библиотека libcurl, предоставляющая API для задействования всех функций curl в программах на таких языках, как Си, Perl, PHP, Python.

Новый выпуск cURL 8.0 не содержит кардинальных новшеств или нарушающих совместимость изменений API и ABI. Смена нумерации обусловлена желанием отметить 25-летие проекта и наконец-то сбросить вторую цифру версии, которая накапливается уже более 22 лет.

В новой версии устранено 6 уязвимостей в обработчиках протоков TELNET, FTP, SFTP, GSS, SSH, HSTS из которых 5 отмечены как незначительные, а одна имеющая умеренный уровень опасности (CVE-2023-27535, возможность повторного использования ранее созданного FTP-соединения с другими параметрами, в том числе при несовпадении учётных данных пользователя). Из изменений, не связанных с устранением уязвимостей и ошибок, отмечается только прекращение поддержки сборки на системах, для которых отсутствуют рабочие 64-разрядные типы данных (для сборки теперь требуется наличие типа "long long").

Вскоре после релиза 8.0.0 была выпущена версия 8.0.1 с исправлением найденной по горячим следам ошибки, приводящей к аварийному завершению в некоторых тестовых сценариях.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск утилиты curl 7.75.0 с экспериментальным HTTP-бэкендом на языке Rust
  3. OpenNews: Новая версия curl 7.66.0 с начальной поддержкой HTTP/3
  4. OpenNews: Уязвимости в Cisco RV32x были "устранены" через блокировку запросов от утилиты curl
  5. OpenNews: Лидером загрузок Curl стало вредоносное ПО
  6. OpenNews: Утилита Curl празднует десятилетие
Обсуждение (72 +15) | Тип: Программы |


·21.03 Выпуск Tor Browser 12.0.4 и дистрибутива Tails 5.11 (10 +6)
  Сформирован релиз специализированного дистрибутива Tails 5.11 (The Amnesic Incognito Live System), основанного на пакетной базе Debian и предназначенного для анонимного выхода в сеть. Анонимный выход в Tails обеспечивается системой Tor. Все соединения, кроме трафика через сеть Tor, по умолчанию блокируются пакетным фильтром. Для хранения пользовательских данных в режиме сохранения пользовательских данных между запусками применяется шифрование. Для загрузки подготовлен iso-образ, способный работать в Live-режиме, размером 1.2 ГБ.

В новой версии Tails включена поддержка размещения подкачки (swap) в блочном устройстве zRAM, обеспечивающем хранение данных в ОЗУ в сжатом виде. Применение zRAM на системах с ограниченным объёмом ОЗУ позволяет держать запущенными больше приложений и вовремя заметить нехватку памяти, благодаря более плавному замедлению работы перед подвисанием. Разрешено создание скринкастов при помощи штатных возможностей GNOME. Обновлены версии Tor Browser 12.0.4 и Thunderbird 102.9.0. Изменено оформление секции разблокировки постоянного хранилища на экране приветствия входа в систему (Welcome Screen).

Новая версия Tor Browser 12.0.4 синхронизирована с кодовой базой Firefox 102.9 ESR, в которой устранено 10 уязвимостей. Обновлена версия дополнения NoScript 11.4.18. Включена настройка network.http.referer.hideOnionSource.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск Tor Browser 12.0.3 и дистрибутива Tails 5.10
  3. OpenNews: Обновление Tor 0.4.5.16 и 0.4.7.13 с устранением уязвимости, связанной с утечкой DNS-запросов
  4. OpenNews: Выпуск Tor Browser 12.0
  5. OpenNews: Выпуск Arti 1.1, официальной реализации Tor на языке Rust
  6. OpenNews: Выпуск новой стабильной ветки Tor 0.4.7
Обсуждение (10 +6) | Тип: Программы |


·21.03 Выпуск набора базовых системных утилит GNU Coreutils 9.2 (9 +7)
  Доступна стабильная версия набора базовых системных утилит GNU Coreutils 9.2, в состав которого входят такие программы, как sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls и т.д.

Ключевые новшества:

  • В утилиту cksum добавлена опция "--base64" (-b) для вывода и проверки контрольных сумм, закодированных в формате base64. Также добавлена опция "--raw" для вывода только исходной контрольной суммы без указания имени файла и прочей информации.
  • В утилиты cp, mv и install добавлена опция "--debug" для вывода детальных сведений о копировании файла.
  • В утилиту ls добавлена опция "--time=modification" для отображения и использования при сортировке времени модификации файлов.
  • В утилиту mv добавлена опция "--no-copy", включающая вывод ошибки при попытке копирования файла между разными файловыми системами.
  • В утилите split в опциях '-n SIZE' размер теперь может превышать диапазон значений типа integer. При указании "split -n" разрешён приём данных из неименованного канала с определением размера данных, благодаря промежуточному копированию во временный файл.
  • В утилиту wc добавлена поддержка параметра "--total={auto,never,always,only}" для управления тем, когда следует выводить итоговую сводку.
  • При выполнении "cp --sparse=auto", "mv" и "install" задействован системный вызов copy_file_range для оптимизации работы с файлами, содержащими пустые области.
  • В утилите tee реализована обработка вывода в неблокирующем режиме, например, когда выводимые на терминал данные от telnet или mpirun пропускаются через tee.
  • Добавлена поддержка новых префиксов размера: Ronna (R) - 1027, Quetta (Q) - 1030, Ri - 290 и Qi - 2100.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск набора базовых системных утилит GNU Coreutils 9.1
  3. OpenNews: Обновление варианта GNU Coreutils, переписанного на языке Rust
  4. OpenNews: Адаптация Debian для использования реализации coreutils на языке Rust
  5. OpenNews: Проблемы безопасности в sort, uniq и join из состава GNU coreutils
Обсуждение (9 +7) | Тип: Программы |


·20.03 Выпуск Dragonfly 1.0, системы для кэширования данных в оперативной памяти (40 +7)
  Состоялся релиз системы кэширования и хранения данных в оперативной памяти Dragonfly, которая манипулирует данными в формате ключ/значение и может применяться как легковесное решение для ускорения работы высоконагруженных сайтов, кэширующее медленные запросы к СУБД и промежуточные данные в оперативной памяти. Dragonfly поддерживает протоколы Memcached и Redis, что позволяет использовать уже существующие клиентские библиотеки и без переработки кода переводить на Dragonfly проекты, использующие Memcached и Redis.

По сравнению с Redis в Dragonfly при типовых видах нагрузки в окружении Amazon EC2 c6gn.16xlarge удалось добиться 25-кратного увеличения производительности (3.8 млн запросов в секунду). По сравнению с Memcached в AWS-окружении c6gn.16xlarge Dragonfly смог выполнить в 4.7 раза больше запросов в секунду на запись (3.8 млн против 806 тысяч) и в 1.77 раз больше запросов в секунду на чтение (3.7 млн против 2.1 млн).

В тестах на хранение 5 ГБ данных Dragonfly потребовал на 30% меньше памяти, чем Redis. Во время создания снапшотов командой "bgsave" потребление памяти возрастает, но в пиковые моменты оно оставалось почти в три раза меньше, чем в Redis, а сама операция записи снапшота выполняется значительно быстрее (в тесте снапшот в Dragonfly был записан за 30 секунд, а Redis - за 42 секунды).

Высокая производительность достигается благодаря многопоточной архитектуре без разделения ресурсов (shared-nothing), подразумевающей, что к каждому потоку привязывается отдельный обособленный обработчик со своей порцией данных, работающий без мьютексов и spin-блокировок. Для обеспечения атомарности при работе с несколькими ключами используются легковесные блокировки VLL. Для эффективного хранения информации в памяти применяется структура dashtable, реализующая разновидность секционированных хэш-таблиц.

Некоторые возможности Dragonfly:

  • Режим кэширования, при котором автоматически обеспечивается вытеснение старых данных новыми после исчерпания свободной памяти.
  • Поддержка привязки к данным времени жизни, в течение которого данные считаются актуальными.
  • Поддержка сброса состояния хранилища на диск в фоновом режиме для последующего восстановления после перезапуска.
  • Наличие HTTP-консоли (привязывается к TCP-порту 6379) для управления системой и API для отдачи метрик, совместимый с Prometheus.
  • Поддержка 185 команд Redis, что примерно соответствует функциональности выпуска Redis 5.
  • Поддержка всех команд Memcached, кроме CAS (check-and-set).
  • Поддержка асинхронных операций для создания снапшотов.
  • Предсказуемое потребление памяти.
  • Встроенный интерпретатор Lua 5.4.
  • Поддержка сложных типов данных, таких как хэши, множества, списки (ZSET, HSET, LIST, SETS и STRING) и данные в формате JSON.
  • Поддержка репликации хранилища для обеспечения отказоустойчивости и балансировки нагрузки.

Код Dragonfly написан на языках C/С++ и распространяется под лицензией BSL (Business Source License). Лицензия BSL была предложена сооснователями MySQL в качестве альтернативы модели Open Core. Суть BSL в том, что код расширенной функциональности изначально доступен для внесения изменений, но в течение какого-то времени может применяться бесплатно только при соблюдении дополнительных условий, для обхода которых требуется приобретение коммерческой лицензии. Дополнительные лицензионные условия проекта Dragonfly предписывают перевод кода на лицензию Apache 2.0 15 марта 2028 года. До этого времени лицензия разрешает использование кода только для обеспечения работы своих сервисов и продуктов, но запрещает применение для создания платных облачных сервисов, выступающих надстройкой над Dragonfly.

Версия Dragonfly 1.0 примечательна реализацией поддержи репликации данных с первичного сервера на вторичный. При этом Dragonfly можно настроить для использования в качестве вторичного хранилища, принимающего данные с первичного сервера как на базе Dragonfly, так и на базе Redis. API для управления репликацией совместим с Redis и основан на применении команд ROLE и REPLICAOF (SLAVEOF).

  1. Главная ссылка к новости
  2. OpenNews: Релиз операционной системы DragonFly BSD 6.4
  3. OpenNews: Проект Dragonfly развивает более быструю замену Redis и Memcached
  4. OpenNews: Уязвимость в СУБД Redis, потенциально позволяющая выполнить свой код
  5. OpenNews: Выпуск СУБД Redis 7.0
  6. OpenNews: Релиз Memcached 1.6.0 с включением поддержки внешнего хранилища
Обсуждение (40 +7) | Тип: Программы |


·20.03 Звуковые кодеки aptX и aptX HD вошли в состав открытой кодовой базы Android (53 +24)
  Компания Qualcomm приняла решение реализовать поддержку звуковых кодеков aptX и aptX HD (High Definition) в репозитории AOSP (Android Open Source Project), что даст возможность использования данных кодеков во всех Android-устройствах. Речь идёт только о кодеках aptX и aptX HD, более продвинутые версии которых, такие как aptX Adaptive и aptX Low Latency, по-прежнему будут поставляться отдельно.

Кодеки aptX и aptX HD (Audio Processing Technology), применяются в Bluetooth-профиле A2DP и поддерживаются многими наушниками с интерфейсом Bluetooth. При этом из-за необходимости оплаты отчислений за интеграцию кодеков aptX, некоторые производители, такие как Samsung, отказывались от поддержки aptX в своих продуктах, отдавая предпочтение кодекам SBC и AAC.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск звукового сервера PulseAudio 15.0
  3. OpenNews: Автор Libopenaptx сменил лицензию, чтобы блокировать заимствование кода проектами Freedesktop
  4. OpenNews: Выпуск Android-прошивки CalyxOS 2.8.0, не привязанной к сервисам Google
  5. OpenNews: Около 21% нового компилируемого кода в Android 13 написано на языке Rust
  6. OpenNews: Google намерен включить RISC-V в число первичных архитектур для Android
Обсуждение (53 +24) | Тип: К сведению |


·20.03 Выпуск Scrcpy 2.0, приложения для зеркалирования экрана Android-смартфона (55 +20)
  Опубликован выпуск приложения Scrcpy 2.0, позволяющего отзеркалить содержимое экрана смартфона в стационарном пользовательском окружении с возможностью управлять устройством, удалённо работать в мобильных приложениях с использованием клавиатуры и мыши, просматривать видео и прослушивать звук. Клиентские программы для управления смартфоном подготовлены для Linux, Windows и macOS. Код проекта написан на языке Си (мобильное приложение на Java) и распространяется под лицензией Apache 2.0.

Подключение смартфона может быть произведено через USB или TCP/IP. На смартфоне запускается серверное приложение, которое взаимодействует с внешней системой через туннель, организуемый при помощи утилиты adb. Наличие root-доступа к устройству не требуется. Серверное приложение генерирует видеопоток (на выбор H.264, H.265 или AV1) с содержимым экрана смартфона, а клиент декодирует и отображает видео. Клавиатурный ввод и события мыши транслируются на сервер и подставляются в систему ввода Android.

Основные возможности:

  • Высокая производительность (30~120fps).
  • Поддержка экранных разрешений 1920×1080 и выше.
  • Низкие задержки (35~70мс).
  • Высокая скорость запуска (около секунды до вывода первых изображений экрана).
  • Трансляция звука.
  • Возможность записи звука и видео.
  • Поддержка зеркалирования при выключенном/заблокированном экране смартфона.
  • Буфер обмена с возможностью копирования и вставки информации между компьютером и смартфоном.
  • Настраиваемое качество трансляции экрана.
  • Поддержка использования Android-смартфона в качестве web-камеры (V4L2).
  • Симуляция физически подключённых клавиатуры и мыши.
  • Режим OTG.

В новой версии:

  • Добавлена возможность проброса звука (работает на смартфонах с Android 11 и Android 12).
  • Добавлена поддержка видеокодеков H.265 и AV1.
  • Добавлены опции "--list-displays" и "--list-encoders".
  • Обеспечена работа опции "--turn-screen-off" на всех экранах.
  • В версии для Windows обновлены platform-tools 34.0.1 (adb), FFmpeg to 6.0 и SDL 2.26.4.

    1. Главная ссылка к новости
    2. OpenNews: Предложена док-станция Lapdock для превращения смартфона Librem 5 в ноутбук
    3. OpenNews: Представлен postmarketOS 22.12, Linux-дистрибутив для смартфонов и мобильных устройств
    4. OpenNews: Доступна платформа Android TV 13
    5. OpenNews: Первый выпуск прослойки для запуска Android-приложений в Windows
    6. OpenNews: Доступна операционная система Capyloon, основанная на наработках Firefox OS
  • Обсуждение (55 +20) | Тип: Программы |


    ·20.03 Обновление Flatpak с устранением двух уязвимостей (51 +6)
      Доступны корректирующие обновления инструментарии для создания самодостаточных пакетов Flatpak 1.14.4, 1.12.8, 1.10.8 и 1.15.4 в которых устранены две уязвимости:
    • CVE-2023-28100 - возможность копирования и подстановки текста в буфер ввода виртуальной консоли через манипуляции с ioctl TIOCLINUX при установке подготовленного злоумышленником flatpak-пакета. Например, уязвимость может быть использована для организации запуска произвольных команд в консоли после завершения процесса установки стороннего пакета. Проблема проявляется только в классической виртуальной консоли (/dev/tty1, /dev/tty2 и т.п.) и не затрагивает сеансы в xterm, gnome-terminal, Konsole и прочих графических терминалах. Уязвимость не специфична для flatpak и может быть использована для атаки на другие приложения, например, ранее похожие уязвимости, позволявшие выполнять подстановку символов через ioctl-интерфейс TIOCSTI, находили в /bin/sandbox и snap.
    • CVE-2023-28101 - возможность использования escape-последовательностей в списке полномочий в метаданных пакета для скрытия выводимой в терминал информации о запрашиваемых расширенных полномочиях во время установки или обновления пакета через интерфейс командной строки. Злоумышленники могут воспользоваться данной уязвимостью для введения пользователей в заблуждение о используемых в пакете полномочиях. Графические интерфейсы для установки пакетов Flatpak, такие как GNOME Software и KDE Plasma Discover, проблеме не подвержены.

    1. Главная ссылка к новости
    2. OpenNews: Уязвимость, позволяющая обойти режим sandbox-изоляции SELinux
    3. OpenNews: Релиз системы самодостаточных пакетов Flatpak 1.14.0
    4. OpenNews: Уязвимость в snapd и flatpak, позволяющая обойти режим изоляции
    5. OpenNews: Раскрыта техника эксплуатации уязвимости в tty-подсистеме ядра Linux
    6. OpenNews: Обновление Flatpak 1.10.2 с устранением уязвимости, нарушающей sandbox-изоляцию
    Обсуждение (51 +6) | Тип: Проблемы безопасности |


    ·20.03 Выпуск Libreboot 20230319. Начало разработки Linux-дистрибутива с утилитами OpenBSD (92 +13)
      Представлен выпуск свободной загрузочной прошивки Libreboot 20230319. Проект развивает готовую сборку проекта coreboot, предоставляющую замену проприетарным прошивкам UEFI и BIOS, отвечающим за инициализации CPU, памяти, периферийных устройств и других компонентов оборудования, с минимизацией бинарных вставок.

    Libreboot нацелен на формирование системного окружения, позволяющего полностью обойтись без проприетарного ПО, не только на уровне операционной системы, но и прошивок, обеспечивающих загрузку. Libreboot не просто очищает coreboot от несвободных компонентов, но и дополняет его средствами для упрощения применения конечными пользователями, формируя дистрибутив, которым может воспользоваться любой пользователь, не имеющий специальных навыков.

    Среди поддерживаемого в Libreboot оборудования:

    • Десктоп-системы Gigabyte GA-G41M-ES2L, Intel D510MO, Intel D410PT, Intel D945GCLF и Apple iMac 5,2.
    • Ноутбуки: ThinkPad X60 / X60S / X60 Tablet, ThinkPad T60, Lenovo ThinkPad X200 / X200S / X200 Tablet/ X220 / X230, Lenovo ThinkPad R400, Lenovo ThinkPad T400 / T400S/ T420 / T440, Lenovo ThinkPad T500 / T530, Lenovo ThinkPad W500 / W530, Lenovo ThinkPad R500, Apple MacBook1 и MacBook2, а также различные устройства Chromebook от компаний ASUS, Samsung, Acer и HP.

    В новом выпуске:

    • Добавлена поддержка ноутбуков Lenovo ThinkPad W530 и T530. В следующей версии ожидается поддержка HP EliteBook 8560w, Lenovo G505S и Dell Latitude E6400.
    • Прекращена поддержка плат Asus p2b_ls и p3b_f.
    • Для плат с процессорами на базе микроархитектуры Haswell адаптирован код для инициализации памяти (raminit). Работа проверена на ноутбуках ThinkPad T440p и ThinkPad W541.
    • Решены проблемы с переходом в спящий режим (S3) на ноутбуках ThinkPad T440p и ThinkPad W541.
    • В GRUB включён принудительный режим вывода на консоль (GRUB_TERMINAL=console) без изменения видеорежима, что улучшило отображение загрузочных меню установочных носителей некоторых дистрибутивов Linux.
    • Для большинства плат x86 выполнена синхронизация с кодовой базой CoreBoot по состоянию на февраль 2023 года, среди прочего перенесены улучшения для устройств с чипами на базе микроархитектуры Haswell (ThinkPad T440p/W541).
    • Перенесены изменения из актуальных кодовых баз GRUB и SeaBIOS.
    • Время ожидания в grub.cfg уменьшено с 10 до 5 секунд.
    • Для ноутбуков ThinkPad GM45 размер выделяемой видеопамяти по умолчанию уменьшен с 352MB до 256MB.
    • Переработана кодовая база nvmutil.

    Кроме того, автором Libreboot началась разработка нового минималистичного Live-дистрибутива для восстановления систем после сбоев. По аналогии с дистрибутивом Heads, проект развивает размещаемое на Flash урезанное системное окружение, которые может быть загружено из LibreBoot, CoreBoot или LinuxBoot, но вместо сборки в качестве загрузочного "payload" в новом проекте планируется подготовить отдельный системный образ, загружаемый в CBFS и вызываемый из промежуточных payload-ов с GRUB или SeaBIOS, способных запускать исполняемые файлы, размещённые на Flash.

    Проект интересен тем, что в нём планируется совместить ядро Linux, стандартную Си-библитеку Musl и инструментарий из базового окружения OpenBSD. Для реализации данной идеи продолжено развитие проекта lobase, занимавшегося портированием утилит OpenBSD для Linux, но заброшенного 5 лет назад (автор Libreboot создал форк lobase, который актуализирован до OpenBSD 7.2 и портирован для Musl). Для управления пакетами и установки дополнительных программ планируется использовать инструментарий apk-tools от Alpine Linux, а для формирования образов сборочный инструментарий abuild и aports. После готовности форка пользовательского окружения OpenBSD, его планируется передать проекту Alpine для использования в качестве альтернативы пакету BusyBox.

    Дополнительно можно отметить анонс проекта CloudFW 2.0 с реализацией прошивки на базе Coreboot и LinuxBoot для замены UEFI, предоставляющей полноценный открытый firmware-стек для x86-серверов. Разработка ведётся китайской компанией Bytedance (владеет TikTok), которая использует CloudFW на оборудовании в своей инфраструктуре.

    1. Главная ссылка к новости
    2. OpenNews: Выпуск Coreboot 4.19
    3. OpenNews: В U-boot добавлена поддержка загрузки с использованием протокола HTTP
    4. OpenNews: Выпуск Libreboot 20221214, полностью свободного дистрибутива Coreboot
    5. OpenNews: Linux Foundation представил проект LinuxBoot для замены UEFI-прошивок
    6. OpenNews: Опубликован порт CoreBoot для материнской платы MSI PRO Z690-A
    Обсуждение (92 +13) | Тип: Программы |


    ·19.03 Выпуск библиотеки Libadwaita 1.3 для создания интерфейсов в стиле GNOME (65 +22)
      Проект GNOME опубликовал выпуск библиотеки Libadwaita 1.3, включающей набор компонентов для стилевого оформления интерфейса пользователя, соответствующего рекомендациям GNOME HIG (Human Interface Guidelines). Библиотека включает в себя готовые виджеты и объекты для построения приложений, соответствующих общему стилю GNOME, интерфейс которых может адаптивно подстраиваться под экраны любого размера. Код библиотеки написан на языке Си и распространяется под лицензией LGPL 2.1+.

    Библиотека libadwaita используется в сочетании с GTK4 и включает компоненты используемой в GNOME темы оформления Adwaita, которые были вынесены из GTK в отдельную библиотеку. Вынос элементов визуального оформления GNOME в отдельную библиотеку позволяет развивать необходимые для GNOME изменения отдельно от GTK, что даёт возможность разработчикам GTK сосредоточиться на базовых вещах, а разработчикам GNOME более быстро и гибко продвигать необходимые для себя изменения стилевого оформления, не затрагивая сам GTK.

    В библиотеку входят типовые виджеты, охватывающих различные элементы интерфейса, такие как списки, панели, блоки редактирования, кнопки, вкладки, формы поиска, диалоговые окна и т.п. Предложенные виджеты позволяют создавать универсальные интерфейсы, которые органично функционируют как на крупных экранах ПК и ноутбуков, так и на небольших сенсорных экранах смартфонов. Интерфейс приложений динамически меняется в зависимости от размера экрана и доступных устройств ввода. Библиотека также включает набор стилей Adwaita, приводящих внешний вид в соответствие с рекомендациями GNOME, без необходимости выполнения ручной адаптации.

    Основные изменения в libadwaita 1.3:

    • Реализован виджет AdwBanner, который можно использовать вместо GTK-виджета GtkInfoBar для отображения окон-баннеров, содержащих заголовок и одну необязательную кнопку. Содержимое виджета трансформируется в зависимости от размера, а при показе и скрытии может применяться анимация.
    • Добавлен виджет AdwTabOverview, предназначенный для наглядного обзора вкладок или страниц, показываемых при помощи класса AdwTabView. Новый виджет можно использовать для организации работы с вкладками на мобильных устройствах без создания собственной реализации переключателя.
    • Добавлен виджет AdwTabButton для отображения кнопок с информацией о числе открытых вкладок в AdwTabView, которые могут использоваться на мобильном устройстве для открытия режима обзора вкладок.
    • Для виджетов AdwViewStack, AdwTabView и AdwEntryRow реализована поддержка средств для людей с ограниченными возможностями.
    • В класс AdwAnimation добавлено свойство для игнорирования отключения анимации в системных настройках.
    • В классе AdwActionRow появилась возможность выделения субтитров.
    • В класс AdwExpanderRow добавлены свойства title-lines и subtitle-lines.
    • В класс AdwEntryRow по аналогии с GtkEntry добавлен метод grab_focus_without_selecting().
    • В класс AdwMessageDialog по аналогии с GtkAlertDialog добавлен метод async choose().
    • В класс AdwTabBar добавлены вызовы API, связанные с интерфейсом drag-n-drop.
    • В классе AdwAvatar обеспечено корректное масштабирование изображений.
    • Добавлена возможность использования тёмного стиля и высококонтрастного режима при работе на платформе Windows.
    • Выделенные элементы списков и сеток теперь подсвечиваются цветом, применяемым для выделения активных элементов (accent).

    1. Главная ссылка к новости
    2. OpenNews: Доступен графический тулкит GTK 4.10
    3. OpenNews: Работа над GTK5 начнётся в конце года. Намерение разрабатывать GTK на языках, отличных от Си
    4. OpenNews: Выпуск библиотеки Libadwaita 1.0 для создания интерфейсов в стиле GNOME
    5. OpenNews: Выпуск библиотеки Libadwaita 1.2 для создания интерфейсов в стиле GNOME
    Обсуждение (65 +22) | Тип: Программы |


    ·19.03 Выпуск дистрибутива SystemRescue 10.0 (46 +11)
      Доступен релиз SystemRescue 10.0, специализированного Live-дистрибутива на основе Arch Linux, предназначенного для восстановления системы после сбоя. В качестве графического окружения используется Xfce. Размер iso-образа - 747 МБ (amd64).

    Изменения в новой версии:

    • Ядро Linux обновлено до ветки 6.1.
    • Добавлена поддержка файла конфигурации GRUB loopback.cfg, варианта grub.cfg для загрузки Live-дистрибутива из iso-файла.
    • Добавлены обработчики для настройки загрузки с использованием GRUB и syslinux.
    • Добавлена настройка gui_autostart для выполнения программ после запуска X-сервера.
    • В поставку возвращён драйвер xf86-video-qxl.
    • Удалён устаревший режим автозапуска (autoruns=).'
    • Добавлены менеджеры паролей pass и qtpass.
    • В состав включены пакеты casync, stressapptest, stress-ng и tk.

    1. Главная ссылка к новости
    2. OpenNews: Выпуск дистрибутива для резервного копирования Rescuezilla 2.4
    3. OpenNews: Выпуск Redo Rescue 4.0.0, дистрибутива для резервного копирования и восстановления
    4. OpenNews: Выпуск утилиты восстановления данных ddrescue 1.23
    5. OpenNews: Выпуск дистрибутива SystemRescue 9.06
    Обсуждение (46 +11) | Тип: Программы |


    ·19.03 Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (64 +5)
      На конференции LibrePlanet 2023 состоялась церемония награждения, на которой объявлены лауреаты ежегодной премии "Free Software Awards 2022", учрежденной Фондом свободного ПО (FSF) и присуждаемой людям, внесшим наиболее значительный вклад в развитие свободного ПО, а также социально значимым свободным проектам. Победители получили памятные пластинки и грамоты (премия FSF не подразумевает денежного вознаграждения).

    Премию за продвижение и развитие свободного ПО получил Эли Зарецкий (Eli Zaretskii), один из сопровождающих GNU Emacs, уже более 30 лет принимающий участие в разработке проекта. Эли Зарецкий также был вовлечён в разработку GNU Texinfo, GDB, GNU Make и GNU Grep.

    В номинации, вручаемой проектам, принёсшим значительную пользу обществу и способствовавшим решению важных социальных задач, награда присуждена проекту GNU Jami (ранее известный как Ring и SFLphone), развивающему децентрализованную коммуникационную платформу как для общения больших групп, так и выполнение индивидуальных вызовов c предоставлением высокого уровня конфиденциальности и безопасности. В платформе поддерживается прямое соединение между пользователями (P2P) с применением сквозного шифрования.

    В номинации за выдающийся вклад нового участника в развитие свободного ПО, которая присуждается новичкам, первый вклад которых показал заметную приверженность движению свободного ПО, премию получил Tad (SkewedZeppelin), лидер проекта DivestOS, поддерживающего форк мобильной платофрмы LineageOS, очищенный от несвободных компонентов. Ранее Tad также принимал участие в разработке полностью свободной Android-прошивки Replicant.

    Список прошлых победителей:

    • 2021 Пол Эггерт (Paul Eggert), отвечающий за поддержание базы часовых поясов, используемой в большинстве Unix-систем и во всех Linux-дистрибутивах.
    • 2020 Бредли Кун (Bradley M. Kuhn), исполнительный директор и один из создателей правозащитной организации Software Freedom Conservancy (SFC).
    • 2019 Джим Мейринг (Jim Meyering), с 1991 года занимается сопровождением пакета GNU Coreutils, один из основных разработчиков autotools и создатель Gnulib.
    • 2018 Дебора Николсон (Deborah Nicholson), директор по взаимодействию с сообществом в организации Software Freedom Conservancy;
    • 2017 Карен Сэндлер (Karen Sandler), директор правозащитной организации Software Freedom Conservancy;
    • 2016 Александре Олива (Alexandre Oliva), бразильский популяризатор и разработчик свободного ПО, основатель Латиноамериканского Фонда СПО, автор проекта Linux-Libre (полностью свободный вариант ядра Linux);
    • 2015 Вернер Кох (Werner Koch), создатель и основной разработчик инструментария GnuPG (GNU Privacy Guard);
    • 2014 Себастьян Жодонь (Sébastien Jodogne), автор Orthanc, свободного DICOM-сервера для обеспечения доступа к данным компьютерной томографии;
    • 2013 Мэтью Гаррет (Matthew Garrett), один из разработчиков ядра Linux, входящий в технический совет организации Linux Foundation, внёсший значительный вклад в обеспечение загрузки Linux на системах с UEFI Secure Boot;
    • 2012 Фернандо Переc (Fernando Perez), автор IPython, интерактивной оболочки для языка Python;
    • 2011 Юкихиро Мацумото (Yukihiro Matsumoto), автору языка программирования Ruby. Юкихиро уже на протяжении 20 лет участвует в развитии проектов GNU, Ruby и других открытых проектов;
    • 2010 Роб Савуа (Rob Savoye), лидер проекта по созданию свободного Flash-плеера Gnash, участник разработки GCC, GDB, DejaGnu, Newlib, Libgloss, Cygwin, eCos, Expect, основатель компании Open Media Now;
    • 2009 Джон Гилмор (John Gilmore), один из основателей правозащитной организации Electronic Frontier Foundation, создатель легендарного списка рассылки Cypherpunks и иерархии Usenet-конференций alt.*. Учредитель компании Cygnus Solutions, первой начавшей оказывать коммерческую поддержку для решений на базе свободного ПО. Основатель свободных проектов Cygwin, GNU Radio, Gnash, GNU tar, GNU UUCP и FreeS/WAN;
    • 2008 Wietse Venema (известный эксперт в области компьютерной безопасности, создатель таких популярных проектов, как Postfix, TCP Wrapper, SATAN и The Coroner's Toolkit);
    • 2007 Harald Welte (архитектор мобильной платформы OpenMoko, один из 5 основных разработчиков netfilter/iptables, мантейнер подсистемы пакетной фильтрации Linux ядра, активист движения свободного программного обеспечения, создатель сайта gpl-violations.org);
    • 2006 Theodore T'so (разработчик Kerberos v5, файловых систем ext2/ext3, известный хакер Linux ядра и участник группы, разработавшей спецификацию IPSEC);
    • 2005 Andrew Tridgell (создатель проектов samba и rsync);
    • 2004 Theo de Raadt (руководитель проекта OpenBSD);
    • 2003 Alan Cox (вклад в разработку Linux ядра);
    • 2002 Lawrence Lessig (популяризатор открытого ПО);
    • 2001 Guido van Rossum (автор языка Python);
    • 2000 Brian Paul (разработчик библиотеки Mesa 3D);
    • 1999 Miguel de Icaza (лидер проекта GNOME);
    • 1998 Larry Wall (создатель языка Perl).

    Премию за развитие социально значимых свободных проектов получили организации и сообщества: SecuRepairs (2021), CiviCRM (2020), Let's Encrypt (2019), OpenStreetMap (2018), Public Lab (2017), SecureDrop (2016), Library Freedom Project (2015), Reglue (2014), GNOME Outreach Program for Women (2013), OpenMRS (2012), GNU Health (2011), Tor Project (2010), Internet Archive (2009), Creative Commons (2008), Groklaw (2007), Sahana (2006) и Wikipedia (2005).

    1. Главная ссылка к новости
    2. OpenNews: Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (2022)
    3. OpenNews: Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (2021)
    4. OpenNews: Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (2020)
    5. OpenNews: Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (2019)
    6. OpenNews: Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО (2018)
    Обсуждение (64 +5) | Тип: К сведению |


    ·19.03 Релиз набора компиляторов LLVM 16.0 (73 +22)
      После шести месяцев разработки представлен релиз проекта LLVM 16.0 - GCC-совместимого инструментария (компиляторы, оптимизаторы и генераторы кода), компилирующего программы в промежуточный биткод RISC-подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизаций). Сгенерированный псевдокод может быть преобразован при помощи JIT-компилятора в машинные инструкции непосредственно в момент выполнения программы.

    Основные улучшения в Clang 16.0:

    • Применяемый по умолчанию стандарт C++/ObjC++ выставлен в gnu++17 (ранее применялся gnu++14), что подразумевает поддержку по умолчанию возможностей C++17 с расширениями GNU. Для возвращения прежнего поведения можно использовать опцию "-std=gnu++14".
    • Реализованы расширенные возможности, связанные со стандартом C++20:
    • Реализованы возможности, определённые в будущем стандарте C++2b:
    • Реализованы возможности, определённые в будущем Си-стандарте C2x:
      • Для отключения предупреждения "-Wunused-label" разрешено применение атрибута "[[maybe_unused]]" к меткам,
      • Разрешено размещение меток в любых местах внутри составных выражений,
      • Добавлены операторы typeof и typeof_unqual,
      • Новый тип nullptr_t и константа nullptr для определения нулевых указателей, которая может конвертироваться в любой тип указателей и представлять вариант NULL, не привязанный к целочисленным типам и типу void*.
      • В режиме C2x разрешён вызов макроса va_start с переменным числом аргументов (variadic).
    • В режимах соответствия стандартам C99, C11 и C17 опции "-Wimplicit-function-declaration" и "-Wimplicit-int" по умолчанию теперь приводят к выводу ошибки вместо предупреждения.
    • Косвенное использование "void *" (например, "void func(void *p) { *p; }") в режиме C++ теперь приводит к генерации ошибки, по аналогии с ISO C++, GCC, ICC и MSVC.
    • Указание битовых полей в качестве операндов инструкций (например, "__asm { mov eax, s.bf }") в ассемблерных inline-блоках в стиле Microsoft теперь приводит к генерации ошибки.
    • Добавлена диагностика наличия отличающихся структур и объединений с одинаковыми именами в разных модулях.
    • Расширены возможности, связанные с поддержкой OpenCL и OpenMP. Улучшена диагностика шаблонов C++, используемых в аргументах ядра OpenCL. Улучшена поддержка блока подстановки в очередь для AMDGPU. Ко всем функциям неявно добавлен атрибут nounwind. Улучшена поддержка встроенных функций.
    • Предоставлена возможность использования переменной окружения CLANG_CRASH_DIAGNOSTICS_DIR для определения каталога, в который сохраняются диагностические данные об аварийных завершениях.
    • Поддержка Unicode обновлена до спецификации Unicode 15.0. Разрешено применение некоторых математических символов в идентификаторах, таких как "₊" (например, "double xₖ₊₁").
    • Добавлена поддержка загрузки нескольких файлов конфигурации (вначале загружаются файлы конфигурации по умолчанию, а затем заданные через флаг "--config=", который теперь можно указывать несколько раз). Изменён порядок загрузки файлов конфигурации по умолчанию: clang вначале пытается загрузить файл <triple>-<driver>.cfg, а если он не найден пытается загрузить два файла <driver>.cfg и <triple>.cfg. Для отключения загрузки файлов конфигурации по умолчанию добавлен флаг "--no-default-config".
    • Для обеспечения повторяемых сборок предоставлена возможность замены значений текущей даты и времени в макросах __DATE__, __TIME__ и __TIMESTAMP__ на время, заданное в переменной окружения SOURCE_DATE_EPOCH.
    • Для проверки наличия встроенных функций (builtin), которые могут быть использованы в контексте констант, добавлен макрос "__has_constexpr_builtin".
    • Добавлен новый флаг компиляции "-fcoro-aligned-allocation" для выровненного распределения кадров сопрограмм.
    • В флаге "-fstrict-flex-arrays=" реализована поддержка третьего уровня проверки гибкого элемента-массива в структурах (Flexible Array Members, массив неопределённого размера в конце структуры). На третьем уровне только размер "[]" (например, "int b[]") обрабатывается как гибкий массив, а размер "[0]" (например, "int b[0]") - нет.
    • Добавлен флаг "-fmodule-output" для включения однофазной модели компиляции стандартных модулей C++.
    • Добавлен режим "-Rpass-analysis=stack-frame-layout", позволяющий диагностировать проблемы с раскладной стековых кадров.
    • Добавлен новый атрибут __attribute__((target_version("cpu_features"))) и расширена функциональность атрибута __attribute__((target_clones("cpu_features1","cpu_features2",...))) для выбора определённых версий функций, предоставляемых CPU AArch64.
    • Расширены средства диагностики:
      • Добавлено предупреждение "-Wsingle-bit-bitfield-constant-conversion" для определения неявного усечения при присвоении единицы одноразрядному знаковому битовому полю.
      • Расширена диагностика неинициализированных constexpr-переменных.
      • Добавлены предупреждения "-Wcast-function-type-strict" и "-Wincompatible-function-pointer-types-strict" для выявления потенциальных проблем при приведении типов функций.
      • Добавлена диагностика использования некорректных или зарезервированных имён модулей в блоках экспорта.
      • Улучшено выявление пропущенных ключевых слов "auto" в определениях.
      • В реализации предупреждения "-Winteger-overflow" добавлены проверки дополнительных ситуаций, приводящих к переполнениям.
    • Реализована поддержка архитектуры набора команд LoongArch (-march=loongarch64 или -march=la464), применяемой в процессорах Loongson 3 5000 и реализующей новый RISC ISA, похожий на MIPS и RISC-V.

    Основные новшества LLVM 16.0:

    • В коде LLVM разрешено использование элементов, определённых в стандарте C++17.
    • Повышены требования к окружению для сборки LLVM. Сборочный инструментарий теперь должен поддерживать стандарт C++17, т.е. для сборки необходимы как минимум GCC 7.1, Clang 5.0, Apple Clang 10.0 или Visual Studio 2019 16.7.
    • В бэкенд для архитектуры AArch64 добавлена поддержка CPU Cortex-A715, Cortex-X3 и Neoverse V2, ассемблера для RME MEC (Memory Encryption Contexts), расширений Armv8.3 (Complex Number) и мултиверсионирования (Function Multi Versioning).
    • В бэкенде LLVM для архитектуры ARM прекращена поддержка целевых платформ Armv2, Armv2A, Armv3 и Armv3M, генерация корректного кода для которых не гарантировалась. В clang в опции "-march" прекращена поддержка значений armv2, armv2A, armv3 и armv3M. Добавлена возможность генерации кода для инструкций работы с комплексными числами.
    • В бэкенд для архитектуры X86 добавлена поддержка архитектур набора команд (ISA) AMX-FP16, CMPCCXADD, AVX-IFMA, AVX-VNNI-INT8, AVX-NE-CONVERT. Добавлена поддержка инструкций RDMSRLIST, RMSRLIST и WRMSRNS. Реализованы опции "-mcpu=raptorlake", "-mcpu=meteorlake", "-mcpu=emeraldrapids", "-mcpu=sierraforest", "-mcpu=graniterapids" и "-mcpu=grandridge".
    • Добавлена официальная поддержка платформы LoongArch.
    • Улучшены бэкенды для архитектур MIPS, PowerPC и RISC-V
    • В отладчик LLDB добавлена поддержка отладки 64-разрядных исполняемых файлов для архитектуры LoongArch. Улучшена обработка отладочных символов COFF. Обеспечено отсеивание дубликатов DLL в списке загружаемых Windows-модулей.
    • В библиотеке Libc++ основная работа была сосредоточена на реализации поддержки новых возможностей стандартов C++20 и C++23.
    • В компоновщике LDD значительно сокращено время связывания за счёт распараллеливания операций сканирования перемещений адресов и инициализации секций. Добавлена поддержка сжатия секций с использованием алгоритма ZSTD.

    1. Главная ссылка к новости
    2. OpenNews: Релиз набора компиляторов LLVM 15.0
    3. OpenNews: Проект LLVM развивает средства для безопасной работы с буферами в C++
    4. OpenNews: Реализована возможность сборки Glibc при помощи инструментария LLVM
    5. OpenNews: Проект LLVM представил HPVM 1.0, компилятор для CPU, GPU, FPGA и ускорителей
    6. OpenNews: Первый стабильный релиз компоновщика Mold, развиваемого разработчиком LLVM lld
    Обсуждение (73 +22) | Тип: Программы |


    ·18.03 Обновления драйверов X.org для видеокарт S3 и Trident (174 +25)
      Состоялись релизы X.org-драйверов xf86-video-trident 1.4 и xf86-video-s3virge 1.11.1 для видеокарт Trident и S3, которые ныне не производятся, однако некоторые люди продолжают их использовать, зачастую в качестве второй видеокарты. Кроме того, видеочипы этих производителей могут использоваться в серверах и эмулироваться виртуальными машинами.

    Основные изменения:

    • Добавлена поддержка сборки с X.org 21.1 и более поздними версиями.
    • Для сжатия архива с исходными текстами применён алгоритм xz вместо bzip2.
    • В gitlab CI добавлен базовый сборочный тест и убрано требование выставления подписи Signed-off-by в коммитах.
    • Исправлено множество предупреждений, выводимых при сборке драйвера с такими такими параметрами GCC, как -Wdiscarded-qualifiers, -Wnull-dereference и -Wimplicit-fallthrough.
    • В драйвере s3virge из xf86ValidateModes в S3VValidMode перенесена проверка максимально возможного разрешения (необходимо для сборки с X.org 1.20).
    • В драйвере trident удалён так и не дописанный код аппаратного 2D-ускорения EXA для Blade 3D, исправлена ошибка сборки кода, специфичного для архитектуры NEC PC-98x1.

    1. Главная ссылка к новости
    Обсуждение (174 +25) | Автор: Zenitur | Тип: Программы |


    ·18.03 Инициатива по переработке инструментария для гипервизора Xen на языке Rust (194 –6)
      Разработчики платформы XCP-ng, развиваемой под крылом проекта Xen, опубликовали план по созданию на языке Rust замены различных компонентов программного стека Xen. Непосредственно гипервизор Xen пока перерабатывать не собираются, работа сосредоточена в основном на переделке отдельных компонентов инструментария.

    В настоящее время в платформе используются компоненты на языках C, Python, OCaml и Go, некоторые из которых устарели и создают проблемы с сопровождением. Отмечается, что применение Rust не приведёт к общему увеличению числа задействованных языков, так как на Go реализован только один компонент, который планируется заменить в первую очередь.

    Язык Rust выбран как сочетающий высокую производительность результирующего кода с возможностями для безопасной работы с памятью, обходящийся без применения сборщика мусора, пригодный для разработки как низкоуровневых, так и высокоуровневых компонентов, предоставляющий дополнительные возможности для сокращения потенциальных ошибок, такие как проверка заимствования переменных (borrow checker). Rust также более распространён, чем ныне применяемый в XAPI язык OCaml, что упростит привлечение в проект новых разработчиков.

    На первом этапе планируется разработать замену для нескольких компонентов, чтобы отработать процессы и подготовить базу для замены других частей программного стека. В частности, в первую очередь на Rust будет переписан инструментарий Linux guest tools, для которого сейчас используется язык Go, и фоновый процесс для сбора метрик, написанный на OCaml.

    Необходимость переработки Linux guest tools (xe-guest-utilities) вызвана проблемами с качеством кода и развитием вне проекта Xen Project под контролем Cloud Software Group, что затрудняет формирование пакетов и влияние сообщества на разработку. Новый вариант инструментария (xen-guest-agent) планируют создать полностью с нуля, сделав простым насколько это возможно, и отделив логику агента от библиотек. Фоновый процесс для сбора метрик (rrdd) решено переработать так как он является компактным и обособленным, что упрощает проведение экспериментов по использованию нового языка при разработке.

    В следующем году возможно начнётся работа по разработке на Rust компонента xenopsd-ng, который позволит оптимизировать архитектуру программного стека. Основная идея в том, чтобы сосредоточить в одном компоненте работу с низкоуровневым API и организовать предоставление через него всех высокоуровневых API остальным компонентам стека.

    Текущая архитектура стека Xen:

    Предлагаемая архитектура стека Xen на базе xenopsd-ng:

    1. Главная ссылка к новости
    2. OpenNews: Выпуск гипервизора Xen 4.17
    3. OpenNews: Выпуск облачной платформы Apache CloudStack 4.17
    4. OpenNews: Выпуск XCP-NG 8.2, свободного варианта Citrix Hypervisor
    5. OpenNews: XCP-ng, свободный вариант Citrix XenServer, вошёл в состав проекта Xen
    6. OpenNews: Для рецензирования предложен Linux-драйвер для GPU Apple AGX, написанный на Rust
    Обсуждение (194 –6) | Тип: К сведению |


    Следующая страница (раньше) >>



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2023 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру