Релиз операционной системы DragonFly BSD 4.8
27 марта 2017 года
После восьми месяцев разработки подготовлен релиз DragonFlyBSD 4.8, операционной системы с гибридным ядром, созданной в 2003 году с целью альтернативного развития ветки FreeBSD 4.x. Из особенностей DragonFly BSD можно выделить распределённую версионную файловую систему HAMMER, поддержку загрузки "виртуальных" ядер системы как пользовательских процессов, возможность кэширования данных и мета-данных ФС на SSD-накопителях, учитывающие контекст вариантные символические ссылки, возможность заморозки процессов с сохранением их состояния на диске, гибридное ядро, использующее легковесные потоки (LWKT).
Из наиболее существенных новшеств DragonFlyBSD 4.8 отмечается заметное увеличение производительности ядра, поддержка EFI в инсталляторе, новый драйвер NVMe, возможность загрузки с eMMC, обновление графических драйверов для GPU Intel, переход на LibreSSL.
Основные улучшения, добавленные в DragonFlyBSD 4.8:
- В инсталлятор добавлена возможность установки на системах с EFI. Поддержка EFI добавлена в ядро и некоторые системные утилиты. Раздел /boot теперь может быть размещён на отдельном GPT-разделе или как DragonFly disklabel внутри GPT-раздела. По умолчанию GPT-разделы создаются для всех разделов DragonFly, и на них используется DragonFly disklabel, т.е. имена разделов назначаются как раньше;
- В ядре проведена оптимизация, нацеленная на локализацию использования кэша CPU - уменьшение миграции кода между ядрами привело к повышению эффективности кэширования и повышению производительности. При работе с кэшем имён в VFS и выполнении вызовов exec() выигрыш может достигать 30%. В реальных задачах, например, при выполнении массовой пересборки на многоядерных системах, наблюдается увеличение производительности в среднем на 5%. Оптимизации также затронули и сетевой стек, в котором улучшена масштабируемость на многоядерных системах;
- Включен по умолчанию новый высокопроизводительный драйвер для твердотельных накопителей (SSD), соответствующих спецификации NVMe (PCIe SSD). Драйвер поддерживает предоставляемые контроллерами NVMe средства для распараллеливания операций и распределения выполнения обработчиков прерываний и очередей на несколько CPU;
- Добавлен параметр ядра vfs.repurpose_enable, позволяющий существенно сократить нагрузку от VM и IPI (inter-processor interrupt) в конфигурациях с большой интенсивностью файлового ввода/вывода за счёт обхода нормального механизма повторного использования виртуальных страниц памяти при высокой нагрузке;
- Обновлён drm-драйвер i915, предоставляющий интерфейс для управления видеокартами Intel на уровне ядра (KMS). Код драйвера i915 синхронизирован с ядром Linux 4.6 (в прошлом выпуске 4.4). Улучшена поддержка графических подсистем, используемых в процессорах на базе микроархитектур Broadwell и Skylake;
- Добавлена поддержка загрузки с накопителей eMMC;
- Добавлена возможность настройки загрузки модулей ядра, обеспечивающих поддержку файловых систем, не применяемых при загрузке системы, через rc.conf, вместо loader.conf;
- Обеспечена и включена по умолчанию сборка ядра с применением в компиляторе режима оптимизации "-O2";
- Виртуализированные ядра vkernel, запускаемые как пользовательский процесс, переведены на использование механизма COW (Copy On Write), что позволило организовать совместное использования одного и того же дискового образа для запуска нескольких окружений;
- В powerd добавлены средства управления, учитывающие данные с датчиков температуры. Например, теперь можно настроить принудительное понижение частоты при выходе температуры за допустимую границу, чтобы избежать проблем на компьютерах с некачественной или нерабочей системой охлаждения;
- Реализован лимит RLIMIT_RSS, позволяющий ограничить размер потребляемых процессом RSS страниц памяти;
- Расширен максимальный размер файла подкачки, который теперь может составлять до десятков терабайт. Параметр KVM в ядре увеличен с 128G до 511G;
- Добавлена поддержка динамического удаления pmap, позволяющая на лету удалять из pmap промежуточные страницы памяти и приватные данные (PD);
- Пересмотрена организация работы уровней 'nice'. Изменение значений nice теперь более заметно влияет на приоритет выполнения задачи;
- С целью упрощения портирования реализован специфичный для Linux API i2c;
- Удалены старые драйверы ISA, так как они потеряли смысл после ограничения работы DragonFly BSD только на 64-разрядных системах. В дальнейшем чистка старых драйверов будет продолжена;
- Компоненты базовой системы переведены по умолчанию на использование библиотек libssl.so и libcrypto.so из пакета LibreSSL вместо OpenSSL;
- В состав включён новый высокопроизводительный редактор связей Gold (Google ld), примечательный поддержкой оптимизаций на этапе связывания (LTO) и значительно более высокой производительностью компоновки (до 5 раз быстрее стандартного ld);
- Компилятор в базовой системе обновлён до GCC 5.4.1. Набор binutils обновлён до версии 2.25;
- Внесена порция исправлений для файловой системы HAMMER1, но в релиз не вошла ранее тестируемая более быстрая реализация алгоритма расчёта контрольных сумм, которая отложена до следующего выпуска.
Обновлённый вариант ФС HAMMER2 пока не вышел из стадии тестирования. ФС HAMMER2 примечательна такими функциями, как отдельное монтирование снапшотов, доступные на запись снапшоты, квоты на уровне директорий, инкрементальное зеркалирование, поддержка различных алгоритмов сжатия данных, multi-master зеркалирование с распределением данных на несколько хостов;
- Представлен начальный инструментарий для использования Clang в качестве альтернативного компилятора, вместо GCC. Работа над данной возможностью пока не завершена, но Clang отдельно может быть установлен из пакетов.
Источники править
- Главная ссылка к новости (https://www.dragonflydigest.co...) (Архивная копия от 1 октября 2020 на Wayback Machine)
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.