The OpenNET Project

 
Поиск (теги):    НОВОСТИ (+) КОНТЕНТ WIKI MAN'ы ФОРУМ twitter

06.05.2016 12:05  Отчёт о развитии FreeBSD за первый квартал 2016 года

Опубликован отчёт о развитии проекта FreeBSD с января по март 2016 года.

Основные достижения:

  • Системы хранения и файловые системы
    • В состав FreeBSD 11-CURRENT добавлен код, реализующий в механизме управления ресурсами RCTL возможность ограничения пропускной способности операций с файловой системой. Поддерживается ограничение полосы пропускания чтения/записи (байт в секунду) и интенсивности операций ввода/вывода (число операций чтения/записи в секунду). Также представлен новый механизм придерживания запуска процессов в условиях превышения лимита;
    • В дерево исходных текстов FreeBSD добавлен планировщик ввода/вывода CAM I/O scheduler, который позволяет разделять различные типы ввода/вывода, давая возможность привязать ограничения к типам и характеристикам ввода/вывода (в том числе учитывать задержки при обработке недавних запросов, относительно средних показателей). Например, можно сделать операции чтения более приоритетными, чем запись, контролировать пропускную способность, интенсивность запросов и число одновременных операций, собирать статистику о вводе/выводе. Планировщик удобно использовать для адаптации системной нагрузки к производительности SSD-накопителей или для решения специфичных задач, таких как отдача данных для потокового вещания видео. По умолчанию планировщик отключен, для активации следует пересобрать ядро с опцией "options CAM_ADAPTIVE_IOSCHED" (CAM_NETFLIX_IOSCHED?);
    • Для FreeBSD развивается порт распределённого хранилища Ceph. Порт пока охватывает только объектное хранилище RADOS (Object Storage). Блочное устройство RBD (Ceph Block Device) и файловая система CephFS пока не портированы. Итоговой целью проекта является предоставление возможности развёртывания кластера Ceph с узлами хранения на базе FreeBSD и ZFS, а также поддержка запуска виртуальных машин bhyve на виртуальных дисках, развёрнутых поверх блочного устройства Ceph RBD;
    • Во FreeBSD HEAD улучшена производительность и повышена стабильность модуля filemon, предназначенного для отслеживания файловых операциях других процессов. Например, filemon может применяться вместе с bmake для контроля зависимостей при сборке;
  • Система
    • Обеспечена экспериментальная поддержка использования компоновщика lld, развиваемого проектом LLVM, для динамического связывания объектных файлов FreeBSD. Началось формирование тестовых сборок базовой системы FreeBSD/amd64 с применением lld вместо GNU BFD ld. Ещё наблюдаются отдельные проблемы, но, в целом, lld уже может использоваться при сборке пользовательского окружения FreeBSD. Для загрузчика и ядра FreeBSD lld пока непригоден из-за ограничений в вычислении выражений в скриптах компоновки и отсутствия поддержки некоторых опций;
    • Для libthr представлена реализация блокировок, разделяемых между процессами (блокировки с атрибутом PTHREAD_PROCESS_SHARED), не нарушающая совместимость ABI.
    • В загрузчике UBLDR реализована возможность многослойных конфигураций FDT (Flattened Device Tree), описывающих не только встроенные аппаратные ресурсы, но и подключаемые к плате компоненты (например, LCD и GPS, подключенные к Raspberry Pi, будут отображены в отдельном слое FDT, который дополнит базовый слой);
    • Проведена проверка ядра FreeBSD статическим анализатором PVS Studio, которая выявила около 1000 подозрительных фрагментов в коде, которые с большой вероятностью являются ошибками или неаккуратным кодом. Многие из этих ошибок уже исправлены или идентифицированы как ложные срабатывания;
    • Обновлён инструментарий для работы с объектными файлами в формате ELF, эквивалентный набору GNU Binutils, но распространяемый под лицензией BSD. Внесены существенные улучшения в работу утилит elfcopy, readelf и elfdump, добавлена поддержка архитектур RISC-V и AArch64. Предлагаемая инструментарием утилита elfcopy теперь поставляется как objcopy. Готовятся к замене утилиты objdump, ld и as;
    • Во FreeBSD HEAD продолжена работа по усовершенствованию системы сборки buildworld. В качестве опции реализован режим WITH_FAST_DEPEND, позволяющий обойтись без запуска "make depend" за счёт генерации файлов ".depend" во время компиляции. При активации режима время сборки сокращается на 15-35%. Налажена работа режимов WITHOUT_TOOLCHAIN и WITHOUT_CROSS_COMPILER (с опцией "--sysroot");
  • Сетевая подсистема
    • Расширены возможности сервера NFS. В демон nfsuserd добавлена новая опция "-manage-gids", позволяющая на стороне сервера жестко привязать список сопоставления групп с идентификаторами пользователей без обработки списков групп через запросы NFS RPC. Указанная опция позволяет обойти лимит NFS RPC в 16 групп при использовании режима AUTH_SYS. Кроме того, отмечается работа над поддержкой pNFS для NFS-серверов, использующих бэкенд GlusterFS;
    • Компания Mellanox готовит значительное обновление стека Infiniband - Mellanox OFED v3.2 (Mellanox OpenFabrics Enterprise Distribution). Изменения коснулись компонентов ядра (ibcore), драйверов (mlx4/mlx5) и библиотек (librdma, libibverbs);
  • Изолированные окружения, эмуляторы, безопасность и ограничения ресурсов
    • Доступен для тестирования патч с реализацией механизма защиты ASLR (Address Space Layout Randomization) для FreeBSD, рандомизирующий отображение в память (memory mapping) любых нефиксированных структур. Выбор случайного смещения базового производится с учётом запрошенного выравнивая по границе суперстраницы и минимизации фрагментации в таблице страниц памяти. Включение ASLR поддерживается для архитектур i386, amd64 (+compat 32-bit) и ARMv6. Патч не основан на реализации ASLR от проекта HardenedBSD, так и не перенесённой в кодовую базу FreeBSD;
    • Продолжается развитие набора FreeBSD Integration Services (BIS), предоставляющего средства для работы в гостевых системах под управлением гипервизора Hyper-V и облачной платформы Azure. Ведётся работа по увеличению производительности, стабильности и функциональности драйверов для синтетических сетевых адаптеров и устройств хранения HyperV. Проведён рефакторинг драйвера VMBus. Готовятся для включения поддержка live-бэкапов, операций TRIM/Unmap и виртуальных машин с интерфейсом UEFI (Hyper-V Generation-2 VM);
  • Поддержка оборудования
    • Загружен для рецензирования переработанный стек MMC/SD, переведённый на использование фреймворка CAM, что позволило задействовать в нём уже хорошо проверенную модель организации блокировок и средства для отладки, а также делает возможным обработку прерываний при подключении карты, необходимую для реализации поддержки интерфейса SDIO. Новый стек также позволяет использовать интерфейс CAM для отправки SD-команд из приложений в пространстве пользователя, что даёт возможность создавать драйверы устройств, работающие на уровне пользователя. За отчётный период был подготовлен новый драйвер imx_sdhci для SD-контроллеров iMX, который дополнил собой драйвер ti_sdhci для SD-контроллеров плат BeagleBone Black;
    • Доступна новая реализация кода для поддержки горячего подключения плат PCI-express. Большая часть кода по обработке событий hotplug вынесена в драйвер PCI-PCI. В утилиту devctl добавлены новые команды rescan и delete для проведения повторного сканирования устройств на шине PCI. Реализация опробована на устройствах со слотом ExpressCard;
    • Расширена поддержка одноплатных компьютеров на базе ARM-процессоров Allwinner. Добавлена поддержка SoC A31/A31S, I2C, HDMI, Audio HDMI, Pinmux/GPIO, A10/A20 DMA и т.п. В процессе реализация OHCI, USB OTG, SoC A83T и H3;
    • Инициирован проект по портированию FreeBSD для AmigaOS-совместимых систем AmigaOne X5000, построенных на базе SoC Freescale QorIQ. Обеспечена поддержка процессоров серии e5500, ведётся работа по поддержке многоядерных процессоров и созданию драйверов eSDHC, SATA и VGA (текущие сборки загружаются с использованием serial console);
    • Значительно улучшена и стабилизирована работа на платах Cavium ThunderX (arm64). Добавлена поддержка свежих вариантов платы, увеличена производительность сетевых драйверов, задействованы все Ethernet-порты (1, 10, 40 Gbps);
    • Представлен проект по задействованию SPE-расширений (Signal Processing Engine), доступных в SoC NXP/Freescale e500v2. Так как SPE ABI не совместим с традиционным ABI, для SPI добавлена новая архитектура (MACHINE_ARCH) powerpcspe. Ядро и базовый инструментарий уже успешно запускаются на плате RouterBoard RB800;
  • Приложения и система портов
    • Обновлён графический стек. В портах libglapi, libGL, libEGL, libglesv2, gbm и dri задействован новый выпуск Mesa 11.1.2 (ведётся тестирование порта с 11.2.0). Драйвер i915 обновлён до кодовой базы, используемой в ядре Linux 3.8.13, и теперь поддерживает GPU Haswell;
    • В порты добавлены выпуски окружений GNOME 3.18 и MATE 1.12. Стартовала работа по портированию GNOME 3.20. Доступен тестовый порт Cinnamon 2.8. При сборке вместо bsd.gnome.mk и bsd.mate.mk задействованы более простые Uses/gnome.mk и Uses/mate.mk;
    • Проведена адаптация новых версий десктоп-оболочки KDE и фреймворка Qt для FreeBSD. В порты помещены релизы CMake 3.4.2 и 3.5.0, Calligra 2.9.11, KDE Telepathy 0.9.0, Qt 5.5.1. Добавлен первый коммит, готовящий порты к переходу на KDE Frameworks 5 и Plasma 5. В экспериментальных репозиториях доступны KDE Frameworks 5.20.0, Plasma 5.6.1 и KDE Applications 16.03.80. Добавлены экспериментальные порты с Qt 5.6 - qt56-base и qt56-multimedia, которые можно использовать для сборки приложений для Raspberry Pi и мобильных устройств. Из основных задач отмечается включение в основное дерево портов KDE Frameworks 5 и Plasma 5;
    • Дерево портов FreeBSD держится на уровне 25 тысяч портов, число незакрытых PR достигло отметки в 1900. За отчётный период закрыто около 2500 PR и внесено приблизительно 7 тысяч изменений. Из наиболее значительных обновлений портов отмечаются ruby 2.3, ruby-gems 2.5.1, CMake 3.5.0, clang 3.8.0-r258968, Qt5 5.5.1, GNOME 3.18, boost 1.60.0, libc++ 3.8.0. Обновлены порты с компонентами CentOS. Для архитектур x86 по умолчанию задействован LLVM libunwind. При определении зависимостей в Makefiles портов теперь можно не указывать ${PORTSDIR};
    • Отладчик GDB обновлён в портах до выпуска 7.11, задействована поддержка отладки потоков с использованием ptrace;
    • Порт с платформой GitLab, предоставляющей средства для организации совместной работы с Git-репозиториями, обновлён с GitLab 7.14 до выпуска 8.5.5, который использует Rails 4.2 и существенно упрощает решение проблем с зависимостями.
    • Началась работа по удалению из портов устаревшей ветки Ruby on Rails 3.2, которая сосуществует с Rails 4.2. Из портов, пока не избавленных от привязки к Rails 3.2, отмечается www/redmine;


  1. Главная ссылка к новости (https://lists.freebsd.org/pipe...)
  2. OpenNews: Релиз FreeBSD 10.3
  3. OpenNews: Отчёт о состоянии развития FreeBSD за первый квартал 2015 года
  4. OpenNews: Отчёт о состоянии развития FreeBSD за третий квартал 2014 года
  5. OpenNews: Отчёт о состоянии развития FreeBSD за третий квартал 2015 года
  6. OpenNews: Отчёт о развитии FreeBSD за четвёртый квартал 2015 года
Лицензия: CC-BY
Тип: Обобщение
Ключевые слова: freebsd, summary
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Sunderland93, 12:34, 06/05/2016 [ответить] [смотреть все]
  • +2 +/
    >>Инициирован проект по портированию FreeBSD для AmigaOS-совместимых систем AmigaOne X5000

    Это хорошо!

     
  • 1.3, Аноним, 12:51, 06/05/2016 [ответить] [смотреть все]
  • +/
    Чё за бред Нету его там ROOT usr src grep CAM_ADAPTIVE_IOSCHED -R ROOT ... весь текст скрыт [показать]
     
     
  • 2.7, прежний Аноним, 13:19, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    вангую, что имелся в виду CAM_NETFLIX_IOSCHED ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.12, АнонИМ, 13:57, 06/05/2016 [^] [ответить] [смотреть все]  
  • +3 +/
    Они его еще не успели переименовать. Там в рассылке была об этом речь
     
  • 2.15, qwerty, 15:10, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    grep _IOSCHED NOTES options CAM_NETFLIX_IOSCHED options CAM_NETFLIX_IOSCHED... весь текст скрыт [показать] [показать ветку]
     
  • 2.16, qwerty, 15:11, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    grep _IOSCHED NOTES options CAM_NETFLIX_IOSCHED options CAM_NETFLIX_IOSCHED... весь текст скрыт [показать] [показать ветку]
     
  • 1.13, eRIC, 14:56, 06/05/2016 [ответить] [смотреть все]  
  • +/
    Гуд!
     
  • 1.14, iZEN, 15:02, 06/05/2016 [ответить] [смотреть все]  
  • –3 +/
    Вот это полезно для хомячков User294 наверное уже почувствовал, что тему с Linu... весь текст скрыт [показать]
     
     
  • 2.18, АнонИМ, 15:26, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +3 +/
    да надо broadwell уже, а они еще только haswell добавляют
     
  • 2.54, Аноним, 11:25, 10/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    То, что бтрфс не взлетела у тебя, ещё не значит что она не взлетела у других Ну... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.55, Led, 16:05, 10/05/2016 [^] [ответить] [смотреть все]  
  • +/
    Врядли изя - это один человек Невозможно представить себе настолько тупого инд... весь текст скрыт [показать]
     
  • 1.19, grec, 17:19, 06/05/2016 [ответить] [смотреть все]  
  • +8 +/
    Хочется отметить тот редкий случай, когда в сводке о проделанной работе не значатся такие важные вещи, как "новый рабочий стол", "новые обои", "новый улучшайзер нового улучшеного рабочего стола" и т.п. xBSD молодцы.
     
     
  • 2.20, Цыган, 17:37, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –8 +/
    те кто устанавливает FreeBSD обычно не устанавливают иксы FreeBSD исключительно... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.21, Аноним, 17:45, 06/05/2016 [^] [ответить] [смотреть все]  
  • +2 +/
    Очередной Я знаю Я слышал , не читавший даже хэндбук или простой наброс на ве... весь текст скрыт [показать]
     
     
  • 4.25, rvs2016, 18:22, 06/05/2016 [^] [ответить] [смотреть все]  
  • –2 +/
    Никто не говорит о том, что столы нельзя установить в нормальной системе Можн... весь текст скрыт [показать]
     
     
  • 5.52, Аноним, 02:46, 09/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    > Но для этого лучше подходят другие системы

    Чем это, интересно?

     
  • 4.26, Цыган, 18:34, 06/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    вообще то у меня есть сертификат специалиста FreeBSD, а у вас сударь ну если в... весь текст скрыт [показать]
     
     
  • 5.28, Аноним, 18:47, 06/05/2016 [^] [ответить] [смотреть все]  
  • +/
    Понятно Очередная попытка вброса А я вот рассылки бзшные и форумы почитываю И... весь текст скрыт [показать]
     
  • 5.41, njunkie, 00:20, 07/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Мне кажется вполне логичным, что если иксы, KMS и всякие DE активно пилятся и по... весь текст скрыт [показать]
     
     
  • 6.43, Аноним, 11:23, 07/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Бедные разрабы ядра должны обходиться собственными знаниями и бумажными справочн... весь текст скрыт [показать]
     
     
  • 7.45, njunkie, 15:03, 07/05/2016 [^] [ответить] [смотреть все]  
  • +/
    links напрмер или lynx
     
  • 3.23, grec, 18:19, 06/05/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Когда нет свистоперделок это моветон? Рукалицо.
     
     
  • 4.27, Цыган, 18:38, 06/05/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    ему про Фому, а он про Ерёму, может перечитаешь задомнаперёд я впервые слышу, ч... весь текст скрыт [показать]
     
     
  • 5.29, Аноним, 19:11, 06/05/2016 [^] [ответить] [смотреть все]  
  • +4 +/
    Ну да, куда там всяким Колинам Персивалям или Джонам Балдвинам до Сиртифицирова... весь текст скрыт [показать]
     
  • 3.40, njunkie, 00:02, 07/05/2016 [^] [ответить] [смотреть все]  
  • +/
    У меня стоят, и KDE на десктопе , и Gnome3 на ноуте лучше батарейка экономится... весь текст скрыт [показать]
     
  • 2.24, rvs2016, 18:20, 06/05/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    А разве рабочие столы улучшают в FreeBSD FreeBSD - это ж в основном для работы ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.33, Аноним, 20:36, 06/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Столы улучшают те, кто их производит Или во Фряхе какой-то свой особый Гном и т... весь текст скрыт [показать]
     
  • 3.46, asavah, 15:56, 07/05/2016 [^] [ответить] [смотреть все]  
  • +/
    а как же патчи KDE под FreeBSD?
     
     
  • 4.49, Andrey Mitrofanov, 08:14, 08/05/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Теперь все модные пацаны патчат GNOME3 для FreeBSD ... весь текст скрыт [показать]
     
  • 4.56, nobody, 16:56, 11/05/2016 [^] [ответить] [смотреть все]  
  • +/
    Вам на канал "Аниме"!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2016 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by BSH TopList