The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Отчёт о развитии FreeBSD за второй квартал 2016 года "
Отправлено opennews, 31-Июл-16 11:46 
Опубликован (https://www.freebsd.org/news/status/report-2016-04-2016-06.html) отчёт о развитии проекта FreeBSD с апреля по июнь 2016 года.

Основные достижения во втором квартале:

-  
Система

-  Стартовал проект по проведению рефакторинга загрузчика для систем с UEFI, проведённого с целью более плотного использования EFI API. Вместо отдельного кода работы с ФС в загрузчике  boot1 теперь задействована общая реализация, единая с loader, которая основана на  модели драйверов EFI и позволяет легко экспортировать поддержку любых ФС FreeBSD в форме отдельных драйверов EFI. Загрузчики  boot1 и loader также переработаны для применения интерфейса EFI_SIMPLE_FILE_SYSTEM. Отдельного упоминания заслуживает добавление модуля geli_efi (https://github.com/emc2/freebsd/tree/geli_efi) с  возможностью работы с шифрованными дисковыми разделами, зашифрованными при помощи GELI;

-  В libthr реализована поддержка надёжных мьютексов, дающих приложению возможность выявления и теоретически восстановления от краха в процессе изменения состояния совместного мьютекса. Новая модель мьютексов основана на использовании вызова pthread_mutex, обеспечивает надёжное определение факта краха потока, занимающей мьютекс, и позволяет корректно продолжить работу оставшимся потокам. Из приложений в которых применяются надёжные мьютексы отмечается Samba. В сочетании с ранее добавленными разделяемыми между процессами блокировками (PTHREAD_PROCESS_SHARED) надёжные мьютексы позволили привести libthr к совместимости со всеми значительными возможностями POSIX. Наработки включены в состав ветки FreeBSD 11.

-  Продолжается работа по обеспечению использования (https://wiki.freebsd.org/LLD)  компоновщика lld, развиваемого проектом LLVM, для динамического связывания объектных файлов FreeBSD. Уже налажен процесс сборки базовой системы  FreeBSD/amd64 с применением lld вместо GNU BFD ld, т.е. lld уже может использоваться при сборке пользовательского окружения FreeBSD. Lld пока не может использоваться для  ядра FreeBSD  из-за ограничений в вычислении выражений в скриптах компоновки и отсутствия поддержки некоторых опций;


-  
Изолированные окружения, эмуляторы, безопасность и ограничения ресурсов


-  Продолжена разработка реализации (https://kib.kiev.ua/kib/aslr) механизма защиты ASLR (Address Space Layout Randomization) для FreeBSD, который производит рандомизацию отображения  в память (memory mapping) любых нефиксированных структур. В последнее время в рамках проекта подготовлена утилита proccontrol, предназначенная для управления, оценки состояния и отслеживания применения ASLR в привязке к отдельным процессам. В частности, утилита может использоваться для анализа проблем, возникающих в приложениях после включения ASLR. Применение proccontrol позволило выявить ряд портов, неработоспособных при включении ASLR (например, Lisp и Emacs), для подобных портов предложено добавить директиву ASLR_UNSAFE=yes, при установке которой ASLR при сборке порта отключается через вызов "proccontrol -m aslr -s disable". В заголовок ELF-файла также предложено включить флаг, сигнализирующий о несовместимости исполняемого файла с ALSR;


-  Развивается проект (https://wiki.freebsd.org/ReproducibleBuilds) по обеспечению повторяемых сборок FreeBSD, при которых сборка одних и тех же исходных текстов приводит к генерации тождественных бинарных файлов, совпадающих побитово, что позволяет любому желающему убедиться в том, что сборка ISO-образа произведена из заявленных исходных текстов. Координация работы по обеспечению повторяемых сборок ведётся на сайте reproducible-builds.org (https://reproducible-builds.org/). За отчётный период в базовую систему (https://wiki.freebsd.org/ReproducibleBuilds) и порты (https://wiki.freebsd.org/PortsReproducibleBuilds) внесена большая порция исправлений. Число портов, для которых поддерживаются повторяемые сборки доведен до 80%. Для анализа различий бинарных файлов предложен инструментарий Diffoscope (https://diffoscope.org/). Из задач на будущее отмечается интеграция сборки портов FreeBSD в инфраструктуру непрерывной интеграции reproducible-builds.org, включение подготовленных патчей в дерево портов и продолжение работы по приведению портов в вид, пригодный для повторяемых сборок;

-  Продолжается развитие набора FreeBSD Integration Services (BIS), предоставляющего средства для работы в гостевых системах под управлением гипервизора Hyper-V и облачной платформы Azure. Компания Microsoft опубликовала (https://www.opennet.ru/opennews/art.shtml?num=44570) в официальном хранилище образов виртуальных машин Azure Marketplace собственную сборку FreeBSD 10.3. Выполнена работа по увеличению производительности, стабильности и функциональности драйверов для синтетических сетевых адаптеров и устройств хранения HyperV.


-  
Системы хранения и файловые системы

-  Продолжается разработка порта (https://github.com/wjwithagen/ceph) распределённого хранилища Ceph (https://www.opennet.ru/opennews/art.shtml?num=44303) для FreeBSD. Порт пока охватывает только объектное хранилище RADOS (Object Storage) и инструментарий.  Блочное устройство RBD (Ceph Block Device) и  файловая система CephFS пока не портированы. Итоговой целью проекта является предоставление возможности развёртывания кластера Ceph с узлами хранения на базе FreeBSD и ZFS, а также поддержка запуска виртуальных машин bhyve на виртуальных дисках, развёрнутых поверх блочного устройства Ceph RBD. За отчётный период порт переведён с Automake на систему сборки CMake, переработан код, связанный с блокировками, обеспечено полное прохождение тестового набора (за исключением тестов, связанных с ещё не реализованными RBD, BlueStore и CephFS);


-  
Сетевая подсистема

-  Обновлён фреймворк виртуализации VIMAGE, базирующийся на технологиях FreeBSD Jail и подсистеме виртуализации сетевого стека VNET (https://svnweb.freebsd.org/base/projects/vnet/). Проведена работа по устранению проблем, крахов и утечек памяти в процессе применения VIMAGE в рабочих конфигурациях с большой нагрузкой. Кроме того, поддержка VNET добавлена и для невиртуализированных компонентов, таких как pf и ipfilter, а также для виртуальных сетевых интерфейсов;

-  
Поддержка оборудования

-  Расширена поддержка одноплатных компьютеров на базе ARM-процессоров Allwinner. Добавлена поддержка OHCI.,Для SoC H3, A83T и A64 реализована поддержка контроллера Gigabit Ethernet.  Представлена отдельная конфигурация сборки ядра ALLWINNER. Добавлена поддержка SoC A83T, H3 и A13.

-  Отмечается прогресс в реализации поддержки 64-разрядной архитектуры ARM64 (https://wiki.freebsd.org/arm64) (AARCH64). Добавлена начальная поддержка платформы ARM Juno и продемонстрирована успешная загрузка на 4-ядерных CPU Cortex-A53. Ведётся портирование для плат  Pine64 и Raspberry Pi 3. Обеспечена поддержка 4 уровней pagetable  в коде pmap, что позволило увеличить виртуальное адресное пространство до 256TB и реализовать возможность работы на системах с 2 Тб физической памяти. Фреймворк управления прерываниями заменён на intrng, что позволяет использовать общие драйверы для контроллеров прерываний для систем arm и arm64;

-  
Приложения и система портов

-  Дерево портов FreeBSD выросло до 26100 портов (в прошлом отчёте отмечалось 25 тысяч), число незакрытых PR держится на отметке в 2000. За отчётный период закрыто около 1760 PR и внесено приблизительно 7 тысяч изменений. Проведена работа по модернизации инфраструктуры портов, большие целевые файлы bsd.port.mk разбиты на отдельные скрипты, в фазу оценки качества сборки в утилите Poudriere добавлена проверка отсутствующих зависимостей, внесены улучшения для реализации повторяемых сборок, продолжена работа над инфраструктурой для автоматизации сборки пакетов и сборки с дополнительными компонентами для повышения защищённости. Из наиболее значительных обновлений портов отмечаются Firefox 47.0.1, Firefox ESR...

URL: https://www.freebsd.org/news/status/report-2016-04-2016-06.html
Новость: http://www.opennet.ru/opennews/art.shtml?num=44876

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру