Представлен отчёт (http://www.freebsd.org/news/status/report-2013-07-2013-09.html) о развитии проекта FreeBSD с июля по сентябрь 2013 года.Основные достижения:
-
Система- Продолжена разработка проекта Newcons (http://svn.freebsd.org/base/user/ed/newcons/), в рамках которого развивается новый интерфейс для обеспечения вывода через графические устройства, позволяющий организовать доступ простых драйверов к консоли и терминальному режиму, а также доступ к фреймбуферу для X.Org. При этом от драйвера не требуется встраивание шрифтов, цветовых карт и изображений курсоров мыши, все эти компоненты будут предоставлены Newcons-драйвером vt. Проект также включает интеграцию с модулями KMS (Kernel Mode Setting), что позволит добиться поддержки современных релизов X.Org и обеспечить корректный возврат к режиму виртуального терминала после смены видеорежима средствами X.Org. Среди возможностей отмечается поддержка мыши, KMS (i915kms и radeonkms), USB-клавиатур, экрана-заставки, vidcontrol. Уже доступен первый рабочий вариант проекта, включающий поддержку мыши (sysmouse, пока без копирования и вставки), KMS, Unicode-шрифтов (в том числе кириллических), вывода Unicode символов на экран, работы в графическом и текстовом режимах, прокрутки истории вывода на экран.
- Доведена до конца работа по реализации (https://wiki.freebsd.org/AtomicCloseOnExec) атомарной установки флага "close-on-exec" для предотвращения утечки файловых дескрипторов в дочерние процессы при вызове fork() и exec() в нитях и обработчиках сигналов.
Поддержка атомарной установки флага обеспечена для всех POSIX-функций, создающих новые файловые дескрипторы, а также задействована для многих файловых дескрипторов, используемых в libc и libutil;- Продолжена работа по интеграции в базовую систему отладчика LLDB (https://wiki.freebsd.org/lldb), развиваемого (http://www.opennet.me/opennews/art.shtml?num=26907) проектом LLVM. Для тестирования в базовую систему импортирван снапшот LLDB (SVN rev 255722), который можно собрать, указав WITH_LLDB= в src.conf. Из пока не решённых задач отмечается поддержка отладки многопоточных программ, core-файлов и ядра, возможность удалённой отладки, поддержка архитектуры MIPS;
- Ведётся работа по устранению дефектов, выявленных в результате проведения статического анализа кода в сервисе Coverity (http://scan.coverity.com/), а также при использовании (http://scan.freebsd.your.org/) развиваемого проектом LLVM статического анализатора (http://clang-analyzer.llvm.org/). Налажено автоматизированное тестирование кода FreeBSD HEAD в clang-analyzer, выполняемое несколько раз в неделю. Планируется обеспечить автоматическую публикацию в списке рассылки информации о новых проблемах.
-
Изолированные окружения, эмуляторы, безопасность и ограничения ресурсов
- Представлены результаты улучшения реализации встроенного в ядро генератора псевдослучайных чисел CSPRNG, доступного через /dev/random. Текущий генератор случайных чисел является достаточно надёжным и пригодным для формирования непредсказуемых последовательностей в том числе и для криптографических нужд. Для формирования качественных непредсказумых входных данных в генераторе случайных чисел реализован предложенный Шнайером алгоритм Yarrow, основанный на дополнительном цикличном применении хэшей над неповторяющимися данными из разных частей ядра. Но в базовой реализации CSPRNG некоторые считающиеся качественными источники энтропии использовались без дополнительной рандомизации при помощи Yarrow.
Недавние разоблачения действий АНБ дали повод для дополнительной проверки качества методов сбора энтропии и применения дополнительных параноидальных методов для гарантирования независимости от отдельных источников энтропии, даже для тех которые считаются надёжными. В обновлённой реализации осуществлён переход к применению Yarrow для всех без исключения источников энтропии. В будущем планируется подготовить реализацию нового алгоритма Fortuna, также разработанного при участии Шнайера. Fortuna сможет быть использован в качестве альтернативной опции и, возможно, заменит по умолчанию Yarrow (решение пока не принято). Также планируется реализовать поддержку FIPS 800-90b и провести глубокий аудит качества энтропии;- Улучшение (http://svnweb.freebsd.org/changeset/base/255187) поддержки инструкций AES-NI и задействование SSE2 во фреймворке OpenCrypto позволило существенно поднять скорость расшифровки AES-XTS и AES-CBC. Как следствие, производительность дискового шифрования при помощи GEOM-класса GELI при использовании AES-XTS поверх GNOP возросла в три раза.
- Продолжена работа по расширению применения средств для изоляции выполнения приложений при помощи фреймворка Capsicum (http://www.cl.cam.ac.uk/research/security/capsicum/). Capsicum расширяет POSIX API и предоставляет несколько новых системных примитивов, нацеленных на поддержку модели безопасности через управление возможностями объектов ("object-capability") для Unix-систем. Capsicum нацелен на дополнение традиционного централизованного мандатного контроля доступа средствами для защиты отдельных приложений и активируется на стороне самого приложения. Используя Capsicum приложение можно запустить в режиме повышенной изоляции (sandbox), при котором программа сможет выполнять только ранее специфицированные штатные действия.
Из последних изменений отмечено включение в состав FreeBSD 10 переработанного варианта capability cap_rights_t, позволяющего снять лимит в 64 правила над файловыми дескрипторами. Доведена до конца разработка библиотеки libnv, выступающей связующим звеном между потребителями и сервисами Casper (демон, предоставляющий сервисы для доступа к привилегированным операциям из изолированных процессов). Расширено число приложений для которых задействованы механизмы изоляции Capsicum.- Подготовлены сборки FreeBSD 8.3-RELEASE, 8.4-RELEASE, 9.0-RELEASE, 9.1-RELEASE и 9.2-RELEASE для развёртывания в качестве гостевой ОС в cloud-окружениях Amazon EC2. Во FreeBSD 9.2-RELEASE работа FreeBSD в EC2 возможна без применения дополнительных патчей, но требует сборки ядра с включением опции XENHVM, которая включена по умолчанию начиная с FreeBSD 10.0-ALPHA3 (в EC2 смогут работать штатные сборки FreeBSD 10.0).
- Проведена чистка и расширена функциональность драйвера virtio с поддержкой паравиртуальных устройств ввода/вывода vtnet (Ethernet), virtio_blk (блочное устройство), virtio_scsi (SCSI HBA) и virtio_balloon (для возвращения памяти гипервизору). Добавлена поддержка работы с несколькими очередями (multiqueue);
-
Сетевая подсистема
- Портирован из OpenBSD и интегрирован в HEAD драйвер vmx для виртуальных ethernet-адаптеров VMware. Драйвер может быть использован вместо неподдерживаемого в 10.0-RELEASE и 9-STABLE драйвера vmxnet3 из состава VMware Tools. Из планов отмечается намерение включить драйвер в ветку stable/9.
-
Системы хранения и файловые системы- Проведена работа по увеличению масштабируемости в GEOM и CAM на многопроцессорных системах, направленная на устранение узких мест в подсистеме работы с блочными устройствами, ограничивающими пиковую производительность на уровне 300-500 тысяч операций ввода/вывода в секунду. В GEOM была обеспечена возможность одновременной обработки запросов ввода/вывода из параллельно выполняемых потоков. В CAM переработан механизм блокировок, крупные блокировки разделены на серию мелких локальных блокировок (отдельные блокировки для шины, LUN, очередей), полностью не останавливающих работу CAM. В итоге, удалось поднять пиковую производительность в два раза, доведя её до миллиона операций ввода/вывода в секунду. Изменения планируется в скором времени включить в состав FreeBSD HEAD и ветку stable/10, после выпуска релиза FreeBSD 10.0.
- Во FreeBSD HEAD добавлен новый нативный iSCSI стек (https://wiki.freebsd.org/Native%20iSCSI%20target), содержащий реализации iSCSI Target и iSCSI Initiator, отличающие...
URL: http://lists.freebsd.org/pipermail/freebsd-announce/2013-Oct...
Новость: http://www.opennet.me/opennews/art.shtml?num=38225
>В итоге, удалось поднять пиковую производительность в два раза, доведя её до миллиона операций ввода/вывода в секунду. Изменения планируется в скором времени включить в состав FreeBSD HEADУже - http://lists.freebsd.org/pipermail/svn-src-all/2013-October/...
> Портирован из OpenBSD и интегрирован в HEAD драйвер vmx для виртуальных ethernet-адаптеров VMware. Драйвер может быть использован вместо неподдерживаемого в 10.0-RELEASE и 9-STABLE драйвера vmxnet3 из состава VMware Tools. Из планов отмечается намерение включить драйвер в ветку stable/9.Драйвер vmxnet3 из состава VMware Tools актуальной версии прекрасно поддерживается в stable/9.
Ага, только к deadlock'ам постоянно приводит. Проприетарщина, что с неё взять.
У меня в продакшене работает. Никаких деадлоков. Наверное, что-то делаю не так...
Везёт вам.
...впрочем у нас тоже не было, пока всё не стало колом.
Кто что скажет о GNUstep?
> Кто что скажет о GNUstep?Тебе с позиции пользователя или разработчика?
С позиции пользователя - вторичный кривой клон проприетарщины, которая сама по себе неюзабельна. С позиции разработчика - objc, добавить нечего.
Я скажу. GNUstep — это свободная реализация OpenStep.
По поводу портов ещё надо добавить что идёт активное введение поддержки staging (когда порт ставится не сразу в систему, а сначала во временную директорию), за отсутствие которой FreeBSD много ругали. Это позволит, в том числе, создавать из портов бинарные пакеты не устанавливая их в систему, создавать пакеты из-под непривилегированного пользователя, а также в некоторых случаях сильно упростит порты.
> По поводу портов ещё надо добавить что идёт активное введение поддержки staging
> (когда порт ставится не сразу в систему, а сначала во временную
> директорию), за отсутствие которой FreeBSD много ругали. Это позволит, в том
> числе, создавать из портов бинарные пакеты не устанавливая их в систему,
> создавать пакеты из-под непривилегированного пользователя, а также в некоторых случаях
> сильно упростит порты.Это уже заметил — после сборки порта командой make в каталоге его можно упаковать "make package" без установки в систему, что раньше было невозможно без пропуска цели "make install".
Пока это работает только для пары тысяч портов из 24k.
Собираются ли бсдшники mir использовать, кто-нибудь знает?
Ни в коем разе, по религиозным соображениям. Религия позволяет только иксы и вяленого.
Что-то все линукс дистры я смотрю тоже религиозны до мозга костей, ибо сдался этот mir только убунте.
> Собираются ли бсдшники mir использовать, кто-нибудь знает?А какие преимущества это даст?
inferrna и другие аптгетчики будут гундеть на другую тему
Тут бы знать собирается его вообще кто-нить кроме Убунты использовать, а про FreeBSD и подавно ничего не известно.
> Тут бы знать собирается его вообще кто-нить кроме Убунты использоватьДа и с убунтой прикольно вышло - собирались, но как релиз выпускать - быстренько рассобирались обратно на иксы пока :).
Наверняка собираются, у них же андроидных дров для графики - девать некуда. Он пацанам заменит NDIS врапер.
"Продолжена разработка проекта Newcons" - о, здорово!
а когда зарелизят?
> "Продолжена разработка проекта Newcons" - о, здорово!
> а когда зарелизят?"Уже доступен первый рабочий вариант проекта, включающий поддержку мыши (sysmouse, пока без копирования и вставки)" - не скоро
>> "Продолжена разработка проекта Newcons" - о, здорово!
>> а когда зарелизят?
> "Уже доступен первый рабочий вариант проекта, включающий поддержку мыши (sysmouse, пока
> без копирования и вставки)" - не скороУже все готово.
>>> "Продолжена разработка проекта Newcons" - о, здорово!
>>> а когда зарелизят?
>> "Уже доступен первый рабочий вариант проекта, включающий поддержку мыши (sysmouse, пока
>> без копирования и вставки)" - не скоро
> Уже все готово.чё готово?
ни скопировать, ни вставить, какой толк от мышки?
Это что, я доживу до смерти syscons и pkg_add? Надо будет выпить шампанского на поминках
Иди пей шампанское в 10.0 pkg_add уже нет.
> Иди пей шампанское в 10.0 pkg_add уже нет.Также выпилен pkg_info, который давал полезную информацию о зависимостях как "вверх", так и "вниз".
pkg help info
> pkg help infoАга, в команде pkg info опция "-d" заменяет опцию "-r" в pkg_info, опция "-r" заменяет опцию "-R" в pkg_info. Трудно не ошибиться. :))
>> pkg help info
> Ага, в команде pkg info опция "-d" заменяет опцию "-r" в pkg_info,
> опция "-r" заменяет опцию "-R" в pkg_info. Трудно не ошибиться. :))Вот поэтому стиль имён команд или длинных ключей с одним '-' полезнее в долгосрочном плане:)
Я юзал portmaster ... но он тоже выходит устарел.
Ёкарный бабай - действительно революция почище 4.11->5.0 :)
portmaster поддерживает pkgng уже год как.
Да? Ну дык тадыть - вообще шоколад урановый :)
> Иди пей шампанское в 10.0 pkg_add уже нет.А можно я сначала дождусь нормального релиза десятки? Такие вещи нужно праздновать обстоятельно.
Больше всего радует интеграция devd в иксы.
да, это охренительная новость, но ей почему-то не придал никто значения.
От этого она не стала хуже :)
Долгой жизни свободной BSD!
> Недавние разоблачения действий АНБ дали поводДали повод самому главному FreeBSD секурити офицеру под ником des внедрить разоблачение хостнейма сервера в OpenPAM при коннекте даже несуществующим пользователем по ссш в FreeBSD 9.2+.
Подробности я запостил на официальном форуме FreeBSD http://forums.freebsd.org/showthread.php?t=42674
Это надо писать в рассылку, а не на форум
Там специально чтобы не постили уязвимости сделали только для своих мемберов "freebsd-security Security issues [members-only posting]". Я написал ещё на security-officer@FreeBSD.org, но там главный этот некий des. :)Так что всё уже давно под контролем АНБ.
на опеннетовском форуме тему поднимал+на том форуме были посты, но попрежнему никакой реакции
Запостил таки в рассылку freebsd-security. Один человек отреагировал. :)
> MESA 9.1Издеваются?
>> MESA 9.1
> Издеваются?"При виде новосте о Фрюхе у лунухойдов начинает яростно бомбить пукан ))) тенденция мля ..."
OmManiPadmeHum
>>> MESA 9.1
>> Издеваются?
> "При виде новосте о Фрюхе у лунухойдов начинает яростно бомбить пукан )))
> тенденция мля ..."
> OmManiPadmeHumОсень Сэр.
>>> MESA 9.1
>> Издеваются?
> OmManiPadmeHumНе хочется Вас, Изя, обЛамывать, но в 9.0 не было части регрессов, которые пришлось вешать на 9.1: https://bugs.freedesktop.org/show_bug.cgi?id=61811 -- а на днях приехала и встала 9.2.2.
Вы уж простите, если слишком технические вещи обсуждаю.
Раз вы такой завсегдатай в каждой новосте о FreeBSD, значит она вам не безралична и если считаете, что кто-то что-то делает не так как надо - поспособствуйте как должно быть хорошо. Протолкните 9.2.2 в FreeBSD. Многие незнакомые люди вам скажут человеческое спасибо.
Тыкал enlightenment c Mesa 9.1.6 на FreeBSD, подобного замечено не было.
В тестовом репозитории есть вполне рабочая Mesa 9.2.1.
В данный момент обновляют drm и intelkms.
> Тыкал enlightenment c Mesa 9.1.6 на FreeBSD, подобного замечено не было.На интеле?
re #134:
> и если считаете, что кто-то что-то делает не так как надоЭто было скорее удивление.
> которые пришлось вешать на 9.1:Он вообще бажный был. Что там у них? Radeon? KMS? Счастливой отладки, на 9.1 - багов там есть, смею заверить. Вплоть до GPU lockup в некоторых случаях.
что-то не вижу я там никакого vmx, и em(4) сломали.