Опубликован (https://www.freebsd.org/news/status/report-2016-01-2016-03.html) отчёт о развитии проекта FreeBSD с января по март 2016 года.Основные достижения:
-
Системы хранения и файловые системы
- В состав FreeBSD 11-CURRENT добавлен код, реализующий в механизме управления ресурсами RCTL возможность ограничения пропускной способности операций с файловой системой. Поддерживается ограничение полосы пропускания чтения/записи (байт в секунду) и интенсивности операций ввода/вывода (число операций чтения/записи в секунду). Также представлен новый механизм придерживания запуска процессов в условиях превышения лимита;
- В дерево исходных текстов FreeBSD 11-CURRENT добавлен планировщик ввода/вывода CAM I/O scheduler, который позволяет разделять различные типы ввода/вывода, давая возможность привязать ограничения к типам и характеристикам ввода/вывода (в том числе учитывать задержки при обработке недавних запросов, относительно средних показателей). Например, можно сделать операции чтения более приоритетными, чем запись, контролировать пропускную способность, интенсивность запросов и число одновременных операций, собирать статистику о вводе/выводе.
Планировщик удобно использовать для адаптации системной нагрузки к производительности SSD-накопителей или для решения специфичных задач, таких как отдача данных для потокового вещания видео. По умолчанию планировщик отключен, для активации следует пересобрать ядро с опцией "options CAM_ADAPTIVE_IOSCHED";
- Для FreeBSD развивается (https://github.com/wjwithagen/ceph) порт распределённого хранилища Ceph (https://www.opennet.me/opennews/art.shtml?num=44303). Порт пока охватывает только объектное хранилище RADOS (Object Storage). Блочное устройство RBD (Ceph Block Device) и файловая система CephFS пока не портированы. Итоговой целью проекта является предоставление возможности развёртывания кластера Ceph с узлами хранения на базе FreeBSD и ZFS, а также поддержка запуска виртуальных машин bhyve на виртуальных дисках, развёрнутых поверх блочного устройства Ceph RBD;
- Во FreeBSD HEAD улучшена производительность и повышена стабильность модуля filemon, предназначенного для отслеживания
файловых операциях других процессов. Например, filemon может применяться вместе с bmake для контроля зависимостей при сборке;
-
Система- Обеспечена экспериментальная поддержка использования (https://wiki.freebsd.org/LLD) компоновщика 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 подозрительных фрагментов в коде, которые с большой вероятностью являются ошибками или неаккуратным кодом. Многие из этих ошибок уже исправлены (https://reviews.freebsd.org/D5245) или идентифицированы как ложные срабатывания;
- Обновлён инструментарий (http://elftoolchain.sourceforge.net/) для работы с объектными файлами в формате 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);-
Изолированные окружения, эмуляторы, безопасность и ограничения ресурсов- Доступен для тестирования патч (https://kib.kiev.ua/kib/aslr) с реализацией механизма защиты ASLR (Address Space Layout Randomization) для FreeBSD, рандомизирующий отображение в память (memory mapping) любых нефиксированных структур. Выбор случайного смещения базового производится с учётом запрошенного выравнивая по границе суперстраницы и минимизации фрагментации в таблице страниц памяти. Включение ASLR поддерживается для архитектур i386, amd64 (+compat 32-bit) и ARMv6. Патч не основан на реализации ASLR от проекта HardenedBSD, так и не перенесённой в кодовую базу FreeBSD;
- Продолжается развитие набора FreeBSD Integration Services (BIS), предоставляющего (https://wiki.freebsd.org/HyperV) средства для работы в гостевых системах под управлением гипервизора Hyper-V и облачной платформы Azure. Ведётся работа по увеличению производительности, стабильности и функциональности драйверов для синтетических сетевых адаптеров и устройств хранения HyperV. Проведён рефакторинг драйвера VMBus. Готовятся для включения поддержка live-бэкапов, операций TRIM/Unmap и виртуальных машин с интерфейсом UEFI (Hyper-V Generation-2 VM);
-
Поддержка оборудования- Загружен для рецензирования переработанный стек MMC/SD (https://bakulin.de/freebsd/mmccam.html), переведённый на использование фреймворка CAM, что позволило задействовать в нём уже хорошо проверенную модель организации блокировок и средства для отладки, а также делает возможным обработку прерываний при подключении карты, необходимую для реализации поддержки интерфейса SDIO. Новый стек также позволяет использовать интерфейс CAM для отправки SD-команд из приложений в пространстве пользователя, что даёт возможность создавать драйверы устройств, работающие на уровне пользователя. За отчётный период был подготовлен новый драйвер imx_sdhci для SD-контроллеров iMX, который дополнил собой драйвер ti_sdhci для SD-контроллеров плат BeagleBone Black;
- Доступна новая реализация (https://github.com/bsdjhb/freebsd/tree/pci_hp) кода для поддержки горячего подключения плат 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;
- Инициирован проект по пор...
URL: https://lists.freebsd.org/pipermail/freebsd-announce/2016-Ma...
Новость: http://www.opennet.me/opennews/art.shtml?num=44379
>>Инициирован проект по портированию FreeBSD для AmigaOS-совместимых систем AmigaOne X5000Это хорошо!
>>В дерево исходных текстов FreeBSD 11-CURRENT добавлен планировщик ввода/вывода CAM I/O schedulerЧё за бред... Нету его там:
ROOT /usr/src # grep CAM_ADAPTIVE_IOSCHED * -R
ROOT /usr/src #
> Чё за бред... Нету его там:
> ROOT /usr/src # grep CAM_ADAPTIVE_IOSCHED * -R
> ROOT /usr/src #вангую, что имелся в виду CAM_NETFLIX_IOSCHED
Они его еще не успели переименовать. Там в рассылке была об этом речь
# grep _IOSCHED *
NOTES:options CAM_NETFLIX_IOSCHED
options:CAM_NETFLIX_IOSCHED opt_cam.h# svn info | grep Last
Last Changed Author: jhb
Last Changed Rev: 299142
Last Changed Date: 2016-05-06 00:26:23 +0200 (Fri, 06 May 2016)
# grep _IOSCHED *
NOTES:options CAM_NETFLIX_IOSCHED
options:CAM_NETFLIX_IOSCHED opt_cam.h# svn info | grep Last
Last Changed Author: jhb
Last Changed Rev: 299142
Last Changed Date: 2016-05-06 00:26:23 +0200 (Fri, 06 May 2016)
Гуд!
Вот это полезно для хомячков:
> Драйвер i915 обновлён до кодовой базы, используемой в ядре Linux 3.8.13, и теперь поддерживает GPU HaswellUser294 наверное уже почувствовал, что тему с Linux и невзлетевшей Btrfs пора закрывать. ;)
да надо broadwell уже, а они еще только haswell добавляют
То, что бтрфс не взлетела у тебя, ещё не значит что она не взлетела у других. Ну, а про всякие пейсбуки изя конечно же не слышал.
> То, что бтрфс не взлетела у тебя, ещё не значит что она
> не взлетела у других. Ну, а про всякие пейсбуки изя конечно
> же не слышал.Врядли изя - это один человек. Невозможно представить себе настолько тупого "индивида", тут только коллективный подход нужен.
Хочется отметить тот редкий случай, когда в сводке о проделанной работе не значатся такие важные вещи, как "новый рабочий стол", "новые обои", "новый улучшайзер нового улучшеного рабочего стола" и т.п. xBSD молодцы.
те кто устанавливает FreeBSD обычно не устанавливают иксы. FreeBSD исключительно для консольщиков. иксы на FreeBSD скорее моветон
> иксы на FreeBSD скорее моветонОчередной "Я знаю! Я слышал!", не читавший даже хэндбук или простой наброс на вентилятор?
>> иксы на FreeBSD скорее моветон
> Очередной "Я знаю! Я слышал!", не читавший даже хэндбук или простой наброс
> на вентилятор?Никто не говорит о том, что "столы" нельзя установить в нормальной системе. Можно и в FreeBSD запустить эти пресловутые "столы" с "обоями". Но для этого лучше подходят другие системы. А FreeBSD в основном для работы, а не для игрушек. Хотя, повторюсь, игрушки типа иксов и т.п. в ней тоже запустить можно.
> Но для этого лучше подходят другие системыЧем это, интересно?
вообще то у меня есть сертификат специалиста FreeBSD, а у вас сударь?? ну если вы поднимаете иксы на FreeBSD и этим гордитесь...
> вообще то у меня есть сертификат специалиста FreeBSD,Понятно. Очередная попытка вброса.
> а у вас сударь??
А я вот рассылки бзшные и форумы почитываю. И что-то не припоминаю высказываний типа "фе, иксы на десктопе/лэптопе! Как не илитно!".
> ну если вы поднимаете иксы на FreeBSD и этим гордитесь...
К сожалению, я не такой мазо^W Ъ-кансольщик, чтобы читать тырнеты в link-сах.
И вообще, тоньше нужно быть, сударь "сиртифицированный", тоньше.
А то подвох стразу видно https://www.opennet.me/~%E3%D9%C7%C1...
Мне кажется вполне логичным, что если иксы, KMS и всякие DE активно пилятся и портируются, разработчики системы рассчитывают на то, что их кто-то будет юзать. Например мне не нужна рабочая станция разработчика ядра. Скорее всего для разработчиков ядра-то X-ы и не нужны совсем (хватает консоли и vim), мне больше нужна виртуализация, вагранты, ansible, kitchen, базы данных (PG и MySQL), ZFS и такое, смешанное домашнее хранилище всякого разного мультимедийного стафа, который смотрится и слушается иногда и на собственно вот этом многоцелевом тазике, потому как он хитро подконнекчен к студийным мониторам. Кроме того, признаюсь честно, я не прочь время от времени поиграть в какой-нибудь Starcraft II / Bioshock / Q3 и прочие штуки в Wine. Так что ваши стереотипы оставьте пожалуйста тем, кто вам их привил в детстве
Бедные разрабы ядра должны обходиться собственными знаниями и бумажными справочниками, вместо использования браузера.
links напрмер или lynx
Когда нет свистоперделок это моветон? Рукалицо.
ему про Фому, а он про Ерёму, может перечитаешь задомнаперёд? я впервые слышу, чтобы гуру FreeBSD использовали иксы. Поднять иксы на фряхе, это как 2 пальца обоссать, но это Моветон сударь!!!
> ему про Фому, а он про Ерёму, может перечитаешь задомнаперёд? я впервые
> слышу, чтобы гуру FreeBSD использовали иксы. Поднять иксы на фряхе, это
> как 2 пальца обоссать, но это Моветон сударь!!!Ну да, куда там всяким Колинам Персивалям или Джонам Балдвинам до "Сиртифицированных Ыкспердов Опеннета"!
У меня стоят, и KDE (на десктопе), и Gnome3 (на ноуте лучше батарейка экономится), и XFCE, и Сinnamon (На поиграться). Ваша выборка не репрезентативна в общем.
> Хочется отметить тот редкий случай, когда в сводке о проделанной работе не
> значатся такие важные вещи, как "новый рабочий стол", "новые обои", "новый
> улучшайзер нового улучшеного рабочего стола" и т.п. xBSD молодцы.А разве рабочие столы улучшают в FreeBSD? FreeBSD - это ж в основном для работы. Хотя "столы" в ней тоже работают, если надо. :-)
Столы улучшают те, кто их производит. Или во Фряхе какой-то свой особый Гном и так далее?
а как же патчи KDE под FreeBSD?
> а как же патчи KDE под FreeBSD?Теперь все модные пацаны патчат GNOME3 для FreeBSD.
Вам на канал "Аниме"!