Началось (http://blog.netbsd.org/tnf/entry/netbsd_8_0_release_candidate) тестирование первого кандидата в релизы NetBSD 8.0, приуроченного к 25-летию с момента первого официального выпуска проекта. Установочные сборки подготовлены (https://cdn.netbsd.org/pub/NetBSD/NetBSD-8.0_RC1/) для основных поддерживаемых архитектур. Из новшеств по сравнению с NetBSD 7.0 можно отметить:- Переработанный USB-стек с поддержкой USB3;
- Встроенная в ядро система микширования звука;
- Обеспечение (https://www.opennet.me/opennews/art.shtml?num=46073) повторяемых сборок, позволяющих убедиться, что распространяемые бинарные файлы собраны из предоставляемых исходных текстов и не содержат скрытых изменений;
- Задействование по умолчанию механизма защиты памяти W^X (Write XOR Execute или PaX MPROTECT), суть которого в том, что страницы памяти процесса не могут быть одновременно доступны на запись и исполнение. Таким образом, код может быть исполнен только после запрещения записи, а запись в страницу памяти возможна только после запрета исполнения. Механизм W^X помогает защитить приложения в пространстве пользователя от типовых атак, осуществляемых через переполнение буфера, в том числе от переполнений стека (записанный за пределы буфера код не может быть исполнен). Защита активирована для ELF-файлов для архитектур i386, amd64, evbarm, landisk и pmax;
- На архитектурах i386, amd64, evbarm, landisk, pmax и sparc64 включена по умолчанию рандомизация адресного пространства (ASLR) при сборке;
- На архитектурах i386, amd64, arm, m68k, mips, sh3 и sparc64 по умолчанию исполняемые файлы собраны в режиме MKPIE (position independent executables);
- Добавлен драйвер с реализацией сокетов для шин CAN;
- Добавлена утилита ipsecif для настройки VPN;
- Часть сетевого стека избавлена от глобальной блокировки и помечена как MP-safe. В ядро добавлена опция NET_MPSAFE;- Повышена стабильность и производительность подсистемы журналирования мета-данных (WAPBL);
- Добавлена защита от атак Meltdown и Spectre;
- Добавлена поддержка набора инструкций SMAP (Supervisor Mode Access Prevention), который позволяет блокировать доступ к данным в пространстве пользователя из привилегированного кода, выполняемого на уровне ядра;
- Добавлен загрузчик для систем с UEFI;- Добавлены новые драйверы: nvme (SSD-накопители), iwm (Intel Wireless AC7260, AC7265, AC3160), ixg (X540, X550), ixv (Intel 10G Ethernet), bta2dpd (Bluetooth Advanced Audio Distribution Profile);
- Обновлены версии сторонних компонентов GCC 5.5 с поддержкой Address Sanitizer и Undefined Behavior Sanitizer,
GDB 7.12,
GNU binutils 2.27,
Clang/LLVM 3.8.1,
OpenSSH 7.6,
OpenSSL 1.0.2k,
mdocml 1.14.1,
acpica 20170303,
ntp 4.2.8p11-o,
dhcpcd 7.0.3,
Lua 5.3.4.URL: http://blog.netbsd.org/tnf/entry/netbsd_8_0_release_candidate
Новость: https://www.opennet.me/opennews/art.shtml?num=48501
> Обновлены версии сторонних компонентов GCC 5.5Это обновление?! Ну нифига себе! В убунте двухлетней давности gcc и то свежее.
>> Обновлены версии сторонних компонентов GCC 5.5
> Это обновление?! Ну нифига себе! В убунте двухлетней давности gcc и то
> свежее.Да, лан! Свежачок-с!1 Вона в oldoldstable LTS ещё только
https://lists.debian.org/debian-lts-announce/2018/04/msg0002...
4.9 завозят.
>Это обновление?! Ну нифига себе! В убунте ..."Бубунта мой мир!"?
А вопрос - нафига? В чем отличия в результирующем коде?
Ты не поверишъ, собираю себе программы для ARM-based с gcc 4.9,
Проверил с gcc 5.4 - никакой принципиальной разницы.
Новые версии гораздо больше хороших ворнигов пишут. И вывод ошибок в C++ тоже кошернее.
> Новые версии гораздо больше хороших ворнигов пишут. И вывод ошибок в C++
> тоже кошернее.Ну да. Поэтому ты займешся интеграцией новых версий GCC в NetBSD.
Какие аппаратные платформы выбираешь из имеющихся?
Желательно 3-4, лучше 5-6.
Сколько времени тебе необходимо на интеграцию с проверками?Ан нет, не займешся? Так, на потрандеть? =)
> А вопрос - нафига? В чем отличия в результирующем коде?Мои эксперименты показали что GCC 6.x и тем более 7.x порой генерят более компактный и/или быстрый код чем 4/5.
Еще они это делают заметно БЫСТРЕЕ. И памяти жрут меньше. Особенно с высокими уровнями оптимизации и LTO. LTO в 4.9 вообще малореально пользоваться. Тормозной, RAM дико жрет и глючный - все и сразу. В GCC до 6.x примерно -O3 глюкавый. По сравнению с -O2 это деает очень хорошую прибавку к скорости, но - некоторые алгоритмы начинают падать. В наиболее популярных либах типа LZ4 это заворкэраундили. Но шаг в сторону - БАХ! SIGSEGV! На ровном месте. Очень удобно.
И еще диагностические сообщения сильно подтянули. А также много полезных новых опций по части безопасности, оптимизации и диагностики. Для "больших" систем например asan/ubsan/tsan... - отличные, между прочим, инструменты. Но в 4.9/5 это где-то в совсем зачаточном состоянии было.
> Ты не поверишъ, собираю себе программы для ARM-based с gcc 4.9,
> Проверил с gcc 5.4 - никакой принципиальной разницы.А я сравнивал gcc 4.9 и 6.2 чтоли, и по итогам на 6.2 остался. А потом и на более новый перешел, потому что нафиг мне тормознутый и глюкавый код? Да и диагностика в новых GCC мне нравится. Warning на типовые ляпы выдают намного лучше.
>> А вопрос - нафига? В чем отличия в результирующем коде?
> Мои эксперименты
> порой генерят более"Смеркалось..."
> GCC мне нравится. Warning на типовые ляпы выдают намного лучше.
"Рожь, пшеница, вот это все."
А теперь вернись в тему системной разработки и сопровождения, подумай про портирование на десяток архитектур, годы вылизывания косяков, полтора разработчика, "парад планет", и где тебя заkопает поддержка после "а я прихерачил новую версию бла-бла, мне нравится"
Советую погуглить про управление конфигурациями и версиями, в районе ITIL/COBIT, если у тебя локалност и еще не дошло через руки-ноги.
>Переработанный USB-стек с поддержкой USB3А раньше USB 3.0 в ней не поддерживался? Стандарту уже 10 лет как-бы.
Welcome to "free" software.
Corrected:
Welcome to *BSD
> Corrected:
> Welcome to *BSDСorrected:
Welcome to a the puddle full of gasifying anons, lapchatyj!https://www.freebsdnews.com/2010/10/14/freebsd-usb-3-0-support/
> FreeBSD gets USB 3.0 Support
> by iXsystems | Oct 14, 2010 | FreeBSD | 0 comments
> Corrected:
> Welcome to *BSD$ man xhci
NAME
xhci – USB eXtensible Host Controller driverSYNOPSIS
device xhciDESCRIPTION
The xhci driver provides support for the USB eXtensible Host Controller
Interface, which allows use of USB 1.0, 2.0 and 3.0 devices on the same
USB port.HISTORY
The xhci device driver first appeared in FreeBSD 8.2.May 17, 2011
xHCI 1.0: First public release, May 21, 2010.
Ты хоть системы то видел? Ну там исходный текст всякий, букофки там есть латинские?
>Welcome to "free" software.All the *BSD systems a free, not a "free", you asshole :-)
> All the *BSD systems a free, not a "free", you asshole :-)Cool story, bro! Tell it to Geohot and his Nintendo Switch.
They _KNOW_ it, you asshole ! :-)
Да что вы накинулись со своей "свежестью". В БСД мире время течёт иначе. И для пользователей БСД всё происходит часто, регулярно и вовремя. Линуксоидам сложно это понять.
> Линуксоидам сложно это понять.Особоенно опеннетным. Им вообще некогда понимать - опять нужно с важными видом надувать щечки, как будто самолично впиливали поддержку usb3 в пингвина.
> Линуксоидам сложно это понять.Да, особенно если учесть что "линуксоид" и "системный разработчик" не пересекаются ваще.
И первое как диагноз инфантилизма.
> Да, особенно если учесть что "линуксоид" и "системный разработчик" не пересекаются ваще.I lol'd. Успехи BSDшников в системных разработках заметны невооруженным глазом.
>> Да, особенно если учесть что "линуксоид" и "системный разработчик" не пересекаются ваще.
> I lol'd. Успехи BSDшников в системных разработках заметны невооруженным глазом.Ты вообще в теме разработки? Или так, квакнуть и в тину? =)
> Ты вообще в теме разработки? Или так, квакнуть и в тину? =)Да как вы смеете!
У него есть майка с портретом Линуса и Грега и с надписью "Im with those guys!", вот! А еще он читает логи коммитов и иногда репортит баги, а значит почти что разработчик! ))
> Встроенная в ядро система микширования звука;кто-нить пробовал работать со звуком в нетбсд? интересно же!
Он не для этого и не о том. Для работы со звуком есть macOS, Windows, iOS и Ubuntu Studio.
Особенно macOS и Windows со всеми их костылями. Нет, просто для них написан софт (для линукса тоже). Про айос что-то слишком.
Не совсем. Просто в Windows и MacOS есть звуковой стэк с мизерными задержками
А в линухе победил пульс-аудио, сегт не имоверными не контролируемыми задержками.
> Просто в Windows и MacOS есть звуковой стэк с мизерными задержкамиУПРЛС?
> А в линухе победил пульс-аудио, сегт не имоверными не контролируемыми задержками.RT-ведро + JACK, например.
> Он не для этогоОн только для новостей на опеннете?
Я не фетишиста спрашивал, а тех, для кого запилили микшер в ядре
Я в NetBSD слушаю музыку через moc, вроде слышно.
Интересно, что раньше выйдет: NetBSD 8.0 или FreeBSD 11.2-RELEASE?
Зачем?
> Зачем?http://www.opennet.me/openforum/vsluhforumID3/114168.html#3
Зеня сидит на берегу, наблюдая течение.
> Зеня сидит на берегу, наблюдая течение.Мимо проплыл сине-зеленый XP. Виндокапец - подумал Зеня.
Новые обои с силуэтом бионического бобра - вот настоящее новщество!
LOL мимо темы. Тебе бы вкладок поменьше держать...
>Добавлен загрузчик для систем с UEFI;Ну всё! Пошла вода в хату! Ожидаются массовые замены oZZ на новом железе! :-))))
Хорошая вещь. Планирую начать обучение архитектуры ОС с изучения именно NetBSD.
Угу. NetBSD - наименее документированная из всех *BSD.В то время, как в NetBSD носятся c Clang/LLVM 3.8.1, на FreeBSD переходят на Mesa-18.0.1 и LLVM/Clang 6.0.0.
Так то оно так, но FreeBSD уже давно превратилась в какое-то подобие линукса среди BSD. Корявое нагромождение каких-то костылей. NetBSD хоть по фичам и отстаёт, но выглядит стройно, красиво и элегантно (одни только машинонезависимые драйверы чего стоят), а следствием этой стройности является хорошая портабельность.
> одни только машинонезависимые драйверы чего стоят
> следствием этой стройности является хорошая портабельность.FreeBSD портирована на множество архитектур и новых процессоров.
[amd64]: https://svnweb.freebsd.org/base/head/sys/amd64/conf/
[arm]: https://svnweb.freebsd.org/base/head/sys/arm/conf/
[arm64]: https://svnweb.freebsd.org/base/head/sys/arm64/conf/
[i386]: https://svnweb.freebsd.org/base/head/sys/i386/conf/
[mips]: https://svnweb.freebsd.org/base/head/sys/mips/conf/
[powerpc]: https://svnweb.freebsd.org/base/head/sys/powerpc/conf/
[riscv]: https://svnweb.freebsd.org/base/head/sys/riscv/conf/
[sparc64]: https://svnweb.freebsd.org/base/head/sys/sparc64/conf/А NetBSD на скольких платформах может запуститься?
К этим 8 можно прибавить еще полсотни
> К этим 8 можно прибавить еще полсотниКакие из них вы будете использовать или уже используете?
А это вообще важно? Главное - разработчики смогли сделать свой код высоко портируемым. Фря отдыхает в сторонке
> А это вообще важно?Вообще - да. Не замыкаются ли разработчики в собственном мирке давно неподдерживаемых и не выпускаемых устройств, на которые они портируют операционную систему и сопровождают её.
Это показатель степени эскапизма.> Главное - разработчики смогли сделать свой код высоко портируемым. Фря отдыхает в сторонке
FreeBSD много переняла из NetBSD - это её, можно сказать, тётка (если не мать, как-никак - непосредственный потомок в линейке освобождённых BSD). Так что по портируемости не уступает, а по фичам и документации превосходит предшественницу.
> К этим 8 можно прибавить еще полсотниК которым плату даже на дальних ебеях не найти. Пройдено.
http://www.netbsd.org/ports/history.htmlNetBSD's slogan is "Of course it runs NetBSD", and with good cause. At the time of writing NetBSD provides formal releases for 53 architectures, and has integrated ports for four others. Those numbers can be deceptive - within one platform (mac68k), there are 93 different machines, of which 89 are currently supported (37 fully).
> FreeBSD уже давно превратилась в какое-то подобие линукса среди BSDНет.
>Корявое нагромождение каких-то костылей.
Не сказал бы. Все относительно.
В общем шинная топология почти та же самая, драйвера с тем же probe/init/attach/io/reset/detach/.
Клюква более развесистая и ветвистая, это да.>дни только машинонезависимые драйверы чего стоят
"машинонезависимые драйверы", это нечто. вообщето 40 лет этой идее =)
Драйвера периферийных контроллеров пишутся на с, регистры у контроллеров куда ни прособачь, таки одинаковые, логика по кругу такая же.
Далее зависит от системных навыков разработчика.Советую написать пару драйверов на периферию для/c микроконтроллером, с даташита, или таки разобрать чей-то код, тогда будет понятнее.
"Любой, кто плотно работал с кодом ядра Linux, знает, что, несмотря на то что в ядре, в общем-то, соблюдается разделение на платформенно зависимый/независимый код, зачастую оно нарушается, а само ядро представляет собой большой запутанный комок кода. Код NetBSD, напротив, четко структурирован и имеет несколько слоев абстракций от железа.<...> На самом деле ядро NetBSD настолько грамотно разделено на независимые слои, что даже процесс портирования на новую архитектуру здесь значительно проще, чем в других ОС. Портирование NetBSD на x86_64 в свое время заняло всего месяц, тогда как у разработчиков Linux на это ушло полгода. А теперь представь, насколько разные по количеству участников команды это делали!"
> комок кода. Код NetBSD, напротив, четко структурирован и имеет несколько слоев
> абстракций от железа.Поэтому, там где линуксоид просто возьмет и напишет что хотел, нетбсдшник будет фигурно трахаться, пытаясь втиснуться в абстракции. А когда это не получится - выпьет с горя йаду и забьет.
> в других ОС. Портирование NetBSD на x86_64 в свое время заняло
> всего месяц, тогда как у разработчиков Linux на это ушло полгода....но в конечном итоге в лине дров - во. А в сабже - во. Ну и я с удовольствием посмотрю как вы абстрагируете видеокарты, например. И чтоб это не оказалась копипаста из Linux или мимикрия под него при этом.
>Поэтому, там где линуксоид просто возьмет и напишет что хотел"Линуксоид" не напишет, это такой сферический конь в вакууме.
> Поэтому, там где линуксоид просто возьмет и напишет что хотел на форумах или в комментарях к новости на опеннетеДополнил. Не благодари.
>...но в конечном итоге в лине дров - во. А в сабже - во.Ты не юли, а приводи цитату полностью:
>А теперь представь, насколько разные по количеству участников команды это делали!
Очень авторитетное заявление от человека, который NetBSD в глаза не видел (о чем говорит коммент ниже с вопросом про портабельность).
> GDB 7.12,- портирован на FreeBSD в январе 2017, сейчас актуальная версия порта gdb-8.1.
> GNU binutils 2.27,
- портировано на FreeBSD в августе 2016, сейчас актуальная версия порта binutils-2.30.
> Clang/LLVM 3.8.1,
- портирован на FreeBSD в июле 2016, сейчас актуальная версия порта llvm/clang-6.0.0.
> OpenSSH 7.6,
- портирован на FreeBSD в октябре 2017, сейчас актуальная версия порта openssh-portable-7.7.p1.
> OpenSSL 1.0.2k
- портирован на FreeBSD в январе 2017, сейчас актуальная версия порта openssl-1.0.2o.
> mdocml 1.14.1
- на FreeBSD актуальная версия порта mdocml-1.14.3.
> acpica 20170303
- портирован на FreeBSD в мае 2017, сейчас актуальная версия порта acpica-tools-20180427.
> ntp 4.2.8p11-o
- аналогично.
> dhcpcd 7.0.3
- на FreeBSD сейчас актуальная версия порта dhcpcd-6.11.5.
> Lua 5.3.4.
- аналогично.
Работа по портированию нового софта для ОС всегда связана с кадровыми ресурсами. Кадры, то есть программисты, хотят получать за свою работу деньги. Деньги имеются в первую очередь у крупных корпораций, которые поддерживая тех или иных разработчиков, определяют таким образом какой дистрибутив будет развиваться лучше. FreeBSD имеет поддержку со стороны крупных корпораций (в первую очередь, со стороны Apple, так как FreeBSD является существенной частью Mac OS X). NetBSD практически не поддерживается крупными корпорациями, в него не идут инвестиции, и он развивается медленнее. Кроме того, примерно с 2013 года в сообществе разработчиков произошел раскол. NetBSD не исчез к данному моменту только потому, что его до сих пор держит на плаву крупная идея, лежащая в его основе - весь софт (включая такой важный, как драйверы) на NetBSD должен работать на любой из 53 платформ. Так что удивляться тому, что на не поддерживаемой крупным капиталом и испытывающей проблемы менеджмента операционной системе (но еще более-менее живой) довольно старый софт, не стоит. В этом есть даже один плюс: второй гном там сохранился в целости и сохранности
http://pkgsrc.se/devel/gdbправда для твоей жавы он все равно бесполезен.
> mdocml 1.14.1
- на FreeBSD актуальная версия порта mdocml-1.14.3.
и что, там офигенно много изменений?
> правда для твоей жавы он все равно бесполезен.Так для Java есть VisualVM.
Version:
1.4 (Build 171211); platform 20171211-unknown-revn
System:
FreeBSD (11.2-PRERELEASE) , amd64 64bit
Java:
1.8.0_162; OpenJDK 64-Bit Server VM (25.162-b12, mixed mode)
Vendor:
Oracle Corporation, http://java.oracle.com/
Environment:
UTF-8; ru_RU (visualvm)