LINUX.ORG.RU

Релиз ОС Genode 20.08

 , , , ,


2

4

Вернее фреймворка для построения операционных систем — именно такую терминологию предпочитают авторы из Genode Labs.

Данный конструктор микроядерных ОС поддерживает несколько микроядер из семейства L4, ядро Muen и собственное минималистичное ядро base-hw.

Разработки доступны под лицензией AGPLv3 и, по желанию, коммерческой лицензией: https://genode.org/about/licenses

Попытка сделать вариант, доступный для использования кем-то помимо энтузиастов разработки микроядер называется SculptOS: https://genode.org/download/sculpt

В данном релизе:

  • полная переработка графического стека (в будущем позволит без проблем рестартовать драйвера в случае сбоя);
  • улучшения в интеграции Qt, позволившие частично портировать браузер Falkon (что достаточно наглядно иллюстрирует степень готовности к использованию ОС обывателями);
  • обновления подсистемы шифрования (написанной на SPARK/Ada!);
  • обновления VFS;
  • и множество других улучшений.

Из особенностей данного проекта можно отметить следующее:

  • повсеместное использование xml в качестве формата конфигурации - что может вызвать идиосинкразию у некоторых комментаторов;
  • эталонный уровень написания release notes и документации — если бы все открытые проекты придерживались подобных стандартов жизнь была бы легка и удивительна.

В целом проект радует регулярными релизами, активно и планомерно развивается и выглядит очень перспективным в качестве альтернативы GNU/Linux в светлом микроядерном будущем. Увы, отсутствие порта Emacs демотивирует автора новости от попыток познакомится с наработками проекта глубже, чем чтение документации.

>>> Подробности

★★★

Проверено: leave ()

Как с поддержкой OpenGL? Какое железо поддерживается помимо i915? Что со звуком? OSS, ALSA или что-то собственное? Какой оверхэд, например, при виртуализации линуксового Chromium?

question4 ★★★★★ ()

повсеместное использование xml в качестве формата конфигурации - что может вызвать идиосинкразию у некоторых комментаторов

Думаю, что это загоняет её в стоп лист для всех, кроме фанатов Maven, ибо даже Java девелоперы забили на xml.

zloelamo ★★★★ ()
Ответ на: комментарий от zloelamo

Как минимум сами разработчики используют его на железе.

Laz ★★★★★ ()

А где-то есть замеры производительности? Интересна величина эффекта выноса драйверов и подсистем ядра в отдельные адресные пространства.

xaizek ★★★★★ ()

Думаю этим можно будет пользоваться не раньше, чем когда на неё портируют systemd, wayland и KDE. А пока это чисто так, академ проект.

Sunderland93 ★★★★★ ()

SPARK/Ada

ну хоть эти не стали переизобретать аду, вот это сюрприз, я уже подумал, что пора бы генод переписать на русте, а тут такой облом. что теперь делать? я считаю, что надо переписать на русте ядро opensolaris или dragonfly bsd чтобы им всем отомстить.

anonymous ()

повсеместное использование xml в качестве формата конфигурации

Знают толк в извращениях.

qbbr ★★★★ ()

что может вызвать идиосинкразию у некоторых комментаторов

если бы все открытые проекты придерживались подобных стандартов жизнь была бы легка и удивительна

Увы, отсутствие порта Emacs демотивирует автора новости от попыток познакомится с наработками проекта глубже чем чтение документации.

С каких пор стали подтверждать такие графоманские новости?

anonymous ()

стим работает? в игры уже можно играть?

anonymous ()

от попыток познакомится

tsya.ru

И дефицит запятых.

Radjah ★★★★★ ()
Ответ на: комментарий от zloelamo

Думаю дальше виртуалбокс оно не вылазит.

Это с чего ты так решил?

zloelamo ★★★★ (02.09.20 17:21:26)

А, всё понятно, вопросов больше не имею. Ламеры ещё и не такой идиотизм придумывают :-D

zabbal ★★★ ()
Ответ на: комментарий от xaizek

А где-то есть замеры производительности?

Сомневаюсь - надо ведь бенчмарки активно работающие с этими самыми драйверами портировать, но при этом сразу возникает вопрос насколько корректно сравнивать разные порты.

Интересна величина эффекта выноса драйверов и подсистем ядра в отдельные адресные пространства.

Скорее всего изрядная - разработчики больше фокусируются на поддержке оборудования, POSIX и инструментов портирования. Оптимизацией никто особо не парится пока что.

zabbal ★★★ ()

Жаль что QNX так и не открыли, а были времена когда была надежда.

AUX ★★★ ()
Ответ на: комментарий от AUX

Жаль что QNX так и не открыли

там ничего интересного - устаревшее микроядро, бери sel4 и вперед херачить ОС. Даже херачить не надо - генод есть и на нем

https://genode.org/documentation/platforms/index

anonymous ()
Ответ на: комментарий от zloelamo

Так или иначе, для реально сложных конфигов с иерархией, лучше хмл так ничего и не придумали

rukez ()
Ответ на: комментарий от anonymous

Зато QNX протестирован десятилетиями, в отличие от…

AUX ★★★ ()
Ответ на: комментарий от AUX

Зато QNX протестирован десятилетиями

вопрос на чём, на 32-битных процессорах x86 тридцатилетней давности ? спасибо - ненужно

в отличие от…

говна мамонта sel4 вкрифицируется

anonymous ()

zabbal ★★★

Теперь можно предлагать свою кандидатуру в модераторы.

haleofir ()
Ответ на: комментарий от anonymous

вопрос на чём, на 32-битных процессорах x86 тридцатилетней давности ? спасибо - ненужно

Лови наркомана, ты в курсе про QNX 7?

AUX ★★★ ()
Ответ на: комментарий от zabbal

Какие-нибудь файловые операции через POSIX интерфейс вполне сойдут, например. И портировать не надо.

xaizek ★★★★★ ()
Ответ на: комментарий от rukez

Так или иначе, для реально сложных конфигов с иерархией, лучше хмл так ничего и не придумали

Придумали же: /dev/null, Корзина и т.п.

korvin_ ★★★★★ ()
Ответ на: комментарий от xaizek

Какие-нибудь файловые операции через POSIX интерфейс вполне сойдут

Дык так ты только VFS проверишь. Я думал ты про драйвера видео/звук.

zabbal ★★★ ()
Ответ на: комментарий от zabbal

Так механизм взаимодействия один и тот же. Меня же его производительность интересует (время на переключение контекста и передачу данных между ними). Понятно, что реализация может иметь оптимизации, но интересно насколько оно заметно в общем.

xaizek ★★★★★ ()
Ответ на: комментарий от vanner

https://usr.sysret.de/jws/genode/hcl.html

Спасибо. Поддерживается несколько ноутбуков, планшетов, десктопных материнских плат и Raspberry Pi. Часть драйверов железа портирована из Линукса. Звук — из OpenBSD. Видео отличное от Intel Gen5-Gen10 (2010-18 годы) — с кучей ограничений. OpenGL не упоминается.

question4 ★★★★★ ()
Ответ на: комментарий от anonymous

+1 за Аду к формальной верификации на SPARK.

я уже подумал, что пора бы генод переписать на русте, а тут такой облом. что теперь делать?

может, лучше всё микроведро полностью с С++ на аду переписать? (тем более там в L4 в основном IPC). в аде же собственные task есть. даже без ОС вообще. вот тогда бы превозмоглось.

на русте тоже прикольно было бы, кстати. эта модель с map/grant/revoke и IPC в L4 с меньшими чем обычно накладными расходами умозрительно красиво возможно ложится на memory model раста, на семантику владения/одалживания, лайфтаймы. надо только понять как. и окончательно разъяснить.

anonymous ()
Ответ на: комментарий от anonymous

Увы, отсутствие порта Emacs демотивирует автора новости от попыток познакомится с наработками проекта глубже чем чтение документации.

вот интересно, кстати. а Emacs это микроведро или нет? читаю вот надысь про gccemacs: оттудова презентацию и статью:

ABSTRACT Emacs Lisp (Elisp) is the Lisp dialect used by the Emacs text editor family. GNU Emacs can currently execute Elisp code either interpreted or byte-interpreted after it has been compiled to byte-code. In this work we discuss the implementation of an optimizing compiler approach for Elisp targeting native code. The native compiler employs the byte-compiler’s internal representation as input and exploits libgccjit to achieve code generation using the GNU Compiler Collection (GCC) infrastructure. Generated executables are stored as binary files and can be loaded and unloaded dynamically. Most of the functionality of the compiler is written in Elisp itself, including several optimization passes, paired with a C back-end to interface with the GNU Emacs core and libgccjit. Though still a work in progress, our implementation is able to bootstrap a functional Emacs and compile all lexically scoped Elisp files, including the whole GNU Emacs Lisp Package Archive (ELPA) [6]. Nativecompiled Elisp shows an increase of performance ranging from 2.3x up to 42x with respect to the equivalent byte-code, measured over a set of small benchmarks

так вот такой вот емакс с libgccjit это классический монолит, или потенциально его можно декомпозировать на микроведро емаксовое и балалайки на елиспе, компилируемом уже нативно, с 146% from 2.3x to 42x ?

под Genode или вообще нативно?

anonymous ()
Ответ на: комментарий от AUX

ты в курсе про QNX 7?

уже после Neutrino и Momentics? QNX6? нет, не в курсе.

ты мне вот расскажи: какое текущее состояние QNX и направление развития? и как там оно вообще развевается (на ветру) ?

anonymous ()
Ответ на: комментарий от anonymous

С каких пор стали подтверждать такие графоманские новости?

и не говори, стыд и позор

kott ★★★★★ ()
Ответ на: комментарий от qbbr

Знают толк в извращениях.

Это лучше, чем куча разных конфигов в разных форматах сделанных на коленке.

X512 ()
Ответ на: комментарий от anonymous

прочитал что-то про аду на википедии? молодец.

anonymous ()
Ответ на: комментарий от anonymous

может, лучше всё микроведро полностью с С++ на аду переписать?

Один из разработчиков Genode занимается этим, переписывает по частям их ядро - base-hw, на Ada, доклад был на FOSDEM’20.

vanner ()
Ответ на: комментарий от AUX

ты в курсе про QNX 7? Latest release 7.1 / July 2020; 1 month ago протестирован десятилетиями

бгг, энергетиков нахлебался ?

anonymous ()
Ответ на: комментарий от vanner

но ведь надо переписать на русте. он за новостями чтоли не следит? сейчас перепишет на аде, потом опять придётся переписывать.

anonymous ()
Ответ на: комментарий от question4

Ну это только список, причем неофициальный, оборудования, на котором проверено.

В целом, сейчас поддерживается, в основном, то, на чем работают разработчики, у них философия «eating our own dog food». Комьюнити довольно маленькое, поэтому сторонних патчей, тем более с поддержкой серьезного оборудования мало.

OpenGL не упоминается.

OpenGL поддерживается, порт mesa есть, с поддержкой аппаратного ускорения на intel gpu.

vanner ()
Ответ на: комментарий от anonymous

Основная идея genode, что это, все таки, фреймворк для OS. Любой компонент может быть заменен. Можно взять написать/готовое ядро на rust и использовать c genode.

anonymous ()

"...что может вызвать идиосинкразию..." - сказал клоун, которому внезапно понадобился емакс!! *фэйспалм.жыпег 9ГБ*

matumba ★★★★★ ()
Ответ на: комментарий от X512

> Знают толк в извращениях.
Это лучше, чем куча разных конфигов в разных форматах сделанных на коленке.

И согласен, и нет. Нужен ОДИН формат, очевидно. Но не такое говно, как XML. JSON - вот он показал себя хорошо во многих применениях.

Да и не в конфигах дело - в общем методе приподнесения продукта. Это как сидеть на улице перед полотенцем, где разложены разные детали и говорить, что из этого можно собрать велосипед (а деталей хватает от силы на 10% велосипеда). И кому это говно надо??

Где можно зацепить энтузазистов, так это полноценный x64 десктоп. Пусть даже без графона (потом прикрутим), но на мощной, гибкой архитектуре.
И чтоб помимо gcc-говна там был хотя бы D, Kotlin или C# какой-нть. Потому что когда заканчивается «системщина», начинается «прикладуха» где оправдания «мы всегда на этом говне писали!» не прокатят. Современному софту нужны современные языки. Точка. И упаси небо вляпаться в Го/Расты какие-нть.

matumba ★★★★★ ()
Последнее исправление: matumba (всего исправлений: 1)

Интересно, а поддержка месы, опенжиеля и интеловских дров зависит от используемого ядра?

А OpenGL ES поддерживается?

ChekPuk ★★★ ()
Ответ на: комментарий от ChekPuk

В принципе, поддержка железа от используемого ядра не зависит, все драйвера в юзерспейсе и на любом ядре софт работает через одинаковый API. По факту, качество поддержки разных ядер может отличаться.

vanner ()
Ответ на: комментарий от X512

Это лучше, чем куча разных конфигов в разных форматах сделанных на коленке.

Это проще в реализации для кодера, но хуже и неудобнее для пользователя.

ugoday ★★★★★ ()
Ответ на: комментарий от ugoday

но хуже и неудобнее для пользователя

Не нужно редактировать конфиги руками, для этого есть специальные инструменты, например xmlstarlet edit --update "/book/fiction[@type='b']/author/@type" --value "Local" book.xml.

X512 ()
Ответ на: комментарий от X512

Не нужно редактировать конфиги руками

Нужно править конфиги руками. Для этого есть специализированный инструмент — текстовый редактор.

xmlstarlet edit --update "/book/fiction[@type='b']/author/@type" --value "Local" book.xml

Спасибо, я лучше пойду китайских бэтмэнов поем.

P.S. Если вы вообще не собираетесь руками в конфиги лезть, используйте уж сразу бинарные конфиги, они хотя бы эффективные.

ugoday ★★★★★ ()
Последнее исправление: ugoday (всего исправлений: 1)
Ответ на: комментарий от anonymous

не, просто потыкал веточкой в виртуалочке MaRTEOS и эту вот AdaOS

прикольно, но довольно игрушечно. хочется чего-то более серьёзного.

anonymous ()
Ответ на: комментарий от X512

для этого есть специальные инструменты, например xmlstarlet edit –update «/book/fiction[@type=‘b’]/author/@type» –value «Local» book.xml.

даже так: sxml tutorial + какой-то набор макросов + чего-то наподобие GNU skribilo со своим набором AST макросов.

всё тоже самое, только человекочитаемее. глобальнее и надёжнее.

anonymous ()

Попробовал запустить на виртуальной машине (образ). Там какой-то странный модальный графический интерфейс без окон. Я так и не понял как им пользоваться.

X512 ()

Вернее фреймворка для построения операционных систем — именно такую терминологию предпочитают авторы из Genode Labs.

Значит, где-то есть и инструкция, как по этому фреймворку построить свою ОС?

hobbit ★★★★★ ()
Ответ на: комментарий от anonymous

Да в общем-то, далеко не в первый раз.

Я тоже считаю, что своё личное видение лучше написать в комментариях, даже если ты ТС. Но ведь кроме ТСа, эту новость никто не предложил, правильно? А новость сама по себе интересная.

hobbit ★★★★★ ()
Последнее исправление: hobbit (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.