LINUX.ORG.RU

Компания Open Source Security спонсирует разработку gccrs

 , gccrs, ,

Компания Open Source Security спонсирует разработку gccrs

2

5

12 января компания Open Source Security, известная разработкой grsecurity, объявила о спонсировании разработки фронтенда к компилятору GCC для поддержки языка программирования Rust — gccrs.

Изначально gccrs разрабатывался параллельно с оригинальным компилятором Rustc, но из-за отсутствия спецификаций к языку и частых ломающих совместимость изменений на раннем этапе разработка была временно заброшена и возобновилась только после выхода Rust 1.0.

Open Source Security мотивируют своё участие возможным появлениям кода на Rust в ядре Linux и тем, что ядро собирается чаще всего компилятором gcc. Дополнительно к этому, программы на нескольких языках сразу могут иметь уязвимости, вызванные именно этим фактом (см. Exploiting Mixed Binaries), которых бы не было в программах на чистом C или C++.

На данный момент Open Source Security спонсируют работу одного разработчика, который будет работать над gccrs в течение следующего года, с возможностью выделения средств на увеличение штата. Так же в процессе участвует британская компания Embercosm, специализирующаяся на разработке GCC и LLVM и предоставившая оформление официального трудоустройства разработчиков для данной инициативы.

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

★★★★★

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

Лучше бы форкнули librsvg без rust, а то мне приходится старую версию использовать чтобы не тащить лишний компилятор в систему

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

чтобы не тащить лишний компилятор в систему

Гентушник, что ли? Ты сам выбрал путь страданий. Страдай с достоинством!

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

Страдать из-за того что долбоящеры из гнума не осилили сишку?
ладно бы я использовал гнум, но мне из продуктов их жизнедеятельности только gtk нужен. Да и то второй, а не третий

mittorn ★★★★★
()

Поправьте меня, но у GCC промежуточное представление в виде упрощённой Сишечки, так? Т.е. так или иначе, но ЯВУ.

А растовский MIR насколько помню в этом отношении более приближен к низкоуровневому LLVM IR.

Таким образом не придётся ли им более низкоуровневые конструкции представлять в более высокоуровневых абстракциях GCC IR.

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

Браузер не продукт их жизнедеятельности. И ему как раз gtk2 и нужен
Я бы конечно выпилил уже, не сильно оно на нём завязано но других дел хватает

mittorn ★★★★★
()

из-за отсутствия спецификаций к языку и частых ломающих совместимость изменений на раннем этапе разработка была временно заброшена

Сейчас ситуация сильно улучшилась?

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

Лучше бы форкнули librsvg без rust, а то мне приходится старую версию использовать чтобы не тащить лишний компилятор в систему

Хочешь решето - используй старую версию, почему из-за одного такого Д’артаньяна, как ты остальные тоже должны использовать решето? И еще и тратить время на разработку этого решета?

Помимо этого, полноценный рабочий gccrs как раз позволит не компилять llvm в генте дополнительно к gcc (по крайней мере, в большинстве ситуаций). А нет, сейчас же mesa хочет его. Короче страдай.

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

А почему из-за такого Д'артаньяна все должны тащить ещё один рантайм в систему и компилятор если потребуется это ещё и собрать самому?
Я бы вообще svg отрубил, но наверняка значки будет нечем рисовать

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

А почему из-за такого Д’артаньяна

Какого Д’артаньяна?

все должны тащить ещё один рантайм в систему

Рантайм у раста минимальный

и компилятор

все - не должны тащить компилятор в систему

если потребуется это ещё и собрать самому?

если потребуется собирать самому, то компилятор, внезапно, нужен, да

Если вопрос был «почему librsvg переписали на расте», то ответ: потому что раст - не решето, позволяет писать безопасный код с меньшими усилиями, проще в поддержке. Большинство системных либ (и даже ядро) рано или поздно перепишут на нем, иного пути нет.

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

Отличная новость! У GCC география распространения по разным архитектурам шире, чем у LLVM, а значит к rust-у поднимется интерес. Одобрям-с!

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

llvm в mesa далеко не всем нужен. На intel вполне без него обходится, на большинстве мобильных gpu тоже. На amd пока что нужен, но они же сделали ACO. Когда ACO интегрируют с gallium тоже будет не нужен. Иногда можно просто mesa classic собрать чтобы линковалось то, что libgl юзает напрямую и всё. Реально необходим останется llvm только на i915 потому что там gpu просто не вытягивает аппаратно вертексный шейдер и тормозит без него

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

В генте для тяжелых случаев есть dev-lang/rust-bin, но некоторым нужно проецировать свои заболевания на весь остальной мир.

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

На go(вно) и D(рьмо) как-то не переписали, хоть и включили в gcc.
Почему думаешь что с rust будет как-то по другому?

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

Как-то у раста все странно. Он выкачивает свои либы с сервера и еще надо в систему такие же (новее) поставить. Его либы используются только для сборки. Вообще не понял, что за либы он там качает, вроде системные, но они же не растовские.

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

go не очень подходит для подобной системщины, потому что довольно плохо интегрируется с кодом на C. В rust, как ты видишь по замененной библиотеке, такой проблемы нет. Зато утилит на go в линаксе - как собак нерезанных.

D - просто невзлетевшее говно.

И так будет и продолжаться с растом. Оно будет заменять одну либу за другой, пока на C останется только легаси.

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

А с включением в состав GCC компилятора D чем эпопея закончилась?

Тем же, чем закончится и с Растом – полнейшим забвением, и дружной миграцией фанбоев на более хайповые на тот момент язычки.

anonymous
()

Хорошее начинание, но увы, задуманное осилено не будт и погибнет, как и в прошлый раз. Уж больно специфически организован проект раст, да и команда с зашкаливающей токсичностью никак этой идее способствовать не станет.

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

Большинство системных либ (и даже ядро) рано или поздно перепишут на нем, иного пути нет.

Смешно, потолок растовиков – переписывать в n-ый раз /bin/false и /bin/true, куда там ядру.

Здесь один калека будет 1 (один) год лениво поковыривать раст, а потом у них закончатся деньги и они, как и Mozilla, выкинут раст-разработчиков (а) на мороз. А потом выйдет «более лучший» язычок с более мощным пиаром, и все полоумные «форумные» разработчики побегут туда и дружно начнут «переписывать большинство системных либ (и даже ядро) на нем», но делать они будут это строго в постах на форуме.

goto-vlad
()
Ответ на: комментарий от crazyfrog

Давайте будем скромнее, RTL имеет всего лишь Lisp-подобный синтаксис. Всё таки sexp-ы не делают его лиспом. Он, скорее, абстрактный ассемблер. А GIMPLE - вообще древовидная модель.

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

да и команда с зашкаливающей токсичностью никак этой идее способствовать не станет.

какие у них доводы? разве реализация в еще одном компиляторе не win-win ситуация?

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

Её выпиливать надо, а не осиливать.

Пока у C такие «выпиливатели», как ты, за судьбу этого языка можно быть спокойным.

goto-vlad
()
Ответ на: комментарий от mittorn

А почему из-за такого Д’артаньяна все должны тащить ещё один рантайм в систему и компилятор если потребуется это ещё и собрать самому?

Я вот не понимаю: ты поставил Gentoo зачем? Не чтобы всё собирать?

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

Страдать из-за того что долбоящеры из гнума не осилили сишку?

Её выпиливать надо, а не осиливать.

Всё ясно. Очередной тред создан исключительно для «троллинга» смузихлёбами-нежными-бородочами нормальных людей. Потом, когда вы, хипстота доморощенная, начнёте громко скулить, прибежит ваш главарь Шарлатан006 и закроет ветку.

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

Всё ясно. Очередной тред создан исключительно для «троллинга» смузихлёбами-нежными-бородочами нормальных людей.

Да, так и есть. И ведь работает же! В который раз!

прибежит ваш главарь Шарлатан006 и закроет ветку.

Проверено: Shaman007 (17.01.21 12:53:30)

Аллоэ! Он её и одобрил!

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

… не осилили сишку?

Её выпиливать надо, а не осиливать.

Чтобы выпилить си, надо выпилить posix и вообще все, что связано с unix.

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

В GCC только высокоуровненвый IR похож на С, все что ниже является лиспом

Так в него им и придётся генерировать, иначе многие оптимизации пропустят.

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

Чтобы выпилить си, надо выпилить posix и вообще все, что связано с unix.

Posix не то чтобы актуален. По сути, все (то есть FreeBSD, остальные ОС просто неактуальны) сейчас пытаются копировать линукс. Posix – лишь описывает то, что скопировано наиболее широко, и то с запозданием лет в 10. А Unix как концепт давно сам сдох.

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

Rust

Видел тред на одной странице

А по теме – годно, возможно скоро действительно появятся in-tree модули ядра на расте.

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

доморощенная

очередной выращенный в лаборатории

Эй, мамкин рэвалюцианер, а на одну букву из всего сообщения ты сможешь ответить?

anonymous
()

Ну и хорошо, через год мб будет юзабельно, а сейчас это свистопляска со 100500 версиями языка и 1005 либами чуть ли не каждая из которых требует свою фичу от языка, а друга не поддерживает. Rustc и его cargo подохнут благополучно, будет нормальное gccrs и make с зависимостями через pkg-config от пакетного менеджера. А то сейчас этот раст как nodejs с npm что-то то что это помойка.

Open Source Security мотивируют своё участие возможным появлениям кода на Rust в ядре Linux. Только для вещей в себе пойдёт, в ином случае просто будет прослойка где unsafe на unsafe. По идее модули можно писать, но… зачем? Смысл раста в ядре околонулевой.

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

мамкин рэвалюцианер

а это откуда вообще? я только охочусь на биороботов-акселератов

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

разве реализация в еще одном компиляторе не win-win ситуация?

Совершенно верно. Win-win. Никто и не сомневается.

какие у них доводы?

А вот тут печаль. Почитайте их багтрэкер и профильные форумы. Никаких логичных доводов у ядовитых и неуверенных в себе людей нету и быть не может. Сплошная истерика.

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