Выпуск операционной системы DragonFly BSD 4.6

После восьми месяцев разработки представлен релиз DragonFlyBSD 4.6, операционной системы с гибридным ядром, созданной в 2003 году с целью альтернативного развития ветки FreeBSD 4.x. Из особенностей DragonFly BSD можно выделить распределённую версионную файловую систему HAMMER, поддержку загрузки «виртуальных» ядер системы как пользовательских процессов, возможность кэширования данных и мета-данных ФС на SSD-накопителях, учитывающие контекст вариантные символические ссылки, возможность заморозки процессов с сохранением их состояния на диске, гибридное ядро, использующее легковесные потоки (LWKT).

Из наиболее существенных новшеств DragonFlyBSD 4.6 отмечается реализация средств ускорения вывода графики для пользователей драйверов i915 и Radeon, обеспечение поддержки контроллеров NVMe, предварительная поддержка EFI, увеличение производительности SMP и сетевой подсистемы при большой нагрузке и расширение набора бинарных пакетов.

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

  • Обновлены drm-драйверы radeon и i915, предоставляющих интерфейс для управления видеокартами AMD и Intel на уровне ядра (KMS). Код драйвера i915 синхронизирован с ядром Linux 4.4, а radeon с ядром 3.18. В i915 существенно повышена стабильность работы на новых CPU, таких как Broadwell и Skylake. В radeon добавлены средства для управления подсветкой через sysctl drm.radeon.backlight;
  • В состав включен драйвер для твердотельных накопителей (SSD), соответствующих спецификации NVMe (PCIe SSD). Драйвер поддерживает предоставляемые контроллерами NVMe средства для распараллеливания операций и распределения выполнения обработчиков прерываний и очередей на несколько CPU. В тесте на севере с Xeon 2xE5–2620v4 была продемонстрирована производительность в 1.05 миллионов операций чтения блоков 4K в секунду и пропускная способность в 6.5 GBytes/sec с блоками 32K, что соответствует заявленным возможностям накопителя. Нагрузка на процессор при тестировании составила 22% и 28%. Для включения в /boot/loader.conf необходимо явно указать nvme_load=«YES» для загрузки драйвера. Для управления работой NVMe добавлена утилита nvmectl;
  • Существенно увеличение производительности на многопроцессорных/многоядерных системах под высокой нагрузкой. В процессе разработки драйвер NVMe в подсистеме SMP переработана реализация кэширования буферов и компонентов, связанных с вводом/выводом, что позволило снизить число блокировок и сократить накладные расходы в процессе обработки прерываний. В системе выделения памяти было локализовано использование кэша CPU. Значительные оптимизации внесены и в сетевую подсистему, которые позволили довести производительность на современном оборудовании до 580 тысяч соединений в секунду;
  • Начальная поддержка загрузки на 64-разрядных системах с EFI. Код для загрузки EFI пока не добавлен в инсталлятор, поэтому для его применения требуется выполнение ручных манипуляций;
  • Коллекция DPorts увеличилась с 22800 до более чем 24000 портов благодаря работе по увеличению совместимости с библиотеками. Повышена надёжность сборочной системы;

© OpenNet