Представлен (http://www.gnu.org/software/hurd/news/2016-05-18-releases.html) релиз ядра GNU Hurd 0.8 (http://www.gnu.org/software/hurd/), а также сопутствующих ядру компонентов: микроядра GNU Mach 1.7, генератора интерфейсов для микроядра Mach - GNU MIG 1.7 и порта системной библиотеки glibc-2.19-hurd+libpthread-20160518. GNU Hurd доступен только для 32-разрядной архитектуры x86 (работа по портированию ядра для архитектуры x86_64 пока не завершена). В ближайшее время оценить GNU Hurd в действии можно будет воспользовавшись сборками (https://people.debian.org/~sthibault/hurd-i386/) (iso-образы (https://people.debian.org/~sthibault/hurd-i386/installer/cdi.../)) дистрибутива Debian GNU/Hurd (http://www.debian.org/ports/hurd/), сочетающего программное окружение Debian c ядром GNU Hurd.GNU Hurd представляет (http://www.gnu.org/software/hurd/hurd/what_is_the_gnu_hurd.html) собой ядро, развиваемое в качестве замены ядра Unix и оформленное в виде набора серверов, работающих поверх микроядра GNU Mach и реализующих различные системные сервисы, такие как файловые системы, сетевой стек, система управления доступом к файлам. Микроядро GNU Mach предоставляет IPC-механизм, используемый для организации взаимодействия компонентов GNU Hurd и построения распределённой мультисерверной архитектуры. GNU MIG (Mach 3.0 Interface Generator) является инструментом для трансляции файлов-определений RPC (Remote Procedure Call) в код на языке Си, который необходим для компиляции любого пакета, принимающего или отправляющего RPC-вызовы, в том числе для GNU Mach, GNU Hurd и GNU C Library (glibc).
Основные новшества GNU Hurd 0.8:- Библиотека netfs переведена на использование механизма подсчёта ссылок, позволяющего обойтись без блокировок для peropen и node-объектов ;- В библиотеке с реализаций хэшей появился интерфейс для использования нецелочисленных ключей, который теперь применяется в трансляторе ftpfs и кэшах libdiskfs и nfs;
- Повышена стабильность инструмента fakeroot;- В состав репозитория включены транслятор devnode и библиотека hurd-slab;
- Проведена чистка кода, исправлен крах в pfinet, решены проблемы с блокировками в libdiskfs и устранён выход за границы буфера в кэше блоков ext2fs;
- Улучшения в генераторе интерфейсов GNU MIG 1.7: Добавлен тестовый набор. Вместо типов Mach в генерируемом кода задействованы целочисленные типы из stdint.h. Прекращена поддержка устаревших функций и процедур RPC;- В микроядре GNU Mach 1.7 обеспечена совместимость с новыми версиями GCC. Вместо типов Mach в генерируемом кода задействованы целочисленные типы из stdint.h. Изменены правила кэширования объектов VM. Интегрирована и задействована в slab allocator система физического выделения страниц памяти (physical page allocator). Добавлен механизм синхронизации gsync, похожий на futex в Linux. Добавлена возможность профилирования кода ядра из пространства пользователя.
URL: http://permalink.gmane.org/gmane.org.fsf.announce/2479
Новость: http://www.opennet.me/opennews/art.shtml?num=44458
Когда уже использовать можно будет заместо linux?
Живее вылядит Genode, на мой взгляд, особенно с учетом поддержки паравиртуализации ядра Linux. Да и с поддержкой железа.
Микроядра с внутренней коммуникацией в виде RPC вызывают большие сомнения. Программировать в них тяжело --- все время нависает угроза труднораспознаваемгог deadlock'а.
Назван точный период: http://xkcd.com/1508/
судя по этой картинке, допиливать GNU/Hurd будут либо роботы, либо тараканы.
> Когда уже использовать можно будет заместо linux?Какими соображениями обусловлена необходимость перехода? Линукс стал слишком мейнстримным? В нём появилось слишком много драйверов? Он слишком хорошо документирован?
>> Когда уже использовать можно будет заместо linux?
> Какими соображениями обусловлена необходимость перехода? Линукс стал слишком мейнстримным?
> В нём появилось слишком много драйверов? Он слишком хорошо документирован?недоверие к Линусу Торвальдсу
> недоверие к Линусу ТорвальдсуАга, мутный тип.
Позволяет себе грубо выражаться в адрес некоторых интересных личностей и организаций.
> Позволяет себе грубо выражаться в адрес некоторых интересных личностей и организаций.Но деньги от них https://duckduckgo.com/?q=nvidia+joins+linux-foundation берёт. #историяуспеха
Можно по-конкретнее?
> Можно по-конкретнее?Ну, он показывал нВидии, каким пальцем написан код ядра. А пальцем показывать, как известно, невежливо.
Ай-ай-ай! Как он посмел? Бедненькая невидия. Засудят теперь Линуса.
> Можно по-конкретнее?Конечно. Одной компании, которую мы называть не будем, он сказал "Fuck you, NVidia". А товарищ по имени Леннарт даже написал небольшое эссе на тему "как грубо выражаются разработчики ядра".
Этот товарищ нам не товарищ. Палец Линуса конечно беспощаден, но вскидываний без оснований вроде не было.
> Этот товарищ нам не товарищ. Палец Линуса конечно беспощаден, но вскидываний без
> оснований вроде не было.Он просто хepoво воспитанный гик. Не более того.
> Он просто хepoво воспитанный гик."Хорошо воспитанный гик" это пустое множество. Не создал господь бог такой твари. Даже представить себе не могу такое извращение.
Скорее недоверие к Поттерингу.
> Скорее недоверие к Поттерингу.Ш-ш! Вдруг он узнает про Хурд?
Затем, что выбор - это всегда хорошо. А если на него никогда нельзя будет перейти зачем он пилится?! Зачем эта новость?!
> Затем, что выбор - это всегда хорошо. А если на него никогда
> нельзя будет перейти зачем он пилится?! Зачем эта новость?!Выбор, вообще говоря, чисто формальный. И вопросы -- чисто философские.
Linux хорошо документирован!?? Не смешите тараканов :)) Худшей документации в отрасли нет, которая порождает тыщу разных интерфейсов и функций выполняющих одно и тоже. И создающее мнимую видимость прогресса.
> Linux хорошо документирован!??А разве я это утверждал? Я поинтересовался, не является ли _слишком_ хорошая документация Линукса причиной для поиска альтернатив.
> Худшей документации в отрасли нет
Если Линукс не _слишком_ хорошо документирован, то причина перехода, очевидно, не в этом.
это только ядро, поверх него кроме кривого-косого системдоса запускать нечего
Такими темпами версию 1.0 мои дети а не внуки увидят
>Такими темпами версию 1.0 мои дети а не внуки увидятДа уж, что-то зачастили.
Ричард Столлман с каждым новым годом набирается всё большего программистского опыта и мейнтейнит HURD всё активнее. Это нормально. Так и должно быть в настоящем GNU проекте. Никаких разговоров - только первоклассный кодинг от гуру.
>первоклассный кодинг от гуруВыпускник MITa связавшийся с C не может считаться гуру
Ведь выпускник MIT обязан писать только на Lisp.
на пеле. на крайняк - на лютой смеси бидона и пэхэпе, изредка сдабирвая весь этот бульон - лиспом и руби =)
> на пеле. на крайняк - на лютой смеси бидона и пэхэпе, изредка
> сдабирвая весь этот бульон - лиспом и руби =)Завидовать нехорошо!
>> на пеле. на крайняк - на лютой смеси бидона и пэхэпе, изредка
>> сдабирвая весь этот бульон - лиспом и руби =)
> Завидовать нехорошо!завидовать завидующи?
Архитектура выглядит привлекательнее, чем у linux, где всё ко всему прибито гвоздями. И для того чтобы что-то изменить надо делать полную перекомпиляцию.
модули ядра, modprobe, lsmod и тд.
оно давно не так монолитно, как было в самом начале.
> модули ядра, modprobe, lsmod и тд.
> оно давно не так монолитно, как было в самом начале.Это оно всё только лежит в разных местах файловой системы и обновляется раздельно. В остальном ведёт себя как монолит. Перезагрузить или догрузить по отдельности разве можно?
>Перезагрузить или догрузить по отдельности разве можно?rmmod modulename
modprobe ...
Не?
> rmmodЛучше modprobe -r.
>> модули ядра, modprobe, lsmod и тд.
>> оно давно не так монолитно, как было в самом начале.
> Это оно всё только лежит в разных местах файловой системы и обновляется
> раздельно. В остальном ведёт себя как монолит. Перезагрузить или догрузить по
> отдельности разве можно?Да. Но вы этого ещё не проходили.
> Это оно всё только лежит в разных местах файловой системы и обновляется
> раздельно. В остальном ведёт себя как монолит.Да ладно.
> Перезагрузить или догрузить по отдельности разве можно?
Да. Я так ещё в прошлом веке hotswap IDE-дисков на системе с корнем на IDE делал.
А вот попытка перезагрузить tty на миниксе не впечатлила, помнится.
>> Это оно всё только лежит в разных местах файловой системы и обновляется
>> раздельно. В остальном ведёт себя как монолит.
> Да ладно.
>> Перезагрузить или догрузить по отдельности разве можно?
> Да. Я так ещё в прошлом веке hotswap IDE-дисков на системе
> с корнем на IDE делал.И чо? Покажь дистр промышленный с горячей заменой винтов.
все это в куче - "Аппарат Елизарова" для монолитного ядра.
> Архитектура выглядит привлекательнее, чем у linux, где всё ко всему прибито гвоздями.И много Вы спроектировали операционных систем?
> И для того чтобы что-то изменить надо делать полную перекомпиляцию.
Видимо, не более нуля, т.к. про модули не знаете.
>> Архитектура выглядит привлекательнее, чем у linux, где всё ко всему прибито гвоздями.
> И много Вы спроектировали операционных систем?А вы, Михаил? Альт не считаем - лично вы ядро не написали с нуля.
>> И для того чтобы что-то изменить надо делать полную перекомпиляцию.
> Видимо, не более нуля, т.к. про модули не знаете.Модули не синоним слова "не-монолитный".
Вот возникает вопрос. Сторонники микроядерных ОС любят приводить довод в пользу такой архитектуры: так как микроядро очень компактно, то по сравнению с монолитными ядрами гораздо легче вычистить все баги, провести инспекцию кода, получить надежное решение и т.д. и т.п.
Но почему же это компактное ядрышко до сих пор не могут портировать под x86-64?
А уж про то, сколько времени его будут портировать на какой-нибудь ARM, или MIPS, я даже подумать боюсь.
>до сих пор не могут портироватьЭто не связано вообще. HURD пишут дюжина человек в не очень быстром темпе. Вопрос портирования держится в уме, но никто им заниматься в ближайшее время не будет.
>Но почему же это компактное ядрышко до сих пор не могут портировать под x86-64?Полное отсутствие заинтересованности корпорастов и отсутствие программистов у них на зарплатах (как это делается для линукс ядра)?
> Но почему же это компактное ядрышко до сих пор не могут портировать под x86-64?Потому что нет финансирования и человекоресурсов.
Если кто-то сумеет применить Hurd в своём бизнесе и будет поэтому её спонсировать - дела сразу в гору пойдут. А пока на энтузиазме держится - даже не на личной выгоде - будет медленно.
Позадавайте анонимам такой вопрос на засыпку: как быстро вы развиваете проект, который вам интересен чисто как хобби, но с которого вы не имеете никакого дохода и который приходится пилить исключительно в свободное время?
Уверен (по собственному опыту), что 80% таких проектов доводится только до минимально необходимого уровня, способного удовлетворить интерес. Потому что далее следует муторная работа по допиливанию, которая не отличается от обычной работы и потому выполняется только с неё есть какая-либо выгода.
И ни добавить, ни отнять. Хорошо сказал.
Всё относительно. Всё-всё.
По сравнению с ФантомОС Завалишина у GNU Hurd дела идут замечательно.
> GNU Hurd доступен только для 32-разрядной архитектуры x86640 килобайт хватит всем!
> 640 килобайт хватит всем!ДА! А остальное выделим под браузер. Правда придётся докупить ещё гигов 8 оперативы и перейти на x86_64. Но это ничего.
>> 640 килобайт хватит всем!
> ДА! А остальное выделим под браузер. Правда придётся докупить ещё гигов 8
> оперативы и перейти на x86_64. Но это ничего.А как же PAE? :)
> А как же PAE? :)а "никак". фигурально.
>> А как же PAE? :)
> а "никак". фигурально.XMS, EMM и DOS4GW вполне ж реальны! //Понятное дело: не для "всем".
> А как же PAE? :)Всё так же: http://cl4ssic4l.wordpress.com/2011/05/24/linus-torvalds-abo.../
> работа по портированию ядра для архитектуры x86_64 пока не завершенаLOL!
Эдак они завершат, когда будет уже x128
> Эдак они завершат, когда будет уже x128Точнее, x86_64_128 :)
> Точнее, x86_64_128 :)ТРЕХ-слойным оно редко бывает. точнее - никогда =)
поэтому будет скорее "x64_128" ;=)
> ТРЕХ-слойным оно редко бывает. точнее - никогда =)Т.е. текущее 16_32_64 - это всем снится?
>> ТРЕХ-слойным оно редко бывает. точнее - никогда =)
> Т.е. текущее 16_32_64 - это всем снится?Именно :=)
только не "всем" а отдельным, осоебнно одернным или увелкающимся(бого знает чем именно).
х86 хорошо, но хурд интереснее был бы для других процессорных типов. и даже для некоторых микроконтроллеров.
А ещё интереснее было бы для специально спроектированный под микроядра проц. Например, с тремя кольцами защиты: 0 - собственно для микроядра, 1 - для сервеов, 2 - пользовательский уровень. Причём между 0 и 1-м кольцами упрощено/ускорено переключение контекста.
> А ещё интереснее было бы для специально спроектированный под микроядра проц. Например, с тремя кольцами защиты: 0 - собственно для микроядра, 1 - для сервеов, 2 - пользовательский уровеньА сейчас на интеле что по другому ? Более того есть -1 кольцо еще.
> А сейчас на интеле что по другому ? Более того есть -1
> кольцо еще.два аж.
вируталки кольцо -1
и кольцо -2 SMI/SMM с зияющими дырами в нем, постоянными и в фирмвере матплат и микрокоде чипа.
> Причём между 0 и 1-м кольцами упрощено/ускорено переключение контекста.Руками делать переключение контекста никто не запрещает, будет быстрее чем аппаратно. В винде вон с самого рождения всего один TSS.
> А ещё интереснее было бы для специально спроектированный под микроядра проц. Например,
> с тремя кольцами защиты: 0 - собственно для микроядра, 1 -
> для сервеов, 2 - пользовательский уровень. Причём между 0 и 1-м
> кольцами упрощено/ускорено переключение контекста.А между 1-м и 2-м - очень-очень быстрые месседжи. И всё это без троек в четверти, да, малыш?
> А ещё интереснее было бы для специально спроектированный под микроядра проц. Например,
> с тремя кольцами защиты: 0 - собственно для микроядра, 1 -
> для сервеов, 2 - пользовательский уровень. Причём между 0 и 1-м
> кольцами упрощено/ускорено переключение контекста.туда примерно и дрейфует x86 ныне. legacy кольца остаются для античных платформ и приложений, где без этого низя а для остального - впиливаются SMM/SMI и VT парой уровней ниже их.
> х86 хорошо, но хурд интереснее был бы для других процессорных типов. и
> даже для некоторых микроконтроллеров.С каких пор Hurd стал архитектурно переносимым? Нужно работающее микроядро для OS - используйте L4, L4se.
Для микроконтроллеров - RTEMS если POSIX, FreeRTOS если остальное.
Если к участию в проекте не присоединяются многочисленные добровольцы, как это обстояло с Линукс, то это заставляет задуматься даже обычного пользователя, что Hurd, чем то уступает Линуксу. Непонятно тогда зачем он нужен и зачем тратить на него силы, которые можно было бы с пользой вложить в развитие Линукса.
>Непонятно тогда зачем он нужен и зачем тратить на него силы, которые можно было бы с пользой вложить в развитие Линуксаты сам хоть что-нибудь во что-нибудь вложил?))
ипичная позиция потребителя, но не производителя.
Позиция потребителя - сделайте мне то-то. А он совершенно справедливо заметил, что перспективы разработки Hurd весьма туманные. Комментарий - типичная позиция сам-себе-писателя.
Типичная позиция потребителя, но не производителя.
> Типичная позиция потребителя, но не производителя.Укажи, на что это был ответ.
С точки зрения архитектуры Hurd выглядит весьма перспективно. Но с текущим темпом разработки его будут разрабатывать его лет 100... Хотелось бы, что-бы его допилили до состояния, когда он станет пригоден для коммерческого использования на серверах, тогда количество мэнтейнеров и финансовых влияний в разработку вырастет.
> С точки зрения архитектуры Hurd выглядит весьма перспективно. Но с текущим темпом
> разработки его будут разрабатывать его лет 100... Хотелось бы, что-бы его
> допилили до состояния, когда он станет пригоден для коммерческого использования на
> серверах, тогда количество мэнтейнеров и финансовых влияний в разработку вырастет.Чувак, чтобы хоть какая-то ось стала пригодной для коммерческого использования на серверах - надо как минимум сотни приложений под нее. Или хотя бы сорц, который компилируется и стабильно - для промышленного применения - работает. Сечешь? Без этого условия - никогда ось не станет коммерчески пригодной для использования на серверах.
Сколько времени понадобится эпплу чтобы обновиться до нового ядра? :)
> Сколько времени понадобится эпплу чтобы обновиться до нового ядра? :)На http://opensource.apple.com/ время остановилось: ни одного таймштампа, никакого SCM, никаких новостей. Может, и правда, хёрд впиливают?... Оупенсурсненько.