Релиз операционной системы DragonFly BSD 6.2
После семи месяцев разработки опубликован релиз DragonFlyBSD 6.2, операционной системы с гибридным ядром, созданной в 2003 году с целью альтернативного развития ветки FreeBSD 4.x. Из особенностей DragonFly BSD можно выделить распределённую версионную файловую систему HAMMER, поддержку загрузки «виртуальных» ядер системы как пользовательских процессов, возможность кэширования данных и мета-данных ФС на SSD-накопителях, учитывающие контекст вариантные символические ссылки, возможность заморозки процессов с сохранением их состояния на диске, гибридное ядро, использующее легковесные потоки (LWKT).
Основные улучшения, добавленные в DragonFlyBSD 6.2:
Из NetBSD перенесён гипервизор NVMM, поддерживающий аппаратные механизмы виртуализации SVM для CPU AMD и VMX для CPU Intel. В NVMM на уровне ядра выполняется только минимально необходимый набор обвязок вокруг аппаратных механизмов виртуализации, а весь код эмуляции оборудования работает в пространстве пользователя. Для выполнения таких задач, как создание виртуальных машин, выделение памяти и распределение VCPU, применяется инструментарий на базе библиотеки libnvmm, а для запуска гостевых систем пакет qemu-nvmm.
Продолжена работа над файловой системой HAMMER2, которая примечательна такими функциями, как отдельное монтирование снапшотов, доступные на запись снапшоты, квоты на уровне директорий, инкрементальное зеркалирование, поддержка различных алгоритмов сжатия данных, multi-master зеркалирование с распределением данных на несколько хостов. В новом выпуске реализована поддержка команды growfs, позволяющей изменять размер существующего раздела HAMMER2. В состав включена экспериментальная поддержка компонента xdisk, позволяющего монтировать разделы HAMMER2 с удалённых систем.
Компоненты интерфейса DRM (Direct Rendering Manager), менеджер управления видеопамятью TTM и драйвер amdgpu синхронизированы с ядром Linux 4.19, что позволило обеспечить поддержку чипов AMD вплоть до APU 3400G. Обновлён драйвер drm/i915 для GPU Intel, в котором появилась поддержка GPU Whiskey Lake и решена проблема со сбоями при запуске. Драйвер Radeon переведён на использование менеджера видеопамяти TTM.
В вызове poll реализована поддержка события POLLHUP, возвращаемого при закрытии второго конца неименованного канала или FIFO.
В ядре значительно улучшены алгоритмы работы со страницами памяти, повышена эффективность при выборе страниц для перемещения в раздел подкачки и значительно улучшено поведение ресурсоёмких приложений, таких как браузеры, на системах с небольшим объёмом памяти.
Изменено вычисление значения maxvnodes для сокращения потребления памяти ядром, так как кэширование слишком большого числа vnode может снизить эффективность работы, например, если блоки данных дополнительно кэшируются на уровне блочного устройства.
В утилиту fstyp добавлена поддержка файловой системы BeFS. В makefs из FreeBSD перенесена поддержка ФС FAT. Улучшена работа утилит fsck и fdisk. Исправлены ошибки в коде ext2fs и msdosfs.
- Добавлен ioctl SIOCGHWADDR для получения аппратного адреса сетевого интерфейса.
В ipfw3nat добавлена поддержка NAT для пакетов ICMP, реализованная через повторное использование icmp idport.
В драйвер ichsmb добавлена поддержка контроллеров Intel ICH SMBus для чипов Cannonlake, Cometlake, Tigerlake и Geminilake.
Генерация файлов initrd переведена с использования vn на makefs.
В стандартную библиотеку libc добавлены функции getentropy (), clearenv () и mkdirat (). Улучшена совместимость реализации shm_open () и /var/run/shm с другими системами. Добавлены специфичные для разных платформ типы __double_t и __float_t. В libdmsg возвращены функции, связанные с шифрованием. Повышена производительность pthreads.
В утилите dsynth, предназначенной для локальной сборки и сопровождения бинарных репозиториев DPort, добавлена опция »-M» и переменная PKG_COMPRESSION_FORMAT. Обеспечена поддержка пакетного менеджера pkg 1.17 и второй версии метаданных pkg.
- В состав импортированы PAM-библиотека OpenPAM Tabebuia, утилита проверки паролей passwdqc 2.0.2, пакеты mandoc 1.14.6, OpenSSH 8.8p1, dhcpcd 9.4.1 и file 5.40.
- Устранена локально эксплуатируемая уязвимость в ядре, позволяющая пользователю повысить свои привилегии в системе (CVE не сообщается).
Удалён драйвер ndis, позволявший использовать бинарные NDIS-драйверы из Windows.
Прекращена поддержка формата исполняемых файлов a.out.
Источник: http://www.opennet.ru/opennews/art.shtml? num=56485
© OpenNet