Дата публикации:Wed, 17 Dec 2025 15:58:29 +0300
Состоялся релиз десктоп-ориентированной операционной системы MidnightBSD 4.0, основанной на FreeBSD с элементами, портированными из DragonFly BSD, OpenBSD и NetBSD. Базовое десктоп-окружение построено на основе Xfce (опционально можно установить связку GNUstep + Window Maker + GWorkspace). В отличие от других десктоп-сборок FreeBSD, ОС MidnightBSD изначально развивалась как форк FreeBSD 6.1-beta, который в 2011 году был синхронизирован с кодовой базой FreeBSD 7 и впоследствии вобрал в себя многие возможности из веток FreeBSD 9-13. Для управления пакетами в MidnightBSD задействована система mport, которая использует БД SQLite для хранения индексов и метаданных, или инструментарий Ravenports. Для загрузки подготовлен установочный образ размером 1 ГБ (i386, amd64).
Выпуск примечателен обновлением версий сторонних библиотек и переносом исправлений и новых возможностей из ветки FreeBSD 13. Основные новшества:
- Пакетный менеджер mport обновлён до версии 2.7.3, в которой появилась возможность проверки отдельных портов командой "mport verify" и восстановления контрольных сумм командой "mport verify -r". В команде mport_install обеспечена работа с зависимостями. В программах init, service и cron задействованы переменный окружения, заданные для пользователя или класса пользователей через login.conf. В ядро добавлена поддержка маппинга памяти в режиме W^X, запрещающем одновременный доступ на запись и исполнение. Вместо GNU grep задействован вариант утилиты grep под лицензией BSD. Добавлен совместимый с Linux системный вызов copy_file_range, а также системные вызовы aio_readv и aio_writev. Добавлена поддержка отладки процессов при помощи procfs. Добавлен драйвер backlight для управления подсветкой. В драйвере cpufreq реализована поддержка технологии Intel Speed Shift. В клиенте и сервере NFS добавлена поддержка NFSv4.2, NFS over TLS и расширенных атрибутов. Осуществлён переход на реализацию файловой системы ZFS от проекта OpenZFS (2.1.15). Реализация подсистемы FUSE обновлена до версии 7.28 с поддержкой FUSE_COPY_FILE_RANGE и FUSE_LSEEK. В TCP-стек интегрирована поддержка алгоритма пропорционального снижения интенсивности отправки пакетов (Proportional Rate Reduction, RFC 6937), позволяющего быстрее восстановить оптимальные параметры потока после временных проблем с передачей данных. Добавлена поддержка вложенных VLAN (802.1ad). Поддержка протокола SCTP вынесена в отдельный модуль sctp.ko, который отключён по умолчанию в ядре GENERIC. Добавлены алгоритмы поиска маршрутов из DPDK (Data Plane Development Kit) librte, позволяющие оптимизировать работу с очень большими таблицами маршрутизации. На 64-разрядных архитектурах базовая система собрана по умолчанию с поддержкой PAE (Position Independent Executable). Добавлен драйвер iwlwifi для беспроводных карт Intel c поддержкой новых чипов и стандарта 802.11ac. Драйвер основан на Linux-драйвере и коде из Linux-подсистемы net80211, работа которых во FreeBSD обеспечивается при помощи прослойки linuxkpi. Для всех исполняемых файлов базовой системы на 64-разрядных платформах включена по умолчанию рандомизация адресного пространства (ASLR, Address Space Layout Randomization). Реализована поддержка коммуникационного протокола Netlink (RFC 3549), применяемого в Linux для организации взаимодействия ядра с процессами в пространстве пользователя. В гипервизор Bhyve добавлена поддержка совместного доступа к файлами при помощи VirtIO-9p (VirtFS), поддержка устройств PCI HDAudio и возможность работы со снапшотами виртуальных машин. Добавлен набор драйверов VirtIO, поддерживающих спецификацию VirtIO V1. Добавлен драйвер pvscsi для паравиртуализированных контроллеров SCSI. Добавлена реализация TLS (kTLS), работающая на уровне ядра. Обновлены версии LLVM 19.1.7, unbound 1.23.0, OpenSSH 9.9p2, lua 5.4.2, wpa+hostapd 2.11. Удалены gcc, libdispatch и binutils.
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=64437
