URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 10488
[ Назад ]

Исходное сообщение
"ассемблерные вставки в код Линукса 'это другое'?"

Отправлено Анонимище , 20-Фев-25 12:00 
Слышал жалобы на то, что якобы введение Раста в ядро Линукса нарушит идиллию, так как сейчас весь код на Си, а теперь будет смесь двух языков.

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


Содержание

Сообщения в этом обсуждении
"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено Tron is Whistling , 20-Фев-25 21:58 
Для начала есть предложение разобраться, для чего нужны эти вставки.
Потом подумать.

"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено Анонимище , 21-Фев-25 05:15 
> Для начала есть предложение разобраться, для чего нужны эти вставки.
> Потом подумать.

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


"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено Tron is Whistling , 21-Фев-25 09:50 
Большая разница. Эти вставки используются только там, где иначе нельзя. В основном или жёсткие оптимизации, или просто платформозависимый код.

"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено Анонимище , 21-Фев-25 10:53 
> Большая разница. Эти вставки используются только там, где иначе нельзя. В основном
> или жёсткие оптимизации, или просто платформозависимый код.

А это без разницы. Значит инфрастуктура, опыт и т.п. для смешивания Си с другими языками в ядре уже есть. Поэтому я не вижу причин почему надо бояться что ядро пойдет по швам от такого "неслыханного" шага. У разработчиков оказывается не лапки и они как-то умудряются не сойти с ума с зоопарком ассемблеров. А это наверняка хардкор покруче чем обуздать Растовый код в ядре


"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено 1 , 21-Фев-25 12:58 
Суть проблем с сопровождением в том, что Rust-обвязки ставят сопровождающих в зависимость от кода на языке Rust. На первый взгляд кажется, что обвязки лишь надстройки над Си-структурами и функциями, которые никак не влияют на разработку и сопровождение кода на Си. Но это не так. При наличии подобных обвязок разработчики подсистем, написанных на Си, должны учитывать влияние их изменений на продолжение работоспособности обвязок. Любое изменение структур данных или внутренних функций на Си может привести к необходимости изменения кода обвязок, поэтому влияющие на обвязки изменения в Си коде нужно отслеживать и синхронизировать с кодом на Rust. Многие сопровождающие не готовы брать на себя дополнительную ответственность за исправление проблем, возникающих в коде на Rust, и не намерены тратить своё время на отслеживание состояния Rust-обвязок.

https://www.opennet.dev/opennews/art.shtml?num=62685


"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено Tron is Whistling , 21-Фев-25 15:44 
Пойми разницу между _любимкой_ и _необходимостью_.

"ассемблерные вставки в код Линукса 'это другое'?"
Отправлено _ , 21-Фев-25 21:04 
> То есть, зоопарк ассемблеров это не проблема, а еще один язык, причем
> высокоуровневый (по сравнению с ассемблером) почему-то приведет к проблемам.

Именно так, и это любому кто реально таким вот занимался - понятно без слов :)
А с Rust проблем даже больше чем если бы решили к примеру C++ втянуть (упаси нас) ...
Тоже разжёвывать почему? :)

PS: Да не волнуйтесь вы так карапузики! Засунут раст в ведро, засунут несмотря на кровищщу и вот это вот всё ... кто девушку танцует - уже порешил ...