Документация по LinuxLinuxDoc.Ru 🔍
🕛

Dragonfly BSD 3.4

После шести месяцев разработки представлен релиз DragonFlyBSD 3.4, операционной системы с гибридным ядром, созданной в 2003 году с целью альтернативного развития ветки FreeBSD 4.x. Из особенностей DragonFly BSD можно выделить распределённую версионную файловую систему HAMMER, поддержку загрузки "виртуальных" ядер системы как пользовательских процессов, возможность кэширования данных и мета-данных ФС на SSD-накопителях. Среди ключевых улучшений выпуска DragonFly BSD 3.4 отмечается интеграция системы портов DPorts и инструментария pkgng, переход на GCC 4.7, новый USB-стек, оптимизация производительности при работе на высоконагруженных системах.

Для загрузки доступны 32- и 64-разрядные установочные образы размером 221 Мб для CD и USB Flash, а также расширенные образы размером 1 Гб с десктоп-окружением для установки на DVD и USB Flash. Все доступные образы могут работать в Live-режиме, что позволяет оценить работу DragonFly BSD без установки на диск. Репозиторий pkgsrc в DragonFlyBSD 3.4 обновлён до версии 2013Q1 и включает в себя около 10 тысяч предкомпилированных пакетов. Для поддерживаемого проектом NetBSD CVS-репозитория pkgsrc разработчиками DragonFly BSD поддерживается активное GIT-зеркало.

Основные улучшения, добавленные в DragonFlyBSD 3.4:

Интеграция системы сборки пакетов DPorts (DragonFly Ports), в рамках которой поддерживается вариант портов из FreeBSD, адаптированных для сборки в DragonFly BSD. Для управления бинарными пакетами задействована новая утилита из FreeBSD - pkg (утилиты pkg_* не требуются), развиваемая в рамках проекта pkgng, предоставляющая интерфейс в стиле пакетного менеджера APT и обеспечивающая поддержку таких функций, как обновление пакетов, работа с репозиториями бинарных пакетов, учёт зависимостей и полноценные средства для работы с метаданными. DPorts пока позиционируется как экспериментальная система, по умолчанию по прежнему предлагается pkgsrc. DPorts и pkgsrc не могут использоваться одновременно, поэтому пользователи, желающие перейти на DPorts, должны отключить pkgsrc.

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

На приведённом ниже графике представлена статистика нагрузки на сервере сборки и тестирования пакетов до и после перехода на новое ядро Dragonfly BSD:

Результаты тестирования производительности:


Переход на GCC 4.7 в качестве используемого по умолчанию набора компиляторов, применяемого в том числе для сборки базовой системы. Появившаяся в GCC 4.7 поддержка технологии параллельного программирования OpenMP может быть задействована в Dragonfly BSD при использовании бибилиотеки libgomp, интегрированные средства защиты от переполнения стека через libssp. Поддержка ранее используемой ветки GCC 4.4 будет сохранена и предложена в качестве опции. Кроме того, GCC 4.4 остаётся первичным компилятором для сборки портов в системе DPorts.

Новый USB-стек usb4bsd, обеспечивающий поддержку хост-контроллеров xhci (USB 3.0) и расширяющий совместимость с USB-устройствами. Новый стек создан на основе портирования кода поддержки USB из FreeBSD 8. Так как подсистема достаточно новая, она пока не включена по умолчанию и требует для активации пересборки ядра (в /etc/make.conf следует установить "WANT_USB4BSD=yes" и в конфигурации ядра заменить "device usb" на "device usb4bsd"). Usb4bsd доступен для экспериментов начиная с прошлого выпуска, в Dragonfly BSD 3.4 увеличена стабильность, добавлены библиотеки libusbhid и usbhidctl, добавлены драйверы usb, ehci, ohci, uhci, xhci, umass, usfs, uaudio, uep, uhid, ukbd, ums, uether, udav, и axe, расширены возможности стека. Тем не менее, разработка по прежнему позиционируется как экспериментальная.

Включение в состав начальных наработок, связанных реализацией переработанной редакции ФС - HAMMER2, в которой появятся такие функции, как отдельное монтирование снапшотов, доступные на запись снапшоты, квоты на уровне директорий, инкрементальное зеркалирование, поддержка различных алгоритмов сжатия данных, multi-master зеркалирование с распределением данных на несколько хостов. В текущем виде ФС HAMMER2 пока не пригодна для тестирования, даже разработчиками;

Изменение пользовательских утилит: в качестве утилиты для сборки системы задействован bmake; в libfetch, cp, mv и mktemp портированы улучшения из FreeBSD; добавлен /usr/Makefile для автоматической установки портов; реализовано автоматическое резервного копирования перед выполнением installworld;

По умолчанию включена поддержка режима SMP, решены многие проблемы при работе на многоядерных системах;
Улучшен алгоритм работы с разделом подкачки;
Расширена поддержка оборудования: обновлены многие драйверы, добавлена поддержка инструкций AVX для 64-разрядных процессоров;

Добавлены драйверы virtio и virtio-blk, позволяющие увеличить производительность при работе в режиме гостевой ОС;
Обновление сторонних приложений, поставляемых в базовой системе: flex 2.5.37, bmake 20121010, OpenSSH 6.1p1, byacc 20121003, OpenSSL 1.0.1e, dialog 1.2-20121230, libarchive 3.1.2.

Также по теме:
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Мы в соцсетях ✉