Отчёт о развитии FreeBSD за третий квартал 2019 года

28 ноября 2019 года

Опубликован отчёт о развитии проекта FreeBSD с июля по сентябрь 2019 года. Из изменений можно отметить:

  • Общие и системные вопросы
  • Core team в общем виде одобрил возможность включения в систему кода, поставляемого под лицензией BSD с дополнительным соглашением об использовании патентов ( BSD+Patent), но решение по включению в систему каждого компонента под данной лицензией должно утверждаться отдельно. В BSD+Patent лицензия BSD дополнена дополнительным соглашением, определяющим предоставление доступа к технологиям, пересекающимися с зарегистрированными патентами и минимизирующим риски от патентных исков (лицензия отзывается в случае патентного иска). По мнению Фонда Apache данное соглашение главным образом отстаивает интересы производителя и приводит к несбалансированному перекладыванию рисков на потребителей продуктов.
  • Состоялось первое заседание рабочей группы, созданной для проведения миграции исходных текстов из централизованной системы управления исходными текстами Subversion в децентрализованную систему Git. Дискуссия по целесообразности миграции пока продолжается, и по многим вопросам ещё предстоит выработать решения (например, как поступить с contrib/, нужно ли перегенерировать хэши в текущем git-репозитории и как наилучшим образом реализовать тестирование коммитов);
  • Из NetBSD портирован инструментарий KCSAN (Kernel Concurrency Sanitizer), позволяющий выявлять возникновение состояний гонки между потоками ядра, выполняемыми на разных CPU;
  • Ведётся работа по использованию встроенного в Clang ассемблера (IAS) вместо ассемблера из GNU binutils;
  • Инфраструктура эмуляции окружения Linux (Linuxulator) адаптирована для работы на архитектуре ARM64. Реализован системный вызов "renameat2 ". Утилита strace доработана для диагностики проблем в исполняемых файлах Linux, запускаемых в Linuxulator. Решена проблема с возникновением сбоев при связывании исполняемых файлов с новыми выпусками glibc. Порты с Linux-компонентами для Linuxulator обновлены до CentOS 7.7;
  • В рамках программы Google Summer of Code студентами успешно выполнено шесть проектов: подготовлена реализация унифицированной (IPv4/IPv6) утилиты ping, разработаны инструментарии для тестирования межсетевых экранов и выявления ошибок в ядре (Kernel sanitizer), предложен модуль mac_ipacl, написан код для сжатия виртуальной памяти и выполнена работа по отделению процесса сборки портов от локальной установки;
  • Продолжает развиваться проект по fuzzing-тестированию ядра FreeBSD с использованием системы syzkaller. За отчётный период при помощи syzkaller выявлено и устранено более десяти ошибок. Для запуска syzkaller в виртуальных машинах на базе bhyve выделен отдельный сервер, а при помощи

syzbot налажена проверка различных подсистем FreeBSD в инфраструктуре Google. Организована передача информации о всех крахах в сервис backtrace.io для упрощения их группировки и анализа;

  • Ведётся работа по обновлению реализации zlib на уровне ядра.

Связанный со сжатием код переведён с zlib 1.0.4, выпущенного более 20 лет назад, на актуальную кодовую базу zlib 1.2.11. Для унификации доступа к zlib в ядро добавлены функции compress, compress2 и uncompress. Обеспечивающий работу протокола PPP код из подсистемы netgraph переведён на использование системной реализации zlib, вместо собственной редакции данной библиотеки. На новый zlib также переведены подсистемы kern_ctf.c, opencryptodeflate, geom_uzip, subr_compressor, if_mxge, bxe updated и ng_deflate;

  • Развивается новый интерфейс ядра sysctlinfo, позволяющий находить элементы в базе параметров sysctl, обрабатываемой в форме MIB (Management Information Base), и передавать информации об объектах в пространство пользователя.
  • Безопасность
  • Разработан модуль ядра

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Отчёт о развитии FreeBSD за третий квартал 2019 года», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.