Email или имя пользователя:

Пароль:

Забыли пароль?
Всего 415 записей
opennet

Опубликованы дистрибутивы Rocky Linux 9.5 и Oracle Linux 9.5

Представлен релиз дистрибутива Rocky Linux 9.5, нацеленного на создание свободной сборки RHEL, способной занять место классического CentOS. Дистрибутив бинарно совместим с Red Hat Enterprise Linux и может использоваться в качестве замены RHEL 9.5 и CentOS 9 Stream. Поддержка ветки Rocky Linux 9 будет осуществляться до 31 мая 2032 года. Установочные iso-образы Rocky Linux подготовлены для архитектур x86_64, aarch64, ppc64le и s390x (IBM Z). Дополнительно предложены live-сборки с рабочими столами GNOME, KDE, Cinnamon и Xfce, опубликованные для архитектуры x86_64.

Как и в классическом CentOS внесённые в пакеты Rocky Linux изменения сводятся к избавлению от привязки к бренду Red Hat и удалению специфичных для RHEL пакетов, таких как redhat-*, insights-client и subscription-manager-migration*. С обзором списка изменений в Rocky Linux 9.5 можно познакомиться в анонсе RHEL 9.5. Среди специфичных для Rocky Linux изменений можно отметить поставку в отдельном репозитории plus пакетов openldap-servers-2.6.6, а в репозитории NFV пакетов для виртуализации компонентов сетей, развиваемый SIG-группой NFV (Network Functions Virtualization). В Rocky Linux также поддерживаются репозитрии CRB (Code Ready Builder с дополнительными пакетами для разработчиков, пришёл на смену PowerTools), RT (пакеты для работы в режиме реального времени), HighAvailability, ResilientStorage, SAP и SAPHANA (пакеты для SAP HANA). Добавлен экспериментальный пакет с ядром Linux - kernel-uki, предоставляющий унифицированный образ UKI (Unified Kernel Image), заверенный отдельным ключом для SecureBoot.

В качестве источника исходных пакетов при формировании Rocky Linux 9.5 задействован репозиторий OpenELA, поддерживаемый совместно с Oracle и SUSE. Изменение процессов разработки обусловлено прекращением размещения компанией Red Hat исходных текстов rpm-пакетов RHEL в публичном репозитории git.centos.org. Исходные пакеты предоставляются клиентам компании только через закрытый раздел сайта, на котором действует пользовательское соглашение (EULA), запрещающее редистрибуцию данных, что не позволяет использовать эти пакеты для создания производных дистрибутивов. Исходные тексты остаются доступны в репозитории CentOS Stream, но он полностью не синхронизирован с RHEL и в нём не всегда самые свежие версии пакетов совпадают с пакетами из RHEL.

Дистрибутив Rocky Linux развивается под покровительством организации Rocky Enterprise Software Foundation (RESF), которая зарегистрирована как общественно-полезная корпорация (Public Benefits Corporation), не нацеленная на получение прибыли. Владельцем организации является Грегори Курцер (Gregory Kurtzer), основатель CentOS, но функции управления в соответствии с принятым уставом делегированы совету директоров, в который сообществом избираются участники, вовлечённые в работу над проектом. Параллельно для развития расширенных продуктов на базе Rocky Linux и поддержки сообщества разработчиков данного дистрибутива создана коммерческая компания Ctrl IQ, которая получила 26 млн долларов инвестиций. К разработке и финансированию проекта присоединились такие компании, как Google, Amazon Web Services, GitLab, MontaVista, 45Drives, OpenDrives и NAVER Cloud.


Дополнительно можно отметить формирование компанией Oracle дистрибутива Oracle Linux 9.5, созданного на основе пакетной базы Red Hat Enterprise Linux 9.5 и полностью бинарно совместимого с ней. Для загрузки без ограничений предложены установочные iso-образы, размером 12 ГБ и 1.1 ГБ, подготовленные для архитектур x86_64 и ARM64 (aarch64). Для Oracle Linux 9 открыт неограниченный и бесплатный доступ к yum-репозиторию с бинарными обновлениями пакетов с устранением ошибок (errata) и проблем безопасности. Для загрузки также подготовлены отдельно поддерживаемые репозитории с наборами пакетов Application Stream и CodeReady Builder.

Помимо пакета с ядром из состава RHEL (на базе ядра 5.14) в Oracle Linux предложено собственное ядро Unbreakable Enterprise Kernel 7 Update 3, основанное на ядре Linux 5.15 и оптимизированное для работы с промышленным программным обеспечением и оборудованием Oracle. Исходные тексты ядра, включая разбивку на отдельные патчи, доступны в публичном Git-репозитории Oracle. Ядро Unbreakable Enterprise Kernel устанавливается по умолчанию, позиционируется в качестве альтернативы штатному пакету с ядром RHEL и предоставляет ряд расширенных возможностей, таких как интеграция DTrace и улучшенная поддержка Btrfs. Кроме дополнительного ядра по функциональности выпуски Oracle Linux 9.5 и RHEL 9.5 полностью идентичны (список изменений можно посмотреть в анонсе RHEL 9.5).

Источник: https://www.opennet.ru/opennews/art.shtml?num=62258

Опубликованы дистрибутивы Rocky Linux 9.5 и Oracle Linux 9.5

Представлен релиз дистрибутива Rocky Linux 9.5, нацеленного на создание свободной сборки RHEL, способной занять место классического CentOS. Дистрибутив бинарно совместим с Red Hat Enterprise Linux и может использоваться в качестве замены RHEL 9.5 и CentOS 9 Stream. Поддержка ветки Rocky Linux 9 будет осуществляться до 31 мая 2032 года. Установочные iso-образы Rocky Linux
opennet

Опубликована 64 редакция рейтинга самых высокопроизводительных суперкомпьютеров

Опубликован 64-й выпуск рейтинга 500 самых высокопроизводительных компьютеров мира. Первое место в 64 редакции рейтинга занял новый кластер El Capitan, запущенный в Ливерморской национальной лаборатории Министерства энергетики США. Кластер насчитывает 11 миллионов процессорных ядер (CPU AMD EPYC 24C 1.8GH с ускорителем AMD Instinct MI300X) и обеспечивает производительность 1.742 экзафлопса. В качестве операционной системы применяется HPE Cray OS (редакция SUSE Linux Enterprise Server 15).

Смещённый на второе место прошлый лидер рейтинга, кластер Frontier, размещённый в Ок-Риджской национальной лаборатории Министерства энергетики США, модернизирован - число процессорный ядер (CPU AMD EPYC 64C 2GHz, ускоритель AMD Instinct MI250X) увеличено с 8.7 до 9 млн, что позволило повысить производительность с 1.206 до 1.353 экзафлопсов.

Со второго на третье место переместился кластер Aurora, развёрнутый в Аргоннской национальной лаборатории Министерства энергетики США. Кластер содержит 9.2 млн процессорных ядер (CPU Xeon CPU Max 9470 52C 2.4GHz, ускоритель Intel Data Center GPU Max) и обеспечивает производительность 1.012 экзафлопса. В качестве операционной системы в Aurora используется SUSE Linux Enterprise Server 15 SP4.

С третьего на четвёртное место сместился кластер Eagle запущенный в начале года компанией Microsoft для облака Azure. Кластер содержит 2 млн процессорных ядер (CPU Xeon Platinum 8480C 48C 2GHz) и демонстрирует пиковую производительность в 561 петафлопс. Программное обеспечение кластера базируется на Ubuntu 22.04.

Пятое место занял новый кластер HPC6, развёрнутый в итальянской нефтегазовой компании "Эни". Кластер содержит 3 млн процессорных ядер (AMD EPYC 64C 2GHz) и демонстрирует пиковую производительность в 477 петафлопс. Программное обеспечение кластера базируется на RHEL 8.9.

Что касается отечественных суперкомпьютеров, то созданные компанией Яндекс кластеры Червоненкис, Галушкин и Ляпунов опустились с 42, 69 и 79 мест на 60, 86 и 99 места. Данные кластеры созданы для решения задач машинного обучения и обеспечивают производительность 21.5, 16 и 12.8 петафлопса соответственно. Кластеры работают под управлением Ubuntu 16.04 и оснащены процессорами AMD EPYC 7xxx и GPU NVIDIA A100: кластер Chervonenkis насчитывает 199 узлов (193 тысячи ядер AMD EPYC 7702 64C 2GH и 1592 GPU NVIDIA A100 80G), Galushkin - 136 узлов (134 тысячи ядер AMD EPYC 7702 64C 2GH и 1088 GPU NVIDIA A100 80G), Lyapunov - 137 узлов (130 тысяч ядер AMD EPYC 7662 64C 2GHz и 1096 GPU NVIDIA A100 40G).

Развёрнутый Сбербанком кластер Christofari Neo опустился с 83 на 104 место. Christofari Neo работает под управлением NVIDIA DGX OS 5 (редакция Ubuntu) и демонстрирует производительность 11.95 петафлопса. Кластер насчитывает более 98 тысяч вычислительных ядер на базе CPU AMD EPYC 7742 64C 2.25GHz и поставляется с GPU NVIDIA A100 80GB. Второй кластер Сбербанка (Christofari) за полгода сместился с 142 на 172 место в рейтинге.

В рейтинге также остаётся ещё один отечественный кластер: Lomonosov 2, который сместился с 406 на 453 место (в 2015 году кластер Lomonosov 2 занимал 31 место, а его предшественник Lomonosov в 2011 году - 13 место). Кластер MTS GROM, который в прошлом рейтинге занимал 472 место, выбыл из списка 500 самых производительных систем. Таким образом, число отечественных кластеров в рейтинге уменьшилось с 7 до 6 систем (для сравнения в 2020 году в рейтинге было 2 отечественные системы, в 2017 году - 5, а в 2012 году - 12).

Наиболее интересные тенденции:

- Распределение по количеству суперкомпьютеров в разных странах:

1. США: 172 (171 - полгода назад). Суммарная производительность оценивается в 55.2% всей производительности рейтинга (полгода назад - 34.2%);
2. Китай: 63 (80). В сумме китайские кластеры генерируют 2.7% от всей производительности (полгода назад - 16%);
3. Германия: 41 (40). Суммарная производительность - 3.5% (8%);
4. Япония: 34 (29). Суммарная производительность - 8% (5.8%);
5. Франция: 24 (24). Суммарная производительность - 2.5% (4.8%);
6. Великобритания: 14 (16);
7. Южная Корея 13 (13);
8. Италия: 13 (11). Суммарная производительность - 7.1% (4%);
9. Нидерланды: 10 (9);
10. Канада 10 (10);
11. Бразилия 9 (8);
12. Польша: 8 (8);
13. Швеция 8 (7);
14. Саудовская Аравия 7 (8);
15. Тайвань: 7 (6);
16. Индия: 7 (4);
17. Норвегия: 6 (5);
18. Россия 6 (7);
19. Швейцария 5 (5);
20. Австралия 4 (5);
21. Ирландия 4 (4);
22. Сингапур: 4 (3);
23. Чехия: 3 (3);
24. Испания: 3 (3).
25. Финляндия: 3 (3);
26. Австрия: 3;
27. Объединённые Арабские Эмираты: 3.


- В рейтинге операционных систем, используемых в суперкомпьютерах, c ноября 2017 года остаётся только Linux;
- Распределение по дистрибутивам Linux (в скобках - 6 месяцев назад):

- 38.2% (42.4%) используют системы на базе Linux, но не детализируют дистрибутив;
- 17.4% (16.8%) - RHEL;
- 10.2% (8.4%) - Ubuntu;
- 8.4% (9.4%) CentOS;
- 8.4% (9.2%) - Cray Linux;
- 4.2% (4.4%) - SUSE;
- 4% (3%) - Rocky Linux;
- 1% (1.2%) - Alma Linux;
- 0.2% (0.2%) - Amazon Linux


- Минимальный порог производительности для вхождения в Top500 за 6 месяцев составил 2.31 петафлопса (полгода назад - 2.13 петафлопса). Десять лет назад лишь 51 кластер показывал производительность более петафлопса. Для Top100 порог вхождения вырос с 9.46 до 12.8 петафлопсов, а для Top10 - со 121.4 до 208 петафлопсов.
- Суммарная производительность всех систем в рейтинге за 6 месяцев возросла с 8.2 до 11.7 экзафлопсов (пять лет назад было 1.65 экзафлопса, десять лет назад - 0.31 экзафлопса). Система, замыкающая нынешний рейтинг, в прошлом выпуске находилась на 454 месте.
- Общее распределение по количеству суперкомпьютеров в разных частях света выглядит следующим образом: 181 суперкомпьютер находится в Северной Америке 181 (181 - полгода назад), 161 в Европе (157), 143 в Азии (147), 10 в Южной Америке (9), 4 в Океании (5) и 1 в Африке (1).
- В качестве процессорной основы лидируют CPU Intel - 61.8% (полгода назад было 62.8%), на втором месте AMD 32.4% (31.4%), на третьем Fujitsu A64FX - 1.8% и NVIDIA Grace - 1.8%, на четвёртом IBM Power - 0.8% (было 1.2%).
- 21.4% (полгода назад 20%) всех используемых процессоров имеют 64 ядра, 17.2% (17.8%) - 24 ядра, 10.2% (9.4%) - 32 ядра, 8.4% (5.8%) - 48 ядер, 7.6% (9%) - 20 ядер, 7.4% (4.4%) - 56 ядер, 4.6% (5.4%) - 16 ядер, 4.6% (5.6%) - 18 ядер, 4.4% (5.2%) - 28 ядер, 2% - 96 ядер. Суммарное число процессорных ядер во всех кластерах рейтинга за полгода увеличилось с 114.6 млн до 128.7 млн.
- 209 из 500 систем (полгода назад - 196) дополнительно используют ускорители или сопроцессоры, при этом в 183 (142) системах задействованы чипы NVIDIA, в 19 (14) - AMD, в 1 (1) - Intel Xeon Phi, в 4 (4) - Intel DataCenter GPU, в 1 (1) - Matrix-2000.
- Среди производителей кластеров на первом месте закрепилась компания Lenovo - 32.4% (полгода назад 32.6%), на втором месте компания Hewlett-Packard Enterprise - 23% (22.4%), на третьем месте компания EVIDEN - 10.4% (9.8%), далее следуют Dell EMC 7.4% (6.8%), NVIDIA 5.2% (4.4%), Fujitsu 3% (2.8%), NEC 2.8% (2.8%), Inspur - 2.2% (4.4%), Microsoft Azure - 1.6% (1.4%), Penguin Computing - 1.4% (1.4%), MEGWARE 1.4% (1.4%), IBM 0.6% (1%), Sugon 0.6% (1%), Supermicro 0.6%.
- InfiniBand применяется для связи узлов в 50.6% (полгода назад 47.8%) кластеров, Ethernet используется в 37.4% (39%) кластеров, Omnipath - 6.2% (6.4%). Если рассматривать суммарную производительность, то системы на базе InfiniBand охватывают 33.6% (39.2%) всей производительности Top500, а Ethernet - 58.1% (48.5%).

Одновременно опубликован новый выпуск альтернативного рейтинга кластерных систем Graph 500, ориентированного на оценку производительности суперкомпьютерных платформ, связанных с симулированием физических процессов и задач по обработке больших массивов данных, свойственных для таких систем. Рейтинги Green500, HPCG (High-Performance Conjugate Gradient) и HPL-AI объединены с Top500 и отражаются в основном рейтинге Top500.

Дополнительно можно отметить релиз кластерной файловой системы Lustre 2.16, используемой в большей части крупнейших Linux-кластеров, содержащих десятки тысяч узлов. Ключевыми компонентами Lustre являются серверы обработки и хранения метаданных (MDS), управляющие серверы (MGS), серверы хранения объектов (OSS), хранилище объектов (OST, поддерживается работа поверх ext4 и ZFS) и клиенты. Код проекта распространяется под лицензией GPLv2. В новой версии реализована полноценная поддержка работы Lustre в сетях IPv6, используя компоненты LNet (Lustre Network) и LND (Lustre Network Daemon). Также проведена оптимизация обработки содержимого больших каталогов и добавлена поддержка RHEL 9.4 и Rocky Linux 9.4.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62256

Опубликована 64 редакция рейтинга самых высокопроизводительных суперкомпьютеров

Опубликован 64-й выпуск рейтинга 500 самых высокопроизводительных компьютеров мира. Первое место в 64 редакции рейтинга занял новый кластер El Capitan, запущенный в Ливерморской национальной лаборатории Министерства энергетики США. Кластер насчитывает 11 миллионов процессорных ядер (CPU AMD EPYC 24C 1.8GH с ускорителем AMD Instinct MI300X) и обеспечивает производительность 1.742 экзафлопса. В качестве операционной системы применяется
opennet

Google намерен перевести Chrome OS на платформу Android

Издание Android Authority получило сведения о намерении компании Google заменить платформу Chrome OS на новую реализацию, построенную на базе платформы Android. О планах задействования отдельных компонентов Android в Chrome OS, таких как ядро и системные библиотеки, сообщалось в июне, но судя по новым сведениям планы более глобальные, чем просто задействование частей Androd в Chrome OS, и сводятся к полной унификации и оставлению только Android с воссозданием интерфейса в стиле Chrome OS поверх данной платформы.

В качестве причин упоминается желание усилить конкуренцию с iPad и более эффективно использовать инженерные ресурсы чтобы не распылять усилия на две операционные системы. Подробности о планах по интеграции проектов не сообщается, но предполагается, что Google постепенно начнёт вытеснение классического Chrome OS путём поставки на новых моделях Chromebook похожего по функциональности интерфейса, работающего на базе Android. По неофициальной информации первым подобным устройством станет ноутбук Pixel Laptop c прошивкой на базе платформы Android, в которой по умолчанию включён появившийся в Android 15 режим рабочего стола.

https://honk.any-key.press/d/smv47s9Bdn3Wr6gSs2.png

Напомним, что операционная система ChromeOS напоминает по своей архитектуре атомарно обновляемые дистрибутивы Linux, использует ядро Linux со специфичными патчами, системный менеджер upstart и сборочный инструментарий ebuild/portage из Gentoo Linux. Несмотря на то, что пользовательское окружение ChromeOS сосредоточено на использовании web-браузера, а вместо стандартных программ задействованы web-приложения, платформа включает в себя полноценный многооконный интерфейс, рабочий стол и панель задач. Для запуска приложений, созданных для Linux и Android, используются виртуальные машины, запускаемые при помощи гипервизора CrosVM, основанного на KVM.

По умолчанию в Chrome OS применяется шифрование дисковых разделов c пользовательскими данными (при помощи fscrypt), а системные разделы монтируются в режиме только для чтения, верифицируются по цифровой подписи и обновляются атомарно (два корневых раздела, рабочий и для установки обновления, которые меняются местами). Вывод на экран осуществляется при помощи графического стека Freon (ведётся работа по переходу на использование Wayland) и оконного менеджера Aura. Исходный код распространяются под свободной лицензией Apache 2.0.

https://honk.any-key.press/d/pTD9q7h5Dl3834m1q4.png

Дополнительно можно отметить публикацию изданием Bloomberg неподтверждённой информации о том, что в рамках антимонопольного разбирательства, в котором Google был признан монополистом на рынке поисковых систем, Министерство юстиции США намерено рекомендовать суду вынести предписание, обязывающее Google продать часть бизнеса, связанную с разработкой браузера Chrome. Судебное слушание по вопросу изменений, которые компания Google должна будет реализовать для устранения нарушения антимонопольного законодательства, намечено на апрель 2025 года, а окончательное решение суд намерен вынести в августе 2025 года. Изначально предполагалось, что требованием к Google станет продажа бизнеса, связанного с мобильной платформой Android.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62254

Google намерен перевести Chrome OS на платформу Android

Издание Android Authority получило сведения о намерении компании Google заменить платформу Chrome OS на новую реализацию, построенную на базе платформы Android. О планах задействования отдельных компонентов Android в Chrome OS, таких как ядро и системные библиотеки, сообщалось в
opennet

Доступно ядро Linux-libre 6.12. Решение лицензионных проблем с драйверами Tuxedo

Латиноамериканский Фонд свободного ПО опубликовал полностью свободный вариант ядра Linux 6.12 - Linux-libre 6.12-gnu, очищенный от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. Кроме того, Linux-libre отключает функции ядра по загрузке внешних несвободных компонентов, не входящих в поставку ядра, и удаляет упоминание об использовании несвободных компонентов из документации.

Для очистки ядра от несвободных частей проектом Linux-libre создан универсальный shell-скрипт, который содержит тысячи шаблонов для определения наличия бинарных вставок и исключения ложных срабатываний. Также доступны для загрузки готовые патчи, созданные на основе использования вышеупомянутого скрипта. Ядро Linux-libre рекомендовано для использования в дистрибутивах, соответствующих критериям Фонда СПО по построению полностью свободных дистрибутивов GNU/Linux. Например, Linux-libre используется в таких дистрибутивах, как Dragora Linux, Trisquel, Dyne:Bolic, gNewSense, Parabola, Musix и Kongoni.

В выпуске Linux-libre 6.12-gnu добавлен код для чистки блобов в драйверах для SoC CPM/QE QMC, беспроводных чипов Realtek 8852BE-VT, bluetooth-адаптеров Amlogic, сетевых адаптеров amcc qt2025, датчиков aw96103/aw96105 и кодеков TI TLV320AIC31XX. Проведена дополнительная чистка блобов в драйверах для xHCI-контроллеров Renesas и Intel ISH (Integrated Sensor Hub) HID. Обновлён код удаления блобов в драйверах и подсистемах MHI PCI host, Adreno 620/621, r8169, Qualcomm q6v5 remoteproc, rtw8852c, rtw8922a, а также в dts-файлах для ARM54-чипов TI PRU и Qualcomm. Прекращена чистка драйверов для беспроводных карт ks7010 и звуковой подсистемы Intel SkyLake, так как данные драйверы были удалены из состава ядра.

Отдельно отмечается выявление в исходных текстах одного из драйверов исполняемого объектного кода, сгенерированного из неопубликованных исходных текстов и встроенного в форме последовательности шестнадцатеричных чисел. Проблемный драйвер явно не называется, но, судя по изменениям, речь про наличие микрокода шейдера в файле gfx_v9_4_3_cleaner_shader.h, входящего в состав драйвера AMDGPU. Первая подобная вставка была выявлена в ядре 6.11 и затем предложена одним из разработчиков к удалению, так как исходные тексты не были предоставлены (возникла ситуация поставки под лицензией GPL программы, доступной только в бинарном виде). Тем не менее, в ядре 6.12 указанный бинарный код был сохранён, а в тот же драйвер была добавлена ещё одна подобная вставка.

Кроме того, в анонсе Linux-libre 6.12 упомянуты ещё два события:

- Для включения в состав ядра предложено исправление, блокирующее драйверам для ноутбков Tuxedo доступ к подсистемам ядра, доступным только для кода под лицензией GPLv2 (EXPORT_SYMBOL_GPL). Возможность блокировки изначально была введена для ограничения связывания проприетарных драйверов с компонентами ядра Linux, экспортируемыми только для модулей под лицензией GPLv2, но успешно обходится через создание модулей-прослоек, транслирующих доступ проприетарного драйвера к необходимым API ядра. В случае с драйверами Tuxedo, ситуация обратная - несмотря не то, что драйверы Tuxedo развиваются отдельной от ядра, они поставляются под лицензией GPLv3, которая с одной стороны не совместима с GPLv2, но с другой стороны отстаивает больше свобод, например, защищает от тивоизации.

Отмечается, что компании Tuxedo давно предлагали сменить лицензию на свои драйверы, но она продолжала поставлять код под лицензией GPLv3 и при этом указывала в коде драйвера макрос 'MODULE_LICENSE("GPL")' вместо 'MODULE_LICENSE("GPL v3")' для получения доступа ко всем подсистемам ядра. Компания Tuxedo согласилась с критикой и изменила лицензию на GPLv2+ для части своих драйверов. Изменение применено к драйверам gxtp7380, ite_8291, ite_8291_lb, ite_8297, ite_8297, stk8321, tuxedo_compatibility_check, tuxedo_nb02_nvidia_power_ctrl и tuxedo_tuxi. Более десятка драйверов пока не перелицензированы, так как для смены лицензии на них требуется получение согласия от сторонних разработчиков.

Использование в коде 'MODULE_LICENSE("GPL")' вместо 'MODULE_LICENSE("GPL v3")' представитель Tuxedo объяснил отсутствием внятного пояснения в документации на ядро, что маркер "GPL" нельзя использовать для лицензии GPLv3. Также он рассказал, что компания намерена передать свои драйверы в основной состав ядра Linux и для этого ведёт работу по их полному переписыванию под лицензией GPLv2 c учётом требований к компонентам ядра.


- Разработчики ядра обсуждают инициативу по добавлению флага X86_BUG_OLD_MICROCODE, сигнализирующего о том, что в системе используется не самая свежая версия микрокода CPU. При выставлении данного флага систему предлагается рассматривать как имеющую потенциальные неисправленные уязвимости. Попытки уравнять состояние системы с необновлённым микрокодом с ситуацией наличия реальных неисправленных уязвимостей в коде привело к критике со стороны одного из сопровождающих проект Linux-libre.

По мнению сопровождающего Linux-libre, ядро не должно ущемлять право пользователей не устанавливать непроверенные проприетарные прошивки и микрокод на своём собственном устройстве. Речь о наличии уязвимостей предлагается вести в привязке к конкретным исправлениям в определённых версиях прошивок, а не называть уязвимыми любые системы, на которых не установлен самый свежий микрокод, без разбора проявляются ли в данной системе уязвимости и содержит ли свежая прошивка исправления уязвимостей.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62251

Доступно ядро Linux-libre 6.12. Решение лицензионных проблем с драйверами Tuxedo

Латиноамериканский Фонд свободного ПО опубликовал полностью свободный вариант ядра Linux 6.12 - Linux-libre 6.12-gnu, очищенный от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. Кроме того, Linux-libre отключает функции ядра по загрузке внешних несвободных компонентов, не входящих в поставку ядра, и удаляет упоминание об использовании...
opennet

Опубликован дистрибутив AlmaLinux 9.5

Доступен выпуск дистрибутива AlmaLinux 9.5, синхронизированный c новым выпуском Red Hat Enterprise Linux 9.5 и содержащий все предложенные в данном выпуске изменения. Установочные образы подготовлены для архитектур x86_64, ARM64, ppc64le и s390x в форме загрузочного (1 ГБ), минимального (2 ГБ) и полного образа (10 ГБ). Позднее будут сформированы Live-сборки с GNOME, KDE, MATE и Xfce, а также образы для плат Raspberry Pi, контейнеров, WSL (Windows Subsystem for Linux) и облачных платформ.

Дистрибутив по возможности бинарно совместим с Red Hat Enterprise Linux и может использоваться в качестве замены RHEL 9.5 и CentOS 9 Stream. Изменения сводятся к ребрендингу, удалению специфичных для RHEL пакетов, таких как redhat-*, insights-client, subscription-manager-migration*, kpatch*, kmod-redhat-*, rhc, spice* и virtio-win. Дополнительно для использования доступен репозиторий Synergy, в котором размещены пакеты, отличающиеся от Red Hat Enterprise Linux. В настоящее время в репозитории Synergy уже опубликованы пакеты c пользовательским окружением Pantheon, развиваемым проектом Elementary OS, и утилитой Warpinator, предназначенной для шифрованного обмена файлами между двумя компьютерами.

Дистрибутив AlmaLinux основан компанией CloudLinux в ответ на преждевременное сворачивание поддержки CentOS 8 компанией Red Hat (выпуск обновлений для CentOS 8 прекращён в конце 2021 года, а не в 2029 году, как предполагали пользователи). Проект курирует отдельная некоммерческая организация AlmaLinux OS Foundation, которая была создана для разработки на нейтральной площадке с участием сообщества и c использованием модели управления, похожей на организацию работы проекта Fedora. Дистрибутив бесплатен для всех категорий пользователей. Все наработки AlmaLinux публикуются под свободными лицензиями.

Кроме AlmaLinux, в качестве альтернатив классическому CentOS также позиционируются Rocky Linux (развивается сообществом под руководством основателя CentOS), Oracle Linux, SUSE Liberty Linux и EuroLinux. Кроме того, компания Red Hat предоставила возможность бесплатного использования RHEL в организациях, развивающих открытое ПО, и в окружениях индивидуальных разработчиков, насчитывающих до 16 виртуальных или физических систем.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62247

Опубликован дистрибутив AlmaLinux 9.5

Доступен выпуск дистрибутива AlmaLinux 9.5, синхронизированный c новым выпуском Red Hat Enterprise Linux 9.5 и содержащий все предложенные в данном выпуске изменения. Установочные образы подготовлены для архитектур x86_64, ARM64, ppc64le и s390x в форме загрузочного (1 ГБ), минимального (2 ГБ) и полного образа (10 ГБ). Позднее будут сформированы
opennet

Выпуск GhostBSD 24.10.1

Опубликован релиз десктоп-ориентированного дистрибутива GhostBSD 24.10.1, построенного на базе FreeBSD 14-STABLE и предлагающего пользовательское окружение MATE. Отдельно сообществом формируются неофициальные сборки с Xfce. По умолчанию в GhostBSD применяется файловая система ZFS. Поддерживается как работа в Live-режиме, так и установка на жесткий диск (используется собственный инсталлятор ginstall, написанный на языке Python). Загрузочные образы сформированы для архитектуры x86_64 (2.6 ГБ).

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

- Осуществлена синхронизация с веткой FreeBSD 14-STABLE.
- Браузер Сhromium собран с настройками, позволяющими просматривать защищённый контент через Netflix.
- Файловая система UFS удалена из списка опций для установки (оставлена только ФС ZFS).
- Добавлен пакет utouch-kmod с драйвером для мыши, эмулируемой в VirtualBox, BHyve и других системах виртуализации.
- Для поддержки игровых контроллеров в список загружаемых модулей добавлен драйвер hgame.
- Добавлена возможность пометки пакетов важными для функционирования дистрибутива. Подобная метка выставлена для системных пакетов, чтобы предотвратить их случайное удаление при попытке чистки пакетов, не связанных зависимостями с другими пакетами.
- Добавлена поддержка GPU AMD FirePro, AMD Radeon R5 и R6.

https://honk.any-key.press/d/R8F93scQSnCdw7TZTL.jpg

Источник: https://www.opennet.ru/opennews/art.shtml?num=62245

Выпуск GhostBSD 24.10.1

Опубликован релиз десктоп-ориентированного дистрибутива GhostBSD 24.10.1, построенного на базе FreeBSD 14-STABLE и предлагающего пользовательское окружение MATE. Отдельно сообществом формируются неофициальные сборки с Xfce. По умолчанию в GhostBSD применяется файловая система ZFS. Поддерживается как работа в Live-режиме, так и установка на жесткий диск (используется собственный инсталлятор ginstall, написанный на языке Python). Загрузочные образы
opennet

Выпуск графического тулкита FLTK 1.4.0 с поддержкой Wayland

Спустя 13 лет с момента публикации ветки 1.3 увидел свет релиз легковесного кроссплатформенного графического тулкита FLTK 1.4.0 (Fast Light Toolkit). FLTK написан на языке C++ и распространяется под лицензией лицензии LGPLv2. Ветка FLTK 1.4 отмечена как обратно совместимая с выпусками 1.3.x, т.е. при переходе на FLTK 1.4 не требуется внесение изменений в код, но необходима пересборка из-за изменения ABI. Для визуального построения GUI-интерфейса в рамках проекта развивается оболочка FLUID. Поддерживается работа в Linux (X11 и Wayland), BSD-системах, Windows, macOS и различных UNIX-подобных ОС.

Среди основных нововведений:

- Добавлена поддержка работы в окружениях на базе протокола Wayland в дистрибутивах Linux и во FreeBSD. По умолчанию библиотека собрана с поддержкой как X11, так и Wayland - вначале предпринимается попытка использования Wayland, а если данный протокол недоступен как запасной вариант используется X11.
- Добавлены новые виджеты Fl_Flex и Fl_Grid для создания адаптивных графических интерфейсов, а также виджет Fl_Scheme_Choice c реализацией нового варианта окна выбора элементов. Улучшен интерфейс виджетов Fl_Tabs, Fl_Tile и Fl_Spinner.
- Добавлена поддержка экранов с высокой плотностью пикселей (HighDPI) на платформах Linux, Unix и Windows. Улучшена поддержка HighDPI в macOS.
- Добавлена поддержка новых версий платформы macOS, включая macOS 15.0 "Sequoia".
- Расширены возможности сборки с использованием CMake. Поддержку autotools/configure/make планируют прекратить в ветке FLTK 1.5.0, оставив только возможность сборки в CMake.
- Переписан платформозависимый код, улучшена переносимость на различные системы.

https://honk.any-key.press/d/G7RJ2Qmn2Q7117dfb64TG.png

Источник: https://www.opennet.ru/opennews/art.shtml?num=62244

Выпуск графического тулкита FLTK 1.4.0 с поддержкой Wayland

Спустя 13 лет с момента публикации ветки 1.3 увидел свет релиз легковесного кроссплатформенного графического тулкита FLTK 1.4.0 (Fast Light Toolkit). FLTK написан на языке C++ и распространяется под лицензией лицензии LGPLv2. Ветка FLTK 1.4 отмечена как обратно совместимая с выпусками 1.3.x, т.е. при переходе на FLTK 1.4 не требуется внесение изменений в код, но необходима пересборка из-за изменения ABI. Для визуального построения GUI-интерфейса...
opennet

Релиз ядра Linux 6.12 с поддержкой Realtime-режима

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.12. Среди наиболее заметных изменений: возможность включения Realtime-режима, sched_ext для создания планировщиков CPU через eBPF, вывод QR-кода при аварийных состояниях, механизм Device Memory TCP, механизм резервирования ресурсов SCHED_DEADLINE server, улучшение планировщика задач EEVDF, модуль IPE для задания политик обеспечения целостности.

В новую версию принято 14607 исправлений от 2167 разработчиков, размер патча - 37 МБ (изменения затронули 13087 файлов, добавлено 507913 строк кода, удалено 234083 строк). В прошлом выпуске было 15130 исправлений от 2078 разработчиков, размер патча - 85 МБ (в ядре 6.10 патч был размером 41 МБ). Около 45% всех представленных в 6.12 изменений связаны с драйверами устройств, примерно 12% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 13% связано с сетевым стеком, 6% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 6.12:

- Память и системные сервисы

- Предоставлена возможность сборки ядра с опцией PREEMPT_RT без дополнительных патчей для работы в режиме реального времени. Последней отсутствующей в ядре возможностью, не позволявшей активировать режим PREEMPT_RT, была поддержка неблокирующего атомарного вывода через функцию printk, которая также принята в состав ядра. Поддержка PREEMPT_RT доступна для архитектур x86, x86_64, ARM64 и RISC-V. До сих пор реализация режима PREEMPT_RT поставлялась в форме внешних патчей, на основе которых некоторые дистрибутивы, такие как RHEL, SUSE и Ubuntu, создавали отдельные Realtime-редакции своих продуктов, востребованные в таких областях, как финансовые системы, устройства обработки звука и видео, авиация, медицина, робототехника, телекоммуникационные и промышленные системы, в которых необходимо обеспечить предсказуемое время обработки событий.
- Добавлен механизм "sched_ext" (SCX), позволяющий использовать eBPF для создания планировщиков CPU, охватывающих практически все аспекты планирования выполнения задач и распределения ресурсов CPU. Подобные планировщики могут загружаться динамически и выполняться внутри ядра Linux в виртуальной машине eBPF. Механизм sched_ext упрощает создание специфичных для определённых задач планировщиков, даёт возможность экспериментировать с различными техниками и стратегиями планирования, а также позволяет быстро создавать рабочие прототипы и заменять планировщики на лету в рабочих инфраструктурах. Например, при помощи sched_ext можно создать планировщик, учитывающий специфику определённого приложения и динамически меняющий стратегию планирования его выполнения в зависимости от состояния системы и каких-то дополнительных факторов.
- В состав включена оставшаяся часть патчей, необходимых для работы механизма SCHED_DEADLINE server, решающего проблему с недополучением ресурсов CPU обычными задачами в условиях монополизации CPU высокоприоритетными (realtime) задачами. Для предотвращения монополизации CPU в ядре ранее использовался механизм Realtime throttling, который пытался резервировать 5% для низкоприоритетных задач, оставляя 95% времени realtime-задачам. Данный механизм оставлял желать лучшего так как обычные задачи во многих ситуациях недополучали процессорное время. SCHED_DEADLINE server реализует более эффективный механизм резервирования ресурсов.
- Завершена интеграция планировщика задач EEVDF (Earliest Eligible Virtual Deadline First), который пришёл на смену планировщику CFS (Completely Fair Scheduler), поставлявшемуся начиная с ядра 2.6.23. Новый планировщик при выборе следующего процесса для передачи выполнения учитывает процессы, которые недополучили процессорных ресурсов или получили незаслуженно много процессорного времени. В первом случае форсируется передача управления процессу, а во втором, наоборот, откладывается. Старый планировщик CFS использовал для определения процессов, требующих отдельного внимания, эвристику и тонкие настройки, в то время как новый планировщик отслеживает их более явно и не требует тонкой настройки. Предполагается, что EEVDF позволит снизить задержки при выполнении задач, с которыми у CFS возникали проблемы с планированием.
- В обработчик аварийных ситуаций в ядре - DRM Panic, использующий подсистему DRM (Direct Rendering Manager) для отображения наглядного отчёта в стиле "синего экрана смерти", добавлена возможность показа на экране логотипа и QR-кода с отчётом kmsg при возникновении аварийного состояния. Так как в QR-код умещается только 2953 байт, предусмотрена опция DRM_PANIC_SCREEN_QR_CODE_URL, при которой отчёт kmsg сжимается при помощи zlib и прикрепляется в качестве параметра к URL, что позволяет передать через QR-код V40 около 7500 байтов. При сборке пакетов с ядром дистрибутивы могут задать базовую ссылку для URL, что позволит организовать переход на страницу для отправки сообщения о проблеме. Для выбора формата QR-кода предусмотрена настройка DRM_PANIC_SCREEN_QR_VERSION.
- Добавлена поддержка расширения ARM POE (Permission Overlay Extension), позволяющего задавать права доступа к областям памяти. При помощи данного расширения на системах с процессорами ARM64 может быть реализован механизм Memory Protection Keys, применяемый для ограничения доступа к страницам памяти без изменения таблицы страниц памяти.
- Для архитектур Loongarch, ARM64, PowerPC и s390 перенесена реализация системного вызова getrandom(), оптимизированная при помощи механизма vDSO (virtual dynamic shared object), дающего возможность перенести обработчик системного вызова из ядра в пространство пользователя и избежать переключений контекста. Оптимизация позволяет до 15 раз ускорить получение случайных чисел.
- В подсистему асинхронного ввода/вывода io_uring добавлена возможность использования абсолютных таймаутов, срабатывающих при достижении определённого времени на системных часах (ранее могли выставляться только относительные таймауты, в которых указывалась продолжительность с начала операции).
- Добавлены файлы для генерации биндингов для библиотеки libcpupower при помощи инструментария SWIG, позволяющего формировать биндинги из кода на C/C++ для различных языков программирования. Биндинги позволяют создавать скрипты на Python и других языках, и использовать их для расширения функциональности библиотеки libcpupower, предоставляющей API для управления cpufreq и драйверами из пространства пользователя.
- В утилите cpuidle реализовано отображение значения состояния простоя "residency", применяемого для realtime-систем и учитывающего минимальное время, которое процессор должен находиться в состоянии простоя, чтобы оправдать затраты энергии на переход в это состояние и выход из него.
- Добавлена возможность использования компилятора Clang для сборки стандартной Си-библиотеки nolibc, входящей в состав исходных текстов ядра Linux и предоставляющей обвязку над базовыми системными вызовами. При сборке nolibc в Clang допускается использование оптимизации на этапе связывания (LTO).
- Объявлены устаревшими некоторые интерфейсы cgroup1, такие как аккаунтинг TCP, первая версия мягких ограничений (soft limit) и управление исчерпанием свободной памяти. Поддержка указанных функций пока сохраняется в полном объёме, а предупреждение сделано для изучения числа пользователей, которые продолжают использовать данные возможности.
- Добавлена возможность настройки кольцевого буфера трассировки для сохранения накопленных данных после перезагрузки, что позволит не терять накопленную отладочную информацию в случае аварийного завершения работы ядра. Данные сохраняются в памяти. Включение осуществляется через параметр командной строки ядра trace_instance, например, выставление "trace_instance=boot_map@0x285400000:12M" зарезервирует 12 МБ памяти по адресу 0x285400000 для буфера "boot_map", который будет доступен через файл /sys/kernel/tracing/instances/boot_map.
- Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). Добавлены модули 'list' и 'rbtree' для работы с двунаправленными связными списками и красно-чёрными деревьями поиска (red-black tree). Расширены возможности модулей 'init', 'sync', 'types' и 'error'. Предоставлена возможность использования кода на Rust при сборке ядра с защитой от атак Spectre (опции MITIGATION_{RETHUNK,RETPOLINE,SLS}), использования отладочной системы KASAN, механизмов защиты kCFI (kernel Control Flow Integrity) и Shadow Call, а также при использовании дополнительных плагинов GCC. Добавлен драйвер для Ethernet-контроллера Applied Micro QT2025 PHY, написанный на Rust. Подготовлен отдельный сайт с документацией - rust.docs.kernel.org.
- В состав исходных текстов ядра добавлена утилита xdrgen для преобразования XDR-спецификаций (eXternal Data Representation) в функции кодирования и декодирования XDR, написанные с использованием Си-стиля, принятого в ядре Linux.
- В ядро принято изменение с реализацией механизма маскирования указателей для снижения числа медленных вызовов barrier_nospec() в 64-битной функции copy_from_user(), применяемой для копирования данных в ядро из пространства пользователя. Применение маскирования ускоряет на 2.6% прохождение теста "per_thread_ops", оценивающего число операций, которые могут быть выполнены в одном потоке.


- Дисковая подсистема, ввод/вывод и файловые системы

- В подсистему VFS добавлена возможность работы c устройствами хранения, размер блоков в которых больше, чем размер страницы памяти в системе. В файловых системах данная возможность пока поддерживается только в XFS.
- В подсистему FUSE, позволяющую создавать реализации файловых систем, работающие в пространстве пользователя, добавлена поддержка маппинга идентификаторов пользователей примонтированных файловых систем, применяемого для сопоставления файлов определённого пользователя на примонтированном чужом разделе с другим пользователем в текущей системе.
- Реализована новая fcntl-операция F_CREATED_QUERY, дающая приложению возможность определить был ли создан файл, открытый с использованием флага O_CREAT, или он уже существовал до этого.
- В системный вызов name_to_handle_at() добавлена возможность использования уникальных 64-разрядных идентификаторов точек монтирования для исключения состояния гонки при разборе /proc/mountinfo.
- Размер структуры "file" в ядре сокращён с 232 до 184 байт, что позволяет сократить потребление памяти на системах, активно работающих с файлами.
- Запрещено монтирование файловых систем к точкам монтирования внутри иерархии /proc, например, в /proc/PID/fd, что создавало потенциальные проблемы с безопасностью.
- В псевдо-ФС NSFS (NameSpace FS), используемой для работы с пространствами имён, реализовано предоставление дополнительной информации о пространствах имён точек монтирования.
- В файловой системе EROFS (Extendable Read-Only File System), предназначенной для использования на разделах, доступных в режиме только для чтения, появилась поддержка монтирования файловых систем напрямую из дисковых образов, сохранённых в виде файлов.
- В XFS добавлены новые ioctl-команды XFS_IOC_START_COMMIT и XFS_IOC_COMMIT_RANGE для обмена содержимым между двумя файлами.
- В NFS добавлена поддержка протокола "LOCALIO", позволяющему определить находятся ли клиент и сервер NFS на одном и том же хосте, для задействования соответствующих оптимизаций.
- В файловой системе Btrfs предложены оптимизации производительности, проведён рефакторинг кода, сокращена область блокировки экстентов при операциях чтения, продолжена работа по переводу на использование фолиантов страниц памяти (page folios), реализовано автоматическое освобождение памяти для структуры btrfs_path.
- В файловой системе Ext4 устранены ошибки, связанные с выделением блоков, управлением экстентами, механизмом "fast commit" и журналированием.


- Виртуализация и безопасность

- Добавлен LSM-модуль IPE (Integrity Policy Enforcement), разработанный компанией Microsoft для расширения существующей системы мандатного управления доступом. Модуль позволяет определить общую политику обеспечения целостности для всей системы, указывающую какие операции допустимы и каким способом следует верифицировать подлинность компонентов. Например, при помощи IPE можно указать какие исполняемые файлы разрешено запускать с учётом проверки их соответствия эталонной версии при помощи криптографических хэшей, предоставляемых системой dm-verity.
- На этапе компиляции ядра предоставлена возможность раздельного включения доступных методов защиты от разных уязвимостей класса Spectre в CPU. В Kconfig предложены новые параметры: MITIGATE_MDS (защита от уязвимости Microarchitectural Data Sampling), MITIGATE_TAA (защита от уязвимости TSX Asynchronous Abort), MITIGATE_MMIO_STALE_DATA (защита от уязвимости MMIO Stale Data), MITIGATE_L1TF (защита от уязвимости L1 Terminal Fault), MITIGATE_RETBLEED (защита от уязвимости Retbleed), MITIGATE_SPECTRE_V1, MITIGATE_SPECTRE_V2 (защита от уязвимостей Spectre), MITIGATE_SRBDS (защита от уязвимости Special Register Buffer Data Sampling), MITIGATE_SSB (защита от уязвимости Speculative Store Bypass).
- Добавлен параметр командной строки proc_mem.force_override и набор сборочных настроек в Kconfig (PROC_MEM_FORCE_ALWAYS, PROC_MEM_FORCE_PTRACE и PROC_MEM_FORCE_NEVER), позволяющих запретить изменение памяти через /proc/pid/mem.
- Подсистема LSM (Linux security module) переведена на использование статических вызовов, что позволило усилить безопасности и повысить производительность.
- Обеспечена возможность использования штатных ядер для архитектуры ARM64 в гостевых окружениях, выполняемых на Android-системах с модифицированным гипервизором KVM (protected KVM).
- В LSM-модуле Landlock, позволяющем ограничить взаимодействие группы процессов с внешним окружением, реализована концепция "IPC scoping" для выборочного ограничения взаимодействия с sandbox-окружениями, используя Unix-сокеты и сигналы. Например, можно запретить установку соединений с использованием Unix-сокетов из sandbox-окружения к процессам, в которых не применяется изоляция, но разрешить соединения с процессами в той же scope-области.


- Сетевая подсистема

- Добавлен механизм Device Memory TCP, позволяющий использовать сетевые сокеты для прямой отправки содержимого памяти периферийного устройств по сети (режим zero-copy) и прямого размещения содержимого сетевых пакетов в области памяти устройства на стороне получателя. Передаваемые в пакетах данные передаются от сетевой карты в память периферийного устройства или из памяти устройства в сетевую карту напрямую, минуя CPU, а заголовки пакетов попадают в обычные буферы ядра.
- Расширены возможности многих Ethernet и беспроводных драйверов. Например, в драйвере Intel iwlwifi добавлена поддержка выноса операций RLC/SMPS на сторону прошивки, в драйвере RealTek rtw89 повышена производительность и добавлена поддержка чипов RTL8852BT/8852BE-VT (WiFi 6), в Ethernet-драйвере microchip добавлена поддержка спецификаций IEEE 802.3bw (100BASE-T1) и IEEE 802.3bp, улучшены реализации виртуальных Ethernet Microsoft vNIC и IBM veth. Добавлены новые драйверы для Ethernet-чипов Realtek RTL9054, RTL9068, RTL9072, RTL9075, RTL9068, RTL9071 и Microchip LAN8650/1 10BASE-T1S MAC-PHY.
- В MPTCP (MultiPath TCP), расширении протокола TCP для организации доставки TCP-пакетов одновременно по нескольким маршрутам через разные сетевые интерфейсы, размер используемых при маршрутизации весовых коэффициентов увеличен с 8 до 16 бит. Реализовано определение теряющегося (blackhole) трафика и приостановки на некоторое время попыток установки соединений с системами, приводящими к потере трафика.
- Для IPv6 реализована поддержка флага "p" в PIO (Prefix Information Option), применяемого в анонсах RA (IPv6 Router Advertisements) для выбора модели развёртывания клиентов через DHCPv6-PD (DHCPv6 Prefix Delegation, RFC9663) вместо присвоения отдельных адресов на базе префиксов, используя SLAAC (Stateless Address Autoconfiguration). В IPv6 IOAM6 добавлена поддержка нового режима инкапсуляции tunsrc, позволяющего добиться более высокой производительности.
- Повышена производительность обработки управляющих пакетов IPsec.
- Повышена производительность сброса (flush) больших наборов правил nftables. В nfnetlink_queue улучшена поддержка протокола SCTP.
- В API ethtool добавлена поддержка привязки нескольких сетевых карт к одному сетевому интерфейсу.


- Оборудование

- В драйвере AMDGPU продолжена работа по реализации поддержки GPU AMD RDNA4 ("GFX12"). Добавлена возможность сброса отдельных очередей задач без сброса состояния всего GPU.
- Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. В новой версии включена поддержка GPU на базе микроархитектур Battlemage и Lunar Lake. Представлена поддержка CCS-модификаторов (Color Control Surface) Xe2 для управления параметрами встроенных и дискретных GPU.
- В драйвере i915 реализована возможность вывода через интерфейс HWMON или sysfs (атрибут "fan1_input") информации о скорости вращения кулера. Объявлен устаревшим параметр "i915.modeset", вместо "i915.modeset=0" следует использовать параметр "i915.nomodeset".
- В DRM-драйвер msm (GPU Qualcomm Adreno) добавлена поддержка GPU A615, A306 и A621.
- В драйвере Nouveau проведена переработка и чистка внутренних структур.
- В драйвер intel_pstate, управляющий параметрами энергопотребления (P-state) на системах с процессорами Intel, добавлена поддержка гибридных систем с асимметричными (отличающимися по характеристикам) CPU, а также поддержка управления питанием процессоров на базе микроархитектур Granite Rapids и Sierra Forest. В драйвер intel_idle добавлена поддержка CPU Xeon Granite Rapids. В драйвере intel_rapl обеспечено распознание процессов AMD семейства 1Ah и процессоров Intel ArrowLake-U.
- Продолжено включение изменений для поддержки ARM SoC Snapdragon X Elite, в котором используется собственный 12-ядерный CPU Qualcomm Oryon и GPU Qualcomm Adreno. Чип нацелен на использование в ноутбуках и ПК, и опережает во многих тестах производительности чипы Apple M3 и Intel Core Ultra 155H.
- Добавлена поддержка ARM-плат, SoC и устройств: Broadcom bcm2712 (Raspberry Pi 5), Renesas R9A09G057 (RZ/V2H), Qualcomm Snapdragon 414 (MSM8929), Lenovo ThinkPad T14s Gen 6, Lenovo A6000/A6010, Surface Laptop 7, Anbernic RG35XXSP, Firefly Core-PX30-JD4, Lunzn Fastrhino R68S, Aspeed Riser, AGX Orin, Rockchip Qnap-TS433, Huashan Pi, Meta Catalina, BeagleY-AI, NanoPi R2S Plus, ExynosAuto v920, SOPHGO SG2002, Qualcomm IPQ5332, LG G4 (h815), Cool Pi CM5 GenBook, Anbernic RG35XXSP, GameForce Ace, IBM P11, Kontron i.MX93 OSM-S, NanoPC-T6
- Добавлена поддержка экранных панелей Anbernic RG28XX, On Tat Industrial Company KD50G21-40NT-A1, Innolux G070ACE-LH3, Melfas lmfbx101117480, Densitron DMT028VGHMCMI-1D, Microchip AC40T08A, AOU B116XTN02.3, AUO B116XAN06.1, AOU B116XAT04.1, BOE TV101WUM-LL2, BOE NV140WUM-N41, BOE NV133WUM-N63, BOE NV116WHM-A4D, BOE NE140WUM-N6G, CMN N116BCA-EA2, CMN N116BCP-EA2, CSW MNB601LS1-4, Starry er88577.
- В звуковой подсистеме добавлена поддержка чипов и кодеков RME Digiface USB, AMD ACP 7.1, Mediatek MT6367, MT8365, Realtek RTL1320, C-Media CM9825. Объявлены устаревшими старые звуковые драйверы для ASoC Intel, вместо которых рекомендовано использовать драйверы AVS. Внесено много улучшений в драйвер SoundWire.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62243

Релиз ядра Linux 6.12 с поддержкой Realtime-режима

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.12. Среди наиболее заметных изменений: возможность включения Realtime-режима, sched_ext для создания планировщиков CPU через eBPF, вывод QR-кода при аварийных состояниях, механизм Device Memory TCP, механизм резервирования ресурсов SCHED_DEADLINE server, улучшение планировщика задач EEVDF, модуль IPE для задания политик обеспечения целостности.
opennet

Выпуск инсталлятора Archinstall 3.0.0, применяемого в дистрибутиве Arch Linux

Опубликован выпуск инсталлятора Archinstall 3.0, который с апреля 2021 года в качестве опции входит в состав установочных iso-образов Arch Linux. Archinstall работает в консольном режиме и может использоваться вместо предлагаемого по умолчанию ручного режима установки дистрибутива. Код Archinstall написан на языке Python и распространяется под лицензией GPLv3.

Archinstall предоставляет диалоговый (guided) и автоматизированный режимы работы. В автоматизированном режиме имеется возможность использования скриптов для развёртывания типовых конфигураций. Инсталлятор также поддерживает профили установки, например, профиль "desktop" для выбора рабочего стола (KDE, GNOME, Awesome) и установки необходимых для его работы пакетов, или профили "webserver" и "database" для выбора и установки начинки web-серверов и СУБД. Четыре года назад была предпринята попытка создания варианта Archinstall с графическим интерфейсом установки, но она не получила развития.

В новой версии Archinstall полностью переделан консольный интерфейс пользователя, который переведён на использование библиотеки Curses. Использование Curses дало возможность улучшить внешний вид, повысить удобство работы и реализовать более сложную компоновку элементов интерфейса, в котором теперь имеется отдельная область экрана с постоянно видимым меню. Кроме того, проведена работа по повышению качества кода и расширению охвата при тестировании.

https://honk.any-key.press/d/G7Q86WXrSN8L3562SZ2MD.png

Источник: https://www.opennet.ru/opennews/art.shtml?num=62242

Выпуск инсталлятора Archinstall 3.0.0, применяемого в дистрибутиве Arch Linux

Опубликован выпуск инсталлятора Archinstall 3.0, который с апреля 2021 года в качестве опции входит в состав установочных iso-образов Arch Linux. Archinstall работает в консольном режиме и может использоваться вместо предлагаемого по умолчанию ручного режима установки дистрибутива. Код Archinstall написан на языке Python и
opennet

Fil-C - компилятор для языков C и C++, гарантирующий безопасную работу с памятью

Филипп Пизло (Filip Pizlo) представил на конференции SPLASH'24 открытый C/C++ компилятор Fil-C, предоставляющий защиту от проблем, вызванных ошибками при работе с памятью. Проект нацелен на обеспечение полной совместимости с существующим кодом на языках C и C++ - для обеспечения безопасной работы с памятью достаточно просто пересобрать существующий код. Компилятор построен с использованием компонентов от проекта LLVM и распространяется под лицензией Apache 2.0. Runtime поставляется под лицензией BSD. В отличие от недавно анонсированного проекта TrapC, находящегося на стадии проектирования, компилятор Fil-C уже доведён до готовности сборки существующего кода.

Проектом также поставляются безопасно работающие с памятью варианты стандартных библиотек C (libc) и C++ (libc++), основанные на библиотеках Musl и LLVM libc++. Среди прочего, в собираемых программах могут использоваться такие возможности, как многопоточность, обработка сигналов, маппинг файлов в память (mmap), longjmp/setjmp и обработка исключений в C++. При помощи Fil-C без внесения изменений могут быть собраны проекты bzip2, zip, pcre и ncurses. С незначительными модификациями поддерживается сборка OpenSSH, OpenSSL, CPython, SQLite, Lua, Curl, Lynx, jpeg6b, zsh, xzutils и simdutf.

Защита от проблем с памятью обеспечивается благодаря применению 128-разрядных указателей MonoCaps с метаданными для проверки типов и отслеживания границ буферов, а также задействованию сборщика мусора FUGC, контролирующего все операции по выделению и освобождению памяти. В случае ошибок при работе с памятью приложение сразу аварийно завершается, что не позволяет эксплуатировать возможные уязвимости.

Заявлено, что комбинация из MonoCaps и FUGC позволяет отлавливать и блокировать все ошибки, связанные с выходом за границы буфера в стеке и куче, обращением к уже освобождённой памяти, состояниями гонки при работе с указателями, а также неправильной обработкой типов (Type Confusion) в контексте пересечения типов указателей и не указателей, проблем при динамической компоновке (linking) и некорректного использования va_lists. Кроме того, Fil-C отдельно проверяет границы и типы в буферах, передаваемых в системные вызовы.

Ценой возможности использования Fil-C для защиты существующих проектов, без необходимости переписывания их кода или задействования особых языковых конструкций, является снижение производительности. На текущем этапе развития, собираемые в Fil-C программы медленнее примерно в 1.5-5 раз, по сравнению со сборкой обычными компиляторами. В планах заявлена работа по проведению оптимизации. Предполагается, что после завершения этой работы в большинстве случаев код будет выполняться медленнее в 1.2 раза, а в наихудших сценариях замедление не превысит полтора раза. Компилятор пока поддерживает только платформу Linux на системах X86_64. Предыдущие версии поддерживали macOS и FreeBSD, но затем было решено не распылять усилия и вначале подготовить качественный порт libc для одной платформы.

Другим ограничением Fil-C является принципиальный отказ от сохранения совместимости на уровне ABI для кода на C/C++, что не позволяет связывать собираемый в Fil-C код с библиотеками и объектными файлами, собранными другими компиляторами. Методы вызова функций и способ динамического связывания в Fil-C отличается от существующих компиляторов и компоновщиков. Подобное решение объясняется тем, что при связывании с незащищённым кодом теряется суть предлагаемой в Fil-C защиты и возникает иллюзия защищённого приложения - при наличии совместимости ABI, у разработчиков возникал бы соблазн собрать в Fil-C лишь отдельные файлы, не утруждая себя портированием всего проекта.

Задействованный в Fil-C механизм MonoCap основывается на применении 16-байтовых указателей, в которых помимо адреса в памяти, указывается ссылка на объект, включающий сведения о возможностях (capability), таких как верхняя и нижняя границы буфера, ассоциированного с указателем, а также массив, определяющий типы данных, хранимые в каждом блоке памяти (1 байт с информацией о типе (unset, int, ptr, free) для каждого 16-байтового блока памяти). При каждом обращении к памяти по указателю осуществляется проверка границ и типа (например, в память с типом "ptr" не могут быть записаны данные с типом "int" и наоборот).

Все операции выделения и освобождения памяти обрабатываются сборщиком мусора FUGC (Fil's Unbelievable Garbage Collector), который при освобождении памяти переводит все связанные с освобождаемым буфером записи о типах в значение "free" и затем перенаправляет все указатели на освободившиеся объекты на отдельный объект, сигнализирующий о том, что память уже освобождена. Любое дальнейшее обращение к блоку данных с типом "free" или по указателю, связанному с освобождённым объектом, приводит к генерации исключения, что позволяет защититься от уязвимостей класса use-after-free. Сборщик мусора работает параллельно и не приостанавливает выполнение других потоков.

Использование комбинации из MonoCaps и FUGC позволяет сохранить возможность привычной работы с указателями и оставить неизменной семантику вызовов malloc и free, предоставив при этом гарантированную защиту. Код программы может содержать различные логические ошибки, такие как неправильное приведение типов, неверные арифметические операции с указателями, состояния гонки и несвоевременный вызов функции free(), но независимо от всего этого, Fil-C запомнит исходные границы и тип данных, и прервёт выполнение, если будет предпринята попытка доступа по указателю к области вне запомненных границ, обращения к освобождённому блоку памяти или чтения данных с типом "int" как указателя или наоборот.

Автор Fil-C, Филипп Пизло, занимает в компании Epic Games пост директора, отвечающего за проекты, связанные с языками программирования. Филипп имеет богатый опыт работы над виртуальными машинами, языками программирования, компиляторами и сборщиками мусора, например, в IBM он развивал язык программирования X10, в Microsoft работал над сборщиками мусора Stopless, Clover и Chicken, в Apple занимался JIT-компилятором и оптимизациями браузерного движка WebKit, в Epic Games возглавляет команду разработчиков, развивающую язык программирования Verse и связанную с ним виртуальную машину. Филипп также является одним из ключевых разработчиков виртуальных машин Jikes RVM, Ovm и Fiji VM.

<iframe src="https://www.youtube.com/embed/_VF3pISRYRc?si=NpJLo4SEPk4F4kNg">

Источник: https://www.opennet.ru/opennews/art.shtml?num=62241

Fil-C - компилятор для языков C и C++, гарантирующий безопасную работу с памятью

Филипп Пизло (Filip Pizlo) представил на конференции SPLASH'24 открытый C/C++ компилятор Fil-C, предоставляющий защиту от проблем, вызванных ошибками при работе с памятью. Проект нацелен на обеспечение полной совместимости с существующим кодом на языках C и C++ - для обеспечения безопасной работы с памятью достаточно просто пересобрать существующий код. Компилятор построен с использованием компонентов от проекта LLVM и
opennet

Дистрибутив OpenWrt переходит на пакетный менеджер APK

Разработчики дистрибутива OpenWrt, ориентированного на применение в различных сетевых устройствах, таких как маршрутизаторы, коммутаторы и точки доступа, объявили о переходе на пакетный менеджер APK, развиваемый проектом Alpine. В ноябрьских снапшотах, созданных на базе находящейся в разработке основной ветки OpenWrt, ранее использовавшийся пакетный менеджер opkg уже заменён на инструментарий apk.

Тестовая ветка OpenWrt 24.10 пока продолжает использовать opkg, но в ближайшее время будет переведена на APK (OpenWrt 24.10 станет первым релизом на базе APK). Стабильная ветка OpenWrt 23.05 до окончания своего сопровождения продолжит использование opkg. После завершения миграции на новый пакетный менеджер, opkg будет переведён в разряд устаревших и больше не будет развиваться как часть проекта OpenWrt. Переход на APK позволит расширить возможности управления пакетами, а также приведёт к изменению методов установки и работы с пакетами.

APK по умолчанию (если не указывать опцию "--allow-untrusted") требует наличия корректных цифровых подписей для всех пакетов, в то время как opkg не проводит проверку для локально устанавливаемых пакетов. Некоторые операции opkg, требовавшие запуска разных команд, в apk могут быть сведены к одной команде (например, отдельно не нужно обновлять кэш с информацией о репозитории, т.е. вместо "opkg update && opkg install dnsmasq-full" можно запустить "apk --update-cache add dnsmasq-full"). Из расширенных возможностей APK также отмечается команда "apk list --installed --orphaned", при помощи которой можно посмотреть все не используемые зависимости, которые без ущерба для системы могут быть удалены.

Сравнение некоторых команд apk и opkg для выполнения типовых действий:

apk update opkg update apk add pkg opkg install pkg apk del pkg opkg remove pkg apk list opkg list apk list P opkg list P apk list --installed [P] opkg list-installed apk list --upgradeable [P] opkg list-upgradable apk list --providers [P] opkg -A whatprovides P apk info P opkg info P apk info --all P нет эквивалента apk info --contents P opkg files P

Источник: https://www.opennet.ru/opennews/art.shtml?num=62240

Дистрибутив OpenWrt переходит на пакетный менеджер APK

Разработчики дистрибутива OpenWrt, ориентированного на применение в различных сетевых устройствах, таких как маршрутизаторы, коммутаторы и точки доступа, объявили о переходе на пакетный менеджер APK, развиваемый проектом Alpine. В ноябрьских снапшотах, созданных на базе находящейся в разработке основной ветки OpenWrt, ранее использовавшийся пакетный менеджер
opennet

Выпуск web-браузера Chrome 131

Компания Google опубликовала релиз web-браузера Chrome 131. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей при поиске RLZ-параметров. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 132 запланирован на 14 января.

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

- Во встроенном PDF-просмотрщике расширена возможность распознавания текста в отсканированных PDF-документах, в которых текст размещён в виде изображения. Текст распознаётся на локальной системе при помощи встроенного движка оптического распознавания символов (OCR), построенного на базе машинного обучения. В отличие от прошлых версий отсканированные документы теперь автоматически преобразуются в текстовое представление, для которого доступны функции выделения, поиска и копирования в буфер обмена.
- Представлена возможность включения расширенных проверок в системе распределения памяти PartitionAlloc, которые позволяют блокировать уязвимости, вызванные обращением к уже освобождённым областям памяти (use-after-free). По умолчанию данные проверки отключены из-за возможного негативного влияния на производительность. Тем не менее, для внедрений, в которых безопасность важнее производительности, теперь предоставляется отдельные enterprise-политики для активации дополнительной защиты.
- Во встроенном хранилище корневых сертификатов (Chrome Root Store) прекращено доверие к удостоверяющему центру Entrust из-за множественных нарушений требований к удостоверяющим центрам, не соблюдение сроков реагирования на проблемные сертификаты, затягивание отзыва сертификатов, ненадлежащее оформление отчётов об инцидентах и не соблюдение правил при выдаче TLS-сертификатов уровня EV (Extended Validation), требующих проведения проверки документов о принадлежности домена и подтверждение владельца ресурса. В связи с отсутствием действий по устранению выявленных недостатков, TLS-сертификаты, выданные Entrust после 11 ноября 2024 года, воспринимаются в Chrome как не заслуживающие доверия. Сертификаты, выпущенные до 11 ноября, продолжают восприниматься как нормальные.
- В версии для Android включена возможность подключения сторонних провайдеров автоматического заполнения форм и сохранения паролей, не завязанная на API Accessibility.
- В версии для Android упрощено подключение к учётной записи в Google и управление синхронизацией данных между разными браузерами. Синхронизация больше не преподносится как отдельная функция в настройках, а объединена с функцией подключения к учётной записи Google, что позволяет использовать и сохранять в Google Account такую информацию, как пароли и закладки.
- Началась постепенная активация среди пользователей нового режима экономии потребления энергии (Energy saver), при котором автоматически замораживаются вкладки, потребляющие много ресурсов CPU, но при этом не выводящие звук и скрытые в течение более 5 минут. Исключение делается только для вкладок, связанных с управлением внешними устройствами или проведением видео и аудио конференций (подобные вкладки определяются на основании доступа к API для работы с USB, Bluetooth, камерой, устройствами ввода и микрофоном, а также организации канала связи с использованием RTCDataChannel или MediaStreamTrack). Для управления включением автозаморозки можно использовать настройку "chrome://flags/#freezing-on-energy-saver".
- Добавлены экспериментальные режимы экономии памяти (Memory saver) - Moderate, Balanced и Maximum, позволяющие выбрать метод высвобождения памяти от неактивных вкладок. В режиме Moderate память вкладки деактивируются только при нехватке памяти в системе, в режиме Maximum вкладки деактивируются через небольшое время после того как становятся неактивными, а в режиме Balanced неактивные вкладки деактивируются с учётом свободной памяти в системе.
- Добавлены дополнительные настройки, связанные с производительностью, например, появилась возможность указания сайтов, постоянно остающихся в активном режиме (без замедления работы в фоне), выбора способа визуальной индикации деактивированных вкладок и показа потребления памяти во всплывающих эскизах вкладок.
- Добавлен инструмент "Performance Detection", выявляющий потенциальные проблемы с производительностью просматриваемых страниц и выводящий уведомление с рекомендациями по решению проблемы в один клик. Например, чтобы ускорить текущую вкладку браузер может предложить деактивировать другие вкладки, потребляющие много ресурсов.
- В TLS 1.3 и QUIC алгоритм инкапсуляции ключей (KEM, Key Encapsulation Mechanism) "X25519Kyber768", устойчивый к подбору на квантовых компьютерах, переведён на использование финальной спецификации ML-KEM (CRYSTALS-Kyber), стандартизированной Национальным институтом стандартов и технологий США (NIST). X25519Kyber768 представляет собой комбинацию из X25519 ECDH и алгоритма ML-KEM, использующего методы криптографии, основанные на решении задач теории решёток, время решения которых не отличается на обычных и квантовых компьютерах.
- В функцию поиска по изображению при помощи сервиса Google Lens, доступную через контекстное меню, добавлена поддержка наложения перевода на другой язык (переведённый текст показывается поверх исходного текста на изображении). https://honk.any-key.press/d/G7PTCYWsTfPw8ss5Nmghv.png
- Добавлен API Direct Sockets, позволяющий устанавливать прямые TCP- и UDP-соединения с внешними системами, а также создавать слушающие сокеты для приёма соединений. При первой первой попытке соединения с новым хостом пользователю выводится запрос для подтверждения операции. Необходимость добавления нового API объясняется предоставлением возможности взаимодействия с сетевыми устройствами, которые используют собственные протоколы, работающие поверх TCP и UDP, и не поддерживают взаимодействие через HTTPS или WebSockets.
- В режиме "Origin trials" реализован API Summarizer для резюмирования текста (краткого изложения сути), используя большую языковую модель.
- В режиме "Origin trials" добавлен API Playout Statistics, определяющий интерфейс AudioContext.playoutStats для получения статистики о качестве и задержках при воспроизведения звука через API WebAudio.
- Для защиты от злоупотреблений добавлен вывод запроса подтверждения полномочий при использовании сайтом API Keyboard Lock и Pointer Lock, предоставляющих дополнительный контроль над клавиатурой и мышью (например, можно скрыть штатный указатель мыши и обеспечить собственную обработку перемещения мыши). Проверить статус предоставления полномочий можно через API Permissions.
- Разрешено указание дополнительных тегов в HTML-элементе "‹select›", помимо штатных тегов "‹option›", "‹optgroup›" и "‹hr›". Изменение внесено в качестве подготовки к реализации в будущих выпусках настраиваемого варианта "‹select›", расширяющего возможности оформления меню.
- В CSS-свойствах "clip-path", "fill", "stroke" и "marker-*" добавлена поддержка указания внешних SVG-ресурсов. Например, теперь можно указывать 'clip-path: url("resources.svg#myPath")'.
- Изменена модель наследования свойств стилей выделения текста, определяемых через псевдоклассы "::selection" и "::target-text", которая приведена к модели наследования псевдоклассов "::highlight", "::spelling-error" и "::grammar-error", и теперь зависит не от структуры документа (цепочки HTML-элементов), а от того, как выделяется текст (цепочки выделения). В примере ниже цвет вложенных элементов с текстом в параграфе "‹p class="blue"›" теперь будет выбран в соответствии со стилем псевдокласса "::selection", а не стилем цвета, указанного для параграфа.

   p {
     color: deeppink;
   }

   .blue::selection {
     color: blue;
   }

   ‹p class="blue"›
    This is
    ‹em›emphasized‹/em›
    text.
   ‹/p›


- Убраны ограничения, не позволявшие выставлять CSS-свойства "display" для HTML-элементов "‹details›" и "‹summary›". В CSS добавлен псевдоэлемент "::details-content" для настройки оформления сворачиваемого и раскрываемого блока.
- Добавлено CSS-свойство "font-variant-emoji" для настройки стиля отображения Emoji. Например, можно выбрать текстовое или графическое представление.

https://honk.any-key.press/d/G7PmkxY4kM1phYz938cqh.jpg
- В CSS-правиле @page, предназначенном для изменения оформления страницы перед выводом на печать или экспортом в формат PDF, появилась возможность определения областей для размещения контента в области полей страницы, например, для добавления своего заголовка, примечания сбоку или футера.

https://honk.any-key.press/d/G7PdY6f2y461Fp5qCcZRk.png
- Объявлено устаревшим CSS-свойство "inset-area", применявшееся для управления показом элементов, привязанных к местоположению других элементов (CSS Anchor Positioning). В соответствии с рекомендацией рабочей группы, занимающейся стандартизацией СSS, на смену "inset-area" пришло полностью аналогичное свойство "position-area".
- Расширены возможности инструментов для web-разработчиков. В панель Performance добавлены новые возможности для анализа производительности. Предложена экспериментальная панель с AI-ассистентом, в которой в форме чата можно получить ответы, возникающие при отладке CSS. https://honk.any-key.press/d/G7P5BwKTbd8134fQN366n.png https://honk.any-key.press/d/G7P242d445b9Z3n5L48ZY.png

<iframe src="https://www.youtube.com/embed/fSlNvBU-t38?si=Qz3ScTpMM9jxjw6m">

Кроме нововведений и исправления ошибок в новой версии устранены 12 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Одной проблеме присвоен высокий уровень опасности (проблема в коде для работы с расширениями в движке Blink). Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 8 премий на сумму 1 тысяча долларов США (одна премия $1000). Размер 7 вознаграждений пока не определён.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62237

Выпуск web-браузера Chrome 131

Компания Google опубликовала релиз web-браузера Chrome 131. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google...
opennet

Выпуск Phosh 0.43.0, GNOME-окружения для смартфонов

Опубликован релиз Phosh 0.43, экранной оболочки для мобильных устройств, основанной на технологиях GNOME и библиотеке GTK. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и используется в postmarketOS, Mobian, Droidian, некоторых прошивках для устройств Pine64 и редакции Fedora для смартфонов. Phosh использует композитный сервер Phoc, работающий поверх Wayland, а также собственную экранную клавиатуру squeekboard. Наработки проекта распространяются под лицензией GPLv3+. https://honk.any-key.press/d/G7NqTZGWY79hvF4qKhVhG.png

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

- Улучшена панель быстрых настроек, в которой сокращены отступы между кнопками и реализована возможность отображения страниц статуса под настройками.
- Добавлена новая быстрая настройка для управления временем методом помидора.
- Добавлена поддержка акцентных цветов, применяемых для выделения активных элементов.
- Улучшена система вывода уведомлений.
- Включена анимация скрытия приложений в системном лотке.
- Улучшена индикация о событиях, связанных с уведомлениями.
- Добавлена настройка для отключения аутентификации для разблокировки экрана.
- Обеспечено сохранение создаваемых скриншотов в отдельный каталог.
- В композитный менеджер phoc добавлена поддержка тем оформления указателей курсора.
- В экранной клавиатуре squeekboard добавлена настройка для заполнения всего свободного места в панели. Реализована возможность назначения кнопкам модификатора Shift. В раскладку для терминала добавлены кнопки Shift. Добавлены новые emoji, определённые в спецификации Unicode 16.0.
- В конфигураторе phosh-mobile-settings предоставлена возможность указания горизонтального и вертикального размера во время использования виртуальной клавиатуры.
- Обновлены версии зависимостей: wlroots 0.17.4, GNOME 47, Calls 47.0, feedbackd 0.5.0, feedbackd-device-themes 0.4.0, callaudiod 0.1.10, wys 0.1.12 и mmsd-tng 2.6.2.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62239

Выпуск Phosh 0.43.0, GNOME-окружения для смартфонов

Опубликован релиз Phosh 0.43, экранной оболочки для мобильных устройств, основанной на технологиях GNOME и библиотеке GTK. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и используется в
opennet

Уязвимость в PostgreSQL, позволяющая выполнить код с правами рабочего процесса

Сформированы корректирующие обновления для всех поддерживаемых веток PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17 и 12.21, в которых исправлены 35 ошибок и устранены 3 уязвимости - одна опасная и две неопасных. Также объявлено о прекращении поддержки ветки PostgreSQL 12, обновления для которой больше формироваться не будут.

Опасная уязвимость (CVE-2024-10979), который присвоен уровень опасности 8.8 из 10, позволяет локальному пользователю СУБД, обладающему правами на создание функций PL/Perl, добиться выполнения кода с правами пользователя, под которым работает СУБД. Уязвимость вызвана тем, что в функциях PL/Perl можно изменить переменные окружения рабочего процесса, включая переменную PATH, определяющую пути к исполняемым файлам, и специфичные для PostgreSQL переменные окружения. Отмечается, что для совершения атаки достаточно доступа к СУБД и не требуется наличие учётной записи в системе.

   CREATE OR REPLACE FUNCTION plperl_set_env_var()
   RETURNS void AS
   $$
    $ENV{'ENV_VAR'} = 'testval';
   $$ LANGUAGE plperl;

   SELECT plperl_set_env_var();


Источник: https://www.opennet.ru/opennews/art.shtml?num=62238

Уязвимость в PostgreSQL, позволяющая выполнить код с правами рабочего процесса

Сформированы корректирующие обновления для всех поддерживаемых веток PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17 и 12.21, в которых исправлены 35 ошибок и устранены 3 уязвимости - одна опасная и две неопасных. Также объявлено о прекращении поддержки ветки PostgreSQL 12, обновления для которой больше формироваться не будут.
opennet

Опубликован стандарт параллельного программирования OpenMP 6.0

После трёх лет разработки опубликован набор спецификаций OpenMP 6.0 (Open Multi-Processing), определяющих API и способы применения методов параллельного программирования для языков Си, Си++ и Фортран на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD). Предполагается, что начальная поддержка отдельных возможностей OpenMP 6.0 будет включена в состав выпусков LLVM/Clang 20 и GCC 15.

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

- Упрощён процесс программирования задач (task), определяющих независимые части программы, которые могут выполняться параллельно с другими частями.

- Добавлена возможность выполнения задач в потоках free-agent, не привязанных к группам потоков (teams), выполняющих параллельные регионы (parallel region, блок кода, выполняемый в нескольких потоках).
- Обеспечена поддержка сохранения графа задач (taskgraph), определяющего зависимости между задачами и порядок выполнения задач, для повышения эффективности последующего повторного воспроизведения.
- Реализован механизм прозрачных задач ("transparent tasks") для упрощения управления зависимостями и автоматического управления выполнением дочерних задач.


- Расширена поддержка вычислительных устройств, которые могут использоваться для выполнения параллельных задач (CPU, GPU, DSP и т.п.).

- Добавлен новый синтаксис массивов, позволяющий использовать директиву "workdistribute" для разделения обработки массивов между разными единицами работы.
- Расширены возможности управления выделением памяти, упрощающие управление переменными, для которых память выделяется динамически.
- Расширена поддержка атрибутов, определяющих распределение данных между устройствами по умолчанию.
- Упрощено написание кода для асинхронной передачами данных дополнительным вычислительным устройствам (GPU).
- Улучшено управление памятью и её привязкой к вычислительным устройствам.
- Добавлена директива "groupprivate" для закрепления памяти за группой потоков, выполняемых на определённом вычислительном устройстве.


- Упрощено программирование некоторых видов трансформации циклов, таких как объединение нескольких циклов, изменение порядка вложенных циклов и реверсия циклов.
- Добавлена новая операция индукции (induction) для организации распараллеливания в циклах простых арифметических вычислений и пользовательских операций, зависящих от предыдущих значений.
- Добавлена полная поддержка распараллеливания программ, написанных с использованием стандартов C23 (включая синтаксис атрибутов), Fortran 2023 и C++23. Добавлены новые атрибуты для C/C++.
- Расширены возможности управления хранилищем и памятью. Добавлены новые атрибуты для контроля над тем, как должна выделяться и использоваться память. Добавлен API для определения и запроса пространств памяти (memory space).
- Удалены возможности, объявленные устаревшими в спецификациях OpenMP 5.0, 5.1 и 5.2.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62236

Опубликован стандарт параллельного программирования OpenMP 6.0

После трёх лет разработки опубликован набор спецификаций OpenMP 6.0 (Open Multi-Processing), определяющих API и способы применения методов параллельного программирования для языков Си, Си++ и Фортран на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD). Предполагается, что начальная поддержка отдельных возможностей OpenMP 6.0 будет включена в состав выпусков
opennet

Каталог PyPI внедрил новую систему проверки подлинности пакетов

Разработчики репозитория Python-пакетов PyPI (Python Package Index) объявили о внедрении поддержки механизма цифровой аттестации для проверки подлинности опубликованных пакетов, которая пришла на смену верификации с использованием PGP-подписей. Ключевым отличием аттестации является то, что публикация пакета заверяется не разработчиком, а третьим лицом (каталогом пакетов) после подтверждения достоверности публикации через внешнего провайдера OpenID Connect (например, после проверки, что публикуемый пакет соотносится со связанным с ним репозиторием на GitHub или GitLab).

Система аттестации устраняет недостатки, свойственные механизму верификации по PGP-подписям, который ранее был объявлен в PyPI устаревшим. Данное решение принято из-за проблем с проверкой принадлежности разработчикам открытых PGP-ключей, используемых для проверки цифровых подписей - из 1069 PGP-ключей, использованных с 2020 года для формирования подписей в PyPI, 29% открытых ключей отсутствовали на крупных публичных серверах ключей, а 35% ключей оказалось невозможно подтвердить в ходе аудита. При этом подтверждённые 36% PGP-ключей охватывали лишь 0.3% от всех подписанных файлов.

В новой системе используемые для заверения пакетов подписи создаются с использованием короткоживущих эфемерных ключей, генерируемых на основе полномочий, подтверждённых провайдерами OpenID Connect. В момент генерации ключей, необходимых для создания цифровой подписи, разработчик идентифицирует себя через провайдера OpenID, подтверждающего его связь с основным проектом. Инфраструктура для цифровой аттестации построена при помощи системы Sigstore и инструментария in-toto Attestation Framework.

Из достоинств аттестации называется отсутствие привязки к постоянным PGP-ключам - утеря или компрометация закрытого ключа разрушает доверие к созданным на его основе подписям, в то время как при аттестации подпись формируется в привязке к токену, подтверждающему полномочия в момент размещения пакета и связь пакета с основным репозиторием с кодом. Например, при публикации пакета, подготовленного через GitHub Action, аттестация определяет верифицируемую и подтверждённую связь между размещаемым в PyPI файлом, репозиторием, workflow-процессом и хэшем коммита на основе которого сформирован пакет.

https://honk.any-key.press/d/G7M2Kz16tjhJ1Bfq1C9Vx.png

Для отслеживания подлинности ключей и выявления возможных компрометаций формирующий пакеты проектов и самого PyPI применяется публичный централизованный лог, для обеспечения целостности и защиты от искажения данных задним числом в котором задействована структура "дерево Меркла" (Merkle Tree, каждая ветка верифицирует все нижележащие ветки и узлы благодаря древовидному хешированию).

Дополнительно можно отметить выявление в каталоге PyPI вредоносного пакета "fabrice", который при помощи тайпсквотинга (назначение похожих имён, отличающихся отдельными символами, например, exampl вместо example, djangoo вместо django, pyhton вместо python и т.п.) маскировался под популярную библиотеку "fabric", насчитывающую 201 миллионов загрузок (7 миллионов загрузок за прошлый месяц). Вредоносный пакет оставался незамеченным с 2021 года и с тех пор был загружен более 37 тысяч раз.

Пакет "fabrice" повторял базовую функциональность исходной библиотеки и дополнительно включал код для выявления и отправки на внешних хост ключей для доступа к AWS (Amazon Web Services), установки бэкдора и выполнения определённых скриптов. Активация вредоносных компонентов производилась в Linux и Windows. В Linux связанные с вредоносной активностью файлы загружались в каталог ~/.local/bin/vscode.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62234

Каталог PyPI внедрил новую систему проверки подлинности пакетов

Разработчики репозитория Python-пакетов PyPI (Python Package Index) объявили о внедрении поддержки механизма цифровой аттестации для проверки подлинности опубликованных пакетов, которая пришла на смену верификации с использованием PGP-подписей. Ключевым отличием аттестации является то, что публикация пакета заверяется не разработчиком, а третьим лицом (каталогом пакетов) после подтверждения достоверности публикации через внешнего провайдера...
opennet

Microsoft опубликовал открытую платформу .NET 9.0

Компания Microsoft представила выпуск открытой платформы .NET 9, созданной благодаря унификации продуктов .NET Framework, .NET Core и Mono. На основе .NET 9 можно создавать многоплатформенные приложения для браузера, облачных систем, рабочего стола, IoT-устройств и мобильных платформ, используя единые библиотеки и общий процесс сборки, не зависящий от типа приложения. Сборки .NET SDK 9, .NET Runtime 9 и ASP.NET Core Runtime 9 сформированы для Linux, macOS и Windows. .NET Desktop Runtime 9 поставляется только для Windows. Связанные с проектом наработки распространяются под лицензией MIT.

В состав .NET входит Runtime с JIT-компилятором RyuJIT, спецификации API, библиотеки WPF, Windows Forms, WinUI и Entity Framework, интерфейс командной строки dotnet, а также инструменты для разработки микросервисов, библиотек, серверных, графических и консольных приложений. Отдельно поставляются стек для разработки web-приложений ASP.NET Core 9.0, ORM-прослойка Entity Framework Core 9.0 (драйверы имеются, в том числе, для SQLite и PostgreSQL), библиотека WPF 9 (Windows Presentation Foundation), фреймворк Windows Forms 9 для разработки GUI, платформа Aspire 9 для создания приложений Cloud Native, фреймворк MAUI 9 для разработки многоплатформенных интерфейсов пользователя, а также выпуски языков C# 13 и F# 9. Поддержка .NET 9.0 и C# 13 включена в свободный редактор кода Visual Studio Code.

Особенности нового выпуска:

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

В JIT-компилятор добавлены новые оптимизации на основе профилирования (PGO), улучшены обработка циклов, inline-развёртывание и проверка границ. В .NET runtime расширено использование векторных инструкций и добавлена поддержка расширений Arm64 SVE и Intel AVX10. На 50% ускорен код для обработки исключений. Для кода с операциями приведения типов, таких как "(IFoo)myFoo" и "myFoo is IFoo", зафиксировано увеличение производительности до 70%. Производительность некоторых методов в языке обработки запросов LINQ (Language-Integrated Query), таких как Take и DefaultIfEmpty, возросла до 10 раз при работе с пустыми массивами и коллекциями.

Значительно повышена производительность и эффективность метода System.Text.Json. В методе JsonProperty.WriteTo реализована возможность прямой записи строк UTF8, исключающая лишнее выделение памяти. Оптимизированы операции изменения размера JsonObject. При проведении тестов TechEmpower, оценивающих эффективность кода для обработки JSON-запросов, по сравнению с .NET 8 наблюдается увеличение производительности на 15% и снижение потребления памяти на 93%.


- В Runtime предложена новая модель атрибутов для активации и урезания функциональности в библиотеках.
- В языке C# 13 расширены возможности использования модификатора "params", в котором помимо массивов разрешено указание коллекций. При инициализации массивов в значении индекса разрешено использование оператора "^" для отчёта индекса с конца массива (например, "buffer = { [^1] = 0, [^2] = 1,....}" запишет 0 в последний элемент, а 1 в предпоследний). В итераторах и async-методах разрешено использование выражений ref и unsafe. Добавлена новая escape-последовательность "\e". Разрешено определение интерфейсов для типов "ref struct" и использование типов "ref struct" в качестве аргументов в обобщённых функциях. Предложен новый тип Lock для установки блокировок в многопоточных приложениях.
   Lock myLock = new();

   void Concat‹T›(params List‹T› items)
   {
       lock (myLock)
           Console.WriteLine(string.Join("\e[1mItem: \e[0m", items));
   }

- В языке F# 9 появилась поддержка типов, которые могут принимать значение null. В объединениях реализованы автоматически генерируемые свойства ".Is*" (например, person.contact.IsEmail), которые можно использовать для проверки принадлежности значения множеству. Добавлена поддержка пустых вычисляемых выражений ("let xs = seq { }"). В директивах, начинающихся с символа "#", разрешено указание нестроковых значений (например, можно писать #nowarn 0070 вместо #nowarn "0070"). В модули List, Array и Seq добавлены функции для случайного выбора или перемешивания элементов. К спискам (list и set) разрешено применение операций с коллекциями.
- Расширены возможности стека .NET Aspire, предоставляющего набор компонентов для создания приложений, запускаемых в облачных окружениях. Добавлены новые возможности для управления ресурсами и жизненным циклом приложений. Расширены средства для сбора телеметрии.
- Предложен новый набор абстракций C# для разработки AI-приложений, использования больших языковых моделей, обращения к векторным хранилищам и взаимодействия с AI-сервисами. Представлен новый тип "Tensor‹T›" и коллекция методов для вычислений и манипуляции с многомерными данными. Дополнения для AI распространяются в форме пакетов System.Numerics.Tensors, Microsoft.Extensions.AI и Microsoft.Extensions.VectorData. Обновлён фреймворк ML.NET, предназначенный для интеграции моделей машинного обучения в приложения. Добавлена библиотека Microsoft.ML.Tokenizers для кодирования и декодирования текста в токены.
- В стеке для разработки web-приложений ASP.NET Core расширена поддержка упреждающей компиляции (ahead-of-time), расширены возможности мониторинга и трассировки, сокращено время запуска и снижено потребление памяти, оптимизирована работа со статическими файлами. Добавлен новый API для аутентификации и авторизации. В Blazor, платформе для создания web-приложений на языке C#, реализованы новые шаблоны для гибридных и web-приложений.
- Расширены возможности фреймворка MAUI для разработки многоплатформенных интерфейсов пользователя. Проведена оптимизация производительности. Усилена интеграция с настольными и мобильными приложениями. Добавлены новые элементы интерфейса TitleBar и HybridWebView.
- В WPF (Windows Presentation Foundation) расширена поддержка тем оформления и добавлена поддержка акцентных цветов.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62233

Microsoft опубликовал открытую платформу .NET 9.0

Компания Microsoft представила выпуск открытой платформы .NET 9, созданной благодаря унификации продуктов .NET Framework, .NET Core и Mono. На основе .NET 9 можно создавать многоплатформенные приложения для браузера, облачных систем, рабочего стола, IoT-устройств и мобильных платформ, используя единые библиотеки и общий процесс сборки, не зависящий от типа приложения. Сборки .NET SDK 9, .NET Runtime 9 и ASP.NET Core Runtime 9
opennet

Проект Debian Junior начал формирование Live-сборок для детей

Разработчики проекта Debian Junior, занимающегося развитием возможностей для комфортной работы детей с дистрибутивом Debian GNU/Linux, объявили о формировании Live-сборок (3 ГБ), содержащих оптимизированное для детей пользовательское окружение и подборку программ, полезных и интересных для детей до 12 лет. Предложенную Live-сборку планируют обновлять еженедельно. Изначально Debian Junior был нацелен на доработку штатного Debian и поддержание набора пакетов для детей.

Пользовательское окружение сформировано на базе оконного менеджера IceWM, что позволяет использовать его даже на устаревших компьютерах с небольшим объёмом ОЗУ. В качестве файлового менеджера поставляется Thunar от проекта Xfce, для навигации в Web предложен Epiphany (GNOME Web), для обмена сообщениями - Dino-IM, для работы с электронной почтой - Evolution, для написания текстов - LibreOffice, для воспроизведения мультимедийного контента - VLC, для просмотра документов - Evince, для просмотра изображений - Eye of GNOME. В состав также включены обучающие приложения, такие как GCompris (уроки для детей дошкольного и младшего школьного возраста), Stellarium (планетарий), kturtle (обучение программированию), pySioGame (образовательные игры).

https://honk.any-key.press/d/G7MCb2zM6SPtB4271jxFS.png https://honk.any-key.press/d/G7MtdD4TTXjcZRk1lw3Pm.png https://honk.any-key.press/d/G7M1g3Zq4XlYLwW3LZp4J.jpg

Источник: https://www.opennet.ru/opennews/art.shtml?num=62232

Проект Debian Junior начал формирование Live-сборок для детей

Разработчики проекта Debian Junior, занимающегося развитием возможностей для комфортной работы детей с дистрибутивом Debian GNU/Linux, объявили о формировании Live-сборок (3 ГБ), содержащих оптимизированное для детей пользовательское окружение и подборку программ, полезных и интересных для детей до 12 лет. Предложенную Live-сборку планируют обновлять еженедельно. Изначально Debian Junior был нацелен на доработку штатного Debian и поддержание
opennet

Бета-выпуск Red Hat Enterprise Linux 10 и релиз RHEL 9.5

Компания Red Hat представила бета-версию дистрибутива Red Hat Enterprise Linux 10 и релиз Red Hat Enterprise Linux 9.5. Готовые установочные образы подготовлены для зарегистрированных пользователей Red Hat Customer Portal (для оценки функциональности также можно использовать iso-образы CentOS Stream 10 и CentOS Stream 9.5, а также бесплатные сборки RHEL для разработчиков). Репозитории с бинарными пакетами RHEL 10 доступны публично. Выпуски сформированы для архитектур x86_64, s390x (IBM System z), ppc64le и Aarch64 (ARM64). Релиз RHEL 10 ожидается в первой половине следующего года.

Ветка RHEL 10 использует в качестве основы пакетную базу CentOS Stream 10, который позиционируется как upstream-проект для RHEL, дающий возможность сторонним участникам контролировать подготовку пакетов для RHEL, предлагать свои изменения и влиять на принимаемые решения. В соответствии с 13-летним циклом поддержки дистрибутива RHEL 10 будет сопровождаться до 2035 года + 3 года расширенной платной поддержки. Обновления для RHEL 9 продолжат выпускаться до конца мая 2032 года, а RHEL 8 - 2029 года.

Исходные тексты rpm-пакетов RHEL 10 опубликованы для свободной загрузки. Пакеты RHEL 9.5 не размещены в публичном репозитории git.centos.org и предоставляются клиентам компании только через закрытый раздел сайта, на котором действует пользовательское соглашение (EULA), запрещающее редистрибуцию данных, что не позволяет использовать эти пакеты для создания производных дистрибутивов. Исходные тексты RHEL 9.5 остаются доступны в репозитории CentOS Stream, но он полностью не синхронизирован с RHEL и в нём не всегда самые свежие версии пакетов совпадают с пакетами из RHEL. Rocky Linux, Oracle и SUSE воспроизводят исходные тексты rpm-пакетов релизов RHEL в рамках проекта OpenELA.

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

- Из поставки удалён X.org Server и связанные с ним компоненты. Оставлен только графический сеанс на базе Wayland, а также сохранена возможность запуска X11-приложений в сеансе Wayland, обеспечиваемая при помощи DDX-сервера XWayland.
- Звуковой сервер PulseAudio заменён на пакет PipeWire. Удалены пакеты TigerVNC, Totem, power-profiles-daemon, gedit, gtkmm, WebKitGTK, Evolution, Festival, Eye of GNOME, Cheese, Tweaks, Qt5 (оставлен только Qt 6).
- Новым пользователям, создаваемым через интерфейс инсталлятора Anaconda, теперь по умолчанию предоставляются права администратора, если при создании пользователя не отключена данная возможность. В инсталляторе также предложен новый интерфейс для выбора часового пояса. Для удалённого доступа к инсталлятору задействован протокол RDP вместо VNC.
- Добавлена поддержка алгоритмов шифрования, стойких к подбору на квантовом компьютере. Данные алгоритмы доступны в OpenSSL, OpenSSH и в системных криптографических политиках (crypto-policies). В OpenSSL добавлена возможность создания файлов с сертификатами и ключами в формате PKCS #12, соответствующих требованиям FIPS. Вместо движка openssl-pkcs11 задействован pkcs11-provider, позволяющий использовать аппаратные ключи в apache httpd, libssh, bind и других приложениях, использующих OpenSSL. Права доступа к хостовым ключам SSH изменены с 0640 на 0600 (доступ только владельцу). В GnuTLS добавлена поддержка сжатия сертификатов методами zlib, brotli и zstd.
- В дополнение к GnuPG в состав включён инструментарий командной строки Sequoia (утилиты sq и sqv) с реализацией стандарта OpenPGP (RFC-4880) на языке Rust.
- В пакетном менеджере DNF по умолчанию отключена загрузка метаданных со списками файлов, входящих в пакеты (filelist). Подобные данные редко используются, но имеют большой размер и замедляют работу. Для работы с PGP в DNF и RPM задействована библиотека rpm-sequoia.
- Обновлены версии пакетов для разработчиков: GCC 14.2, LLVM 18.1.8, Python 3.12, Ruby 3.3, OpenJDK 21, Rust 1.79.0, Go 1.22, Node.js 22, Perl 5.40, PHP 8.3, Git 2.45, Subversion 1.14, SystemTap 5.1, Valgrind 3.23.0.
- Обновлены серверные пакеты: OpenSSH 9.8, nginx 1.26, Apache HTTPD 2.4.62, Varnish Cache 7.4, Squid 6.10, MariaDB 10.11, MySQL 8.4, PostgreSQL 16, PCP 6.3.0, Grafana 10.2.6, libreswan 4.15, Pacemaker 2.1.8, 389-ds-base 3.0.4, Podman 5.0.
- Обновлены системные пакеты: ядро Linux 6.11, glibc 2.39, binutils 2.41, NSS 3.101, gnutls 3.8.7, polkit 125.
- Добавлены новые пакеты tuned-ppd (вместо power-profiles-daemon), libcpuid и dnsconfd (фоновый процесс для кэширования DNS). В связи с переводом кодовой базы СУБД Redis на проприетарную лицензию вместо Redis предложен форк Valkey. Вместо DHCP-сервера ISC DHCP задействован Kea DHCP. Вместо zlib задействован пакет zlib-ng-compat.
- По умолчанию включён режим предсказуемого выбора имён для сетевых интерфейсов (net.ifnames=1). В NetworkManager для IPv4 включён механизм определения дублирования IP-адресов DAD (Duplicate Address Detection) для предотвращения присвоения одного и того же IP на разных системах в локальной сети.
- В дисковых образах (например, в системных образах для AWS и KVM) прекращено использование отдельного раздела /boot.
- Добавлена экспериментальная поддержка файловой системы Сomposefs, реализованной в виде надстройки над ФС OverlayFS и EROFS, и оптимизированной для эффективного совместного хранения содержимого нескольких примонтированных дисковых образов.
- Предоставлена экспериментальная (Technology Preview) поддержка AMD SEV, SEV-SNP и SEV-ES в гипервизоре KVM.
- Работающий в пространстве пользователя инструментарий SELinux (libsepol, libselinux, libsemanage, policycoreutils, checkpolicy, mcstrans) обновлён до версии 3.7, в которой реализован параметр "audit2allow -C" для вывода в формате CIL (Common Intermediate Language). В утилиту sandbox добавлена поддержка протокола Wayland.
- В компоненте Keylime добавлена поддержка идентификации устройств через IDevID (Initial Device Identity) и IAK (Initial Attestation Key), и по умолчанию задействован протокол TLS 1.3.
- В web-консоли предложен новый файловый менеджер (пакет cockpit-files), позволяющий управлять файлами и каталогами.
- В сервере печати CUPS по умолчанию отключена работа в режимах mDNS и broadcast, задействованные в недавно выявленных удалённо эксплуатируемых уязвимостях.
- В glibc включены варианты функций memcpy и memmove, оптимизированные для процессоров AMD Zen 3 и Zen 4.
- Осуществлён переход на поставку Firefox и Thunderbird в пакетах в формате Flatpak.
- В классическом сеансе GNOME добавлен обзорный режим для просмотра открытых окон, который ранее был доступен только в стандартном сеансе GNOME.
- Добавлено большое число новых драйверов, среди которых драйверы для встроенного в процессоры Intel ускорителя QAT (QuickAssist Technology), предлагающего средства для ускорения вычислений, используемых при сжатии и шифровании.
- Прекращена поставка пакетов: sendmail (рекомендовано перейти на postfix), redis, dhcp, dhcp-client, mod_security (вынесен в EPEL), spamassassin (вынесен в EPEL), xsane, runc.
- Объявлены устаревшими пакеты squashfs и wget, а также интерфейсы utmp и utmpx в glibc.





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

- Обновлены пакеты для разработчиков: GCC 11.5, Node.js 22, GCC Toolset 14, LLVM Toolset 18.1.8, Rust Toolset 1.79.0, Go Toolset 1.22, OpenJDK 17, GDB 14.2, Valgrind 3.23.0, SystemTap 5.1, elfutils 0.191, libabigail 2.5.
- Обновлены версии системных пакетов: OpenSSL 3.2.2, NSS 3.101, clevis 20, ipa 4.12.0.
- Обновлены серверные пакеты: Apache HTTPD 2.4.62, BIND 9.18, PCP 6.2.2, Grafana 10.2.6, libreswan 4.15, PostgreSQL 16, samba 4.20.2.
- Добавлена новая системная роль для управления и настройки sudo. В роль snapshot добавлена поддержка управления снапшотами в пуле LVM. Расширены возможности ролей postfix, podman, ssh, network, nbde_client, journald, logging и storage.
- Под защиту SELinux переведены сервисы nbdkit и bootupd. Добавлена поддержка выполнения команд под защитой SELinux через QEMU Guest Agent.
- Добавлена поддержка live-миграции виртуальных машин, в которые проброшены vGPU NVIDIA.
- Для web-консоли предложен пакет cockpit-files с реализацией файлового менеджера.
- В NetworkManager добавлена поддержка подключения к IPsec VPN с использованием адресов IPv6.
- Разрешено одновременное использование сервисов firewalld и nftables.
- Добавлена поддержка файловой системы Composefs.
- При сборке CPython в GCC включён режим оптимизации "-O3", что позволило повысить производительность Python примерно на 4%.
- Для Glibc реализован режим "GLIBC_TUNABLES=glibc.cpu.prefer_map_32bit_exec=1", включающий размещение динамических объектов в адресном пространстве не случайным образом, а с рядом друг с другом, что позволяет в некоторых конфигурациях добиться повышения производительности, ценой снижения ASLR-защиты. В glibc включены варианты функций memcpy и memmove, оптимизированные для процессоров AMD Zen 3 и Zen 4.
- Реализация подсистемы eBPF синхронизирована с ядром Linux 6.8 (в прошлом выпуске использовалась реализация eBPF из ядра Linux 6.6).
- Для файловой системы tmpfs, обычно используемой для раздела /tmp, реализована поддержка дисковых квот.
- В OpenSSL добавлена экспериментальная поддержка протокола QUIC на стороне клиента.
- Добавлена экспериментальная поддержка offload-режима для выноса операций инкапсуляции UDP-пакетов в IPsec на сторону сетевой карты.
- Добавлена экспериментальная поддержка HSM (Hardware Security Module).
- Добавлена экспериментальная возможность использования БД LMDB в Directory Server.
- В Identity Management добавлена экспериментальная команда ipa-migrate для миграции данных на другой сервер IdM.
- Продолжено предоставление экспериментальной (Technology Preview) поддержки:

- VPN WireGuard,
- kTLS (TLS на уровне ядра),
- интерфейса асинхронного ввода/вывода io_uring,
- DAX (Direct Access) для ext4 и XFS,
- AMD SEV и SEV-ES в гипервизоре KVM,
- сервиса systemd-resolved,
- механизма Sigstore для верификации контейнеров по цифровым подписям,
- протоколов PRP (Parallel Redundancy Protocol) и HSR (High-availability Seamless Redundancy),
- аппаратного ускорения IPsec через вынос операций инкапсуляции пакетов на сторону сетевой карты,
- протокола управления сертификатами ACME, применяемого в Let's Encrypt,
- SRv6 (Segment Routing over IPv6,
- пакета с графическим редактором GIMP 2.99.8,
- настройки MPTCP (Multipath TCP) через NetworkManager,
- DNSSEC в IdM,
- virtio-mem,
- Socket API для TuneD,
- Soft-iWARP (Internet Wide-area RDMA Protocol),
- GNOME для ARM64 и IBM Z.


- Объявлены устаревшими пакеты libgcrypt и pam_ssh_agent_auth.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62230

Бета-выпуск Red Hat Enterprise Linux 10 и релиз RHEL 9.5

Компания Red Hat представила бета-версию дистрибутива Red Hat Enterprise Linux 10 и релиз Red Hat Enterprise Linux 9.5. Готовые установочные образы подготовлены для зарегистрированных пользователей Red Hat Customer Portal (для оценки функциональности также можно использовать iso-образы
opennet

Выпуск DXVK 2.5, реализации Direct3D 8/9/10/11 поверх API Vulkan

Доступен выпуск прослойки DXVK 2.5, предоставляющей реализацию DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 и 11, работающую через трансляцию вызовов в API Vulkan. Для использования DXVK требуется наличие драйверов с поддержкой API Vulkan 1.3, таких как Mesa RADV 24.0, NVIDIA 535.183.01, Intel ANV 24.0, AMDVLK 2024.Q1.3, AMDGPU-PRO и NVK 24.1. DXVK может применяться для запуска 3D-приложений и игр в Linux при помощи Wine, выступая в качестве более высокопроизводительной альтернативы встроенных в Wine реализаций Direct3D, работающих поверх OpenGL.

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

- Код управления памятью и ресурсами полностью переписан для более эффективной работы с видеопамятью. Периодически теперь запускается процесс дефрагментации, возвращающий неиспользуемую память системе. Возвращение памяти инициируется при нехватке памяти в системе или при наличии большого объёма неиспользуемой памяти (оставление за процессом небольшого объёма неиспользуемой памяти полезно для ускорение последующих операций выделения памяти).

Благодаря уменьшению фрагментации памяти, наблюдается существенное снижение пикового потребления памяти в играх, таких как God of War, в некоторых ситуациях доходящее до 1 Гб. Наилучший результат работы нового кода управления памятью достигается с драйверами, поддерживающими Vulkan-расширения VK_EXT_memory_budget и VK_KHR_maintenance5. Для управления включением дефрагментации предусмотрена настройка dxvk.enableMemoryDefrag, которая отключена для драйвера Intel ANV.


- Для Direct3D 8/9 реализована поддержка эмулированных курсоров, что позволяет выставлять в играх любые изображения в качестве курсора мыши. Изменение решило проблемы с пропаданием курсора в Dungeon Siege 2, Act of War и некоторых старых играх на базе Direct3D 8.
- По умолчанию включена строгая эмуляция вычислений с плавающий запятой при использовании NVIDIA 565.57.01 и более новых версий драйверов.
- Проведена работа по повышению производительности Direct3D 8/9 на мобильных GPU.
- В Direct3D 11 реализовано урезание интенсивности операций создания, загрузки и возвращения ресурсов в случае превышения определённого порогового объёма выделяемой памяти, что позволяет повысить стабильность и снизить потребление памяти в 32-разрядных играх.
- В DXGI в подменяемых виртуальных фреймбуферах (SwapChain) реализованы эффекты последовательной замены буферов, позволяющие играм прочитать содержимое уже отображённых буферов.
- Для dxvk-native добавлен бэкенд на базе библиотеки SDL3.
- Для повышения эффективности управления памятью задействовано Vulkan-расширение VK_EXT_pageable_device_local_memory, в случае его поддержки драйвером.
- Устранены проблемы, проявляющиеся в играх:

- Ascension to the Throne
- Call of Duty: Modern Warfare 2 Campaign Remastered
- Command & Conquer: Generals
- Diablo 4
- Dishonored 2
- King's Bounty: Warriors of the North
- Rayman 3
- Ryse: Son of Rome
- Sekiro: Shadows Die Twice
- Tales of Arise
- The Sims 4
- Tomb Raider: Legend
- Total War: Rome II
- Vindictus
- Yakuza 0
- Yakuza Kiwami



Источник: https://www.opennet.ru/opennews/art.shtml?num=62225

Выпуск DXVK 2.5, реализации Direct3D 8/9/10/11 поверх API Vulkan

Доступен выпуск прослойки DXVK 2.5, предоставляющей реализацию DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 и 11, работающую через трансляцию вызовов в API Vulkan. Для использования DXVK требуется наличие драйверов с поддержкой
Наверх