Увидела свет операционная система DragonFlyBSD 2.8Увидел свет релиз DragonFlyBSD 2.8, операционной системы с гибридным ядром, созданной семь лет назад с целью альтернативного развития ветки FreeBSD 4.x. Для загрузки доступны 32- и 64-разрядные CD-образы. Вместо DVD-сборки подготовлен расширенный образ с десктоп-окружением для установки на USB Flash. Репозиторий pkgsrc в версии DragonFlyBSD 2.8 включает в себя около 9 тысяч предкомпилированных пакетов, для CVS-репозитория pkgsrc поддерживается активное GIT-зеркало. Основные улучшения, добавленные в DragonFlyBSD 2.8: Поддержка шифрования дисковых разделов, включая корневой раздел и раздел подкачки. Код шифрования разделов изначально оптимизирован для работы в многопоточном режиме, т.е. полностью задействует все ресурсы многоядерных CPU. Для управления используется утилита, совместимая с cryptsetup. Код пакетного фильтра PF синхронизирован с OpenBSD 4.2 (до этого PF в DragonFlyBSD был импортирован из OpenBSD 3.5). Дополнительно проведена оптимизация производительности PF: связанные с операциями route-to, altq и tags данные теперь напрямую сохраняются в заголовках mbuf-блоков; удалены ненужные проверки контрольных сумм; переписан код работы с таблицами отслеживания состояния соединений и привязки к сетевым интерфейсам. Из особенностей варианта PF в DragonFlyBSD можно отметить поддержку алгоритма справедливой обработки очереди пакетов (fair-queue) и возможность восстановления статуса соединения в PF, что позволяет сохранить активными TCP соединения при перезагрузке маршрутизатора; Из FreeBSD портирован новый WiFi-стек (802.11). Пока не все драйверы перенесены, но процесс портирования драйверов существенно упрощен, что дает основание полагать, что в ближайшее время поддержка новых WiFi-устройств в DragonFlyBSD будет расширена. Из поддерживаемых драйверов отмечены: ath, iwi, iwn, ral, wi, wpi. Еще предстоит портировать драйверы: acx, an, bwi, ndis, rtw, rum, ural; Проведена работа по увеличению производительности при работе на многопроцессорных системах. Сокращено число областей в которых используется MPLOCK (эксклюзивная блокировка, позволяющая гарантировать, что код ядра в данный момент выполняется только одним CPU). В большинстве подсистем ядра блокировка MPLOCK заменена на мягкие локальные признаки LWKT, которые пока зависят от MPLOCK, но позволяют значительно упростить тестирование процесса ухода от MPLOCK. Работа в MPSAFE-режиме (sysctl lwkt.vm_mpsafe) уже близка к стабильному состоянию, несмотря на то, что при данном режиме без привязки к MPLOCK работает вся подсистема управления памятью, pf, kevent и обработчики сетевых протоколов, код синхронизации VFS и Linux-эмулятор; Добавлены новые драйверы: Areca RAID; aesni crypto; реализована поддержка AHCI для новых AMD SATA чипов; из OpenBSD портирован драйвер uguru для мониторинга за системными датчиками; код драйвера twa синхронизирован с FreeBSD. Драйверы ahci и sili переработаны для поддержки режима MPSAFE; Из базовой системы удалены DNS-сервер BIND (вместо него интегрированы drill и libldns) и библиотека libevent, которые отныне нужно ставить из пакетов. Обновлены версии сторонних программ в базовой системе: OpenSSH 5.6p1, OpenSSL 1.0.0a, bzip2 1.0.6, awk 20100523. Импортирован код LVM (Logical Volume Manager). Улучшения ядра системы: Реализован dsched - фреймворк для подключения планировщиков ввода/вывода. Добавлена политика справедливого распределения между процессами операций ввода/вывода - dsched_fq (Fair Queuing I/O scheduler); Из NetBSD импортирован код Device Mapper, в котором обеспечена поддержка целей stripe и crypt; Реализация select(2), poll(2) и kqueue/kevent(2) унифицирована и теперь базируется на едином кода kqueue; Из FreeBSD синхронизирован код подсистем amdpm и alpm; Добавлен kern_udev - фреймворк для ассоциирования дополнительной информации с устройствами; Из FreeBSD портирован код TCP-MD5 (RFC 2385); Добавлена поддержка initrd (ram-диск для начальной загрузки); В криптографический фреймворк opencrypto добавлена поддержка AES-XTS и AES-CTR; Добавлены новые программы: mkinitrd, powerd (демон для управления питанием CPU), libdevattr (совместимая с libudev библиотека для получения информации об устройствах) + udevd (демон для отслеживания подключения устройств) crashinfo и savecore (утилиты для анализа дампа краха ядра), proplib, stress2 (утилита для стресс-тестирования системы), ioprio (утилита для установки приоритетов для ввода/вывода)
Распечатано с HostDB.ru.
|