LINUX.ORG.RU

Завершение эксперимента с Rust в ядре Linux

 ,


0

5

Начатый в ядре 6.1 эксперимент по добавлению кода на Rust в ядро Linux, в котором участвовало 173 разработчика, официально завершён: соответствующая секция убрана из документации ядра.

По словам мейнтейнера Rust for Linux: Rust is here to stay. Таким образом Rust становится официальным языком разработки ядра наравне с С.

Не все выявленные проблемы решены во всех конфигурация, но поскольку Rust уже используется на миллионах устройств в составе ядра (Android), разработчики посчитали эксперимент успешным.

На данный момент сборка кода на Rust по умолчанию отключена.

От автора новости: вангую что включат когда https://rust-gcc.github.io/ реализует подмножество функциональности, достаточное для сборки кода ядра.

>>> Анонс от Miguel Ojeda

★★★☆☆

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)

Что и требовалось доказать.

mord0d ★★★★★
()

От автора новости: вангую что включат когда https://rust-gcc.github.io/ реализует подмножество функциональности, достаточное для сборки кода ядра.

Кстати, о компиляторах, в каком состоянии сейчас поддержка Clang? Или Rust-GCC — более реалистичная задача?

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

Или Rust-GCC — более реалистичная задача?

Судя по уверенному прогрессу разрабов (давно не видел настолько подробных и качественных отчётов о работе и планах) - да, хотя понятия не имею что там с clang.

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

Не, не. Ждём visual basic. «Пропал калабуховский дом»!

miron_g
()
Последнее исправление: miron_g (всего исправлений: 2)

Дайте другой глобус!

gns ★★★★★
()

Вот ты тормоз медленный газ!

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

Главное, чтобы всегда оставалась возможность отключать сборку кода ядра на Rust. Остальное не важно.

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

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

будут вычищать ржавчину отдельным форком

Кто? У местных хейтеров не хватит интеллекта, у забугорных энтузиазм скиснет - разве что найдётся какой-нибудь собиратель донатов вроде авторов баттхёртиана. И то - при условии что это не потребует значительных усилий.

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

Ты о ком?

Он видимо про финнского шведа, который давно уже живёт в США.

Camel ★★★★★
()

Пускай сишники в ярости корчатся

Пускай небезопасно кодят в своём бессилии

Очень скоро их жалкие коммиты закончатся

Раст в ядре это - план возрождения Линуксии!

avgust23 ★
()

Линус то старый - ему все равно..

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

Ну отключают же какой-нибудь io_uring, а то и ftrace в придачу. Не в хейте дело, а необходимости и готовности поддерживать собственную сборку сколь-нибудь продолжительное время. Если андроиду оно надо, то остальным пока не особо понятно оно зачем?

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

Да уж, Торвальдс сделал всё, чтобы его правнукам не пришлось работать.

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

баттхёртиан

Это что? Devuan?

это как Лагранжиан, только полный

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

Ну отключают же какой-нибудь io_uring, а то и ftrace в придачу.

Кто и, главное, зачем?

необходимости и готовности поддерживать собственную сборку сколь-нибудь продолжительное время

Ещё раз, сосредоточься, зачем? У любого действия должна быть какая-то мотивация. Хейтерам-соплежуям достаточно «я не такой как все, я против системы, мне 13 лет», но «сколь-нибудь продолжительное время» это не про них во всех смыслах.

остальным пока не особо понятно оно зачем?

Ты правда бегаешь и отключаешь всю функциональность ядра, которая тебе прямо сейчас не нужна? И так каждый релиз?

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

Латино-Американский Фонд.

А им-то это нахрена сдалось? В бессмысленном хейтерстве они не замечены - они просто вычищают весь несвободный код из ядра. Весь код на Rust в ядре полностью свободный.

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

Мало ли что там останется дефолтно-отключённого.

firkax ★★★★★
()

Только это не эксперимент. Эксперимент предполагает какой-то контроль. Где параллельная разработка того же функционала «по старинке»? С чем сравнивать успех/неуспех новшества? «Никто не помер — значит, успешно», так что ли?

Smacker ★★★★★
()

главное чтобы не перевели все ядро на Rust,а то на C++ ядро фиг наверстаешь.

nicholas_ru ☆
()
Ответ на: комментарий от avgust23

Пускай сишники в ярости корчатся

Пускай небезопасно кодят в своём бессилии

Очень скоро их жалкие коммиты закончатся

Раст в ядре это - план возрождения Линуксии!

Еще один расто-поп епархии какого-то ржавого пришествия…

Скорее стоит ожидать рассказы какое все кривое, что она в каноничном расте плохо собирается и плохо работает, а если наладят, то «сборка ядра по подписке и бинарики тоже» (централизация и апач 2.0 намекает на это)…

Ешьте, не подавитесь…

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

Ты правда бегаешь и отключаешь всю функциональность ядра, которая тебе прямо сейчас не нужна? И так каждый релиз?

Вот! Вот оно. Я прям ждал этого.

И именно этим надо заниматься в ядре в первую очередь. Т.е. делать гибридное ядро, а не раздувать его, в очередной раз, попутно проводя подобные эксперименты.

Хотя могло показаться, что я являюсь диким противником раста, мне, в реальности, абсолютно плевать на чем оно написано. главное - чтоб работало надежно и не текло. Но тот монстрадав, в которого оно превратилось - уже давно требует модернизации. Иначе, в скором времени, мы рискуем получить ситуацию, похожую на X11, что потребует, по сути, переписать ядро с 0, что потребует не в пример больше времени и усилий, как на написание, так и на последующую доводку и тестирование.

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

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

И получится очередной неюзабельный калека.

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

рискуем получить ситуацию, похожую на X11, что потребует, по сути, переписать ядро с 0

Как только Торвальдса на пенсию отправят из-за старческой деменции.

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

По-твоему сишники настолько тупы и некомпетентны, что не могут оценить преимущества новых подходов на основе своего опыта, а только на основе примитивного сопоставления с параллельной реализацией на си?

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

Кто и, главное, зачем?

Астра, например. Особенно в hardened-ядрах и в версии «Смоленск». Потому как хотят замкнутую программную среду и соответствие исходного кода своей модели безопасности.

Ты правда бегаешь и отключаешь всю функциональность ядра, которая тебе прямо сейчас не нужна? И так каждый релиз?

Я - нет, я ядра не поддерживаю на корпоративном уровне. А когда сам собираю ядра для целей отладки, то раст мне точно не нужен.

gns ★★★★★
()

у меня глупый вопрос: у раста в разделе хорошо поддерживаемых платформ полтора землекопа прикопано, все остальное в формате должно работать, но хз…
как ядристы с этим смиряются ?? ядро линукса такто поддержку множества платформ гарантирует. или теперь гарантия «уж как получится» ??

pfg ★★★★★
()

Завершение эксперимента по добавлению экскрементов в ядро линукз

doomer
()

Таким образом Rust становится официальным языком разработки ядра наравне с С.

«Пропал калабуховский дом»

(ц)

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

Rust мог бы стать хорошим языком, если б умел управлять памятью и в нём ибыли бы исключения

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

И именно этим надо заниматься в ядре в первую очередь.

Занимайся, не возражаю :-D

уже давно требует модернизации

Со времён легендарного срача c Танненбаумом, ага. Где с тех пор minix пребывает рассказать или сам догадаешься?

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

Особенно в hardened-ядрах и в версии «Смоленск».

Ты опять всё путаешь. Hardening это не про отключение «лишнего» - это как раз наоборот про включение дополнительных механизмов защиты. Например того же SELinux, который в обычном ядре может быть отключён за ненужностью.

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

Когда питон в ядре?

Дyмаю, что сразу после BASIC...

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

Это еще и про отключение ненужного. FTrace дает возможность вгружать свои модуля и перехватывать те же системные вызовы. Возьми ядро от Астры и посмотри, что там повыключали. Наше поделие, например, на Астровских hardened-ядрах не работает.

На вот, просвещайся — https://habr.com/ru/companies/otus/articles/540922/

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

Сколько в неё кала вбухано!

perl5_guy ★★★★★ (15.12.25 10:31:23 MSK)

C таким ником только про современные языки и бугуртить, ага :-)

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

FTrace дает возможность вгружать свои модуля

И при чём тут Rust на котором теперь может быть написана любая подсистема ядра?

zabbal ★★★☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.