The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Предложение по обсуждению вопроса добавления в ядро Linux средств для разработки на языке Rust

10.07.2020 12:47

Ник Десанье (Nick Desaulniers), занимающийся в Google обеспечением поддержки сборки ядра Linux с использованием компилятора Clang и также помогающий исправлять ошибки в компиляторе Rust, предложил провести на конференции Linux Plumbers Conference 2020 сессию для обсуждения предоставления возможности разработки компонентов ядра на языке Rust. Ник занимается проведением микро-конференции, посвящённой LLVM, и считает, что было бы неплохо обсудить технические аспекты возможной интеграции поддержки Rust в ядро (им уже подготовлен рабочий прототип для KBuild) и понять нужно ли вообще добавлять такую поддержку и какие ограничения по использованию Rust следует принять.

Напомним, что в недавней дискуссии на конференции "Open Source Summit and Embedded Linux" Линус Торвальдс не исключил появление привязок для разработки неосновных подсистем ядра (например, драйверов) на таких языках как Rust. Возможность разработки драйверов на языке Rust позволила бы с минимальными усилиями создавать безопасные и более качественные драйверы, избавленные от таких проблем, как обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера. Уже существует несколько сторонних проектов по реализации такой возможности:

  • Разработчики из компании "Fish in a Barrel" подготовили инструментарий для написания загружаемых модулей для ядра Linux на языке Rust, используя для повышения защиты набор абстрактных прослоек над интерфейсами и структурами ядра. Прослойки автоматически генерируются на базе имеющихся заголовочных файлов ядра при помощи утилиты bindgen. Для сборки прослоек используется Clang. Собираемые модули помимо прослоек используют пакет staticlib.
  • Исследователи из Китайского университета в Гонконге развивают проект для разработки на Rust драйверов для встраиваемых систем и устройств интернета вещей, который также использует bindgen для генерации прослоек на основе заголовочных файлов ядра. Фреймворк позволяет добиться повышения безопасности драйверов без внесения изменений в ядро - вместо создания в ядре дополнительных уровней изоляции для драйверов, предлагается блокировать проблемы на этапе компиляции, применяя более безопасный язык Rust. Предполагается, что подобный подход может оказаться востребован производителями оборудования, разрабатывающими проприетарные драйверы на скорую руку без проведения должного аудита.
  • Разработчики фреймворка C2Rust для трансляции Си-кода на Rust, проводят эксперименты по преобразованию модулей ядра с минимальными ручными правками. Из проблем отмечается применение во многих частях ядра кода, в котором используются расширения GCC, пока не поддерживаемые в C2Rust. Для решения данной проблемы в C2Rust планируется добавить поддержку GCC атрибутов inline, cold, alias, used и section, а также расширить возможности inline-ассемблера и решить проблемы со структурами, которые одновременно выровнены и упакованы (например, xregs_state). Из существенных проблем, требующих ручной работы, отмечается невозможность транслировать нетривиальные Си-макросы в макросы Rust и необходимость переопределения типов, так как C2Rust транслирует Си-типы в определения в пакете libc, но этот пакет нельзя использовать в модулях ядра.

Дополнение: Идею поддержал Грег Кроа-Хартман (Greg Kroah-Hartman), отвечающий за поддержку стабильной ветки ядра Linux, а также являющимся мэинтейнером ряда подсистем ядра Linux (USB, driver core) и основателем инициативы по разработке драйверов для Linux (Linux driver project). Высказался в комментариях и Линус Торвальдс.

  1. Главная ссылка к новости (https://lkml.org/lkml/2020/7/9...)
  2. OpenNews: Линус Торвальдс о проблемах с поиском мэйнтейнеров, Rust и рабочих процессах
  3. OpenNews: Для ядра Linux развивается система распределённого выполнения потоков Popcorn
  4. OpenNews: Фреймворк для написания защищённых драйверов для ядра Linux на языке Rust
  5. OpenNews: Анонсирован проект LLVMLinux, нацеленный на обеспечение сборки ядра Linux при помощи Clang
  6. OpenNews: Экспериментальная поддержка пересборки ядра Linux в Clang с механизмом защиты CFI
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53331-linux
Ключевые слова: linux, kernel, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (299) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Самый Лучший Гусь (?), 12:51, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –24 +/
    Тогда я перехожу на OpenBSD, так и знайте.
     
     
  • 2.3, Аноним (3), 12:52, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +68 +/
    Так и запишем - "гуся вычеркиваем"
     
     
  • 3.99, Аноним (99), 16:41, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +13 +/
    Корпы потирая ручки: "Вот так мы и избавились от Гуся, наш план сработал. Без Гуся мы легко зОхватим все ядро"  
     
  • 2.7, Аноним (7), 13:04, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Honk honk
     
  • 2.13, m.makhno (ok), 13:10, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    пока-пока
     
  • 2.15, Аноним (15), 13:15, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    скатертью дорога
     
  • 2.101, Анонимус111ЧЧЧ (?), 16:57, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Протрите хлоркой после него
     
  • 2.139, Аноним (139), 21:21, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Раст объективно хороший язык, какие проблемы?
     
     
  • 3.180, Аноним (180), 01:30, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    ...проприетарные драйверы на скорую руку без проведения должного аудита... - вот тебе и будут проблемы
     
     
  • 4.197, коржик (?), 06:37, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > проприетарные драйверы на скорую руку без проведения должного аудита.

    можно и на си писать.

     
     
  • 5.258, microsoft (?), 22:08, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А ты глцпенький... можно, но не будут, будет расто жырно уг код. Удачи вам там на лялексах, пойду пробсдется.
     
     
  • 6.270, коржик (?), 12:01, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А ты глцпенький... можно, но не будут, будет расто жырно уг код.
    > Удачи вам там на лялексах, пойду пробсдется.

    Почему вы пишете как умственно отсталый?

     
  • 3.189, Аноним (189), 03:50, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Раст объективно хороший язык, какие проблемы?

    1. Часто меняется.
    2. Контролируется по сути 1 корпой - мазилой.
    3. Навороченные конструкции, гарантии применительно к которым вилами по воде писаны.
    4. Вебмакаки в ядре не рулят.

     
     
  • 4.218, marios (ok), 11:36, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    1. Про аспекты языка и std::, которые могут измениться, это известно заранее.
    2. К Java не имеешь претензий?
    3. Конструкции лаконичные и гарантии строгие.
    4. Лол.
     
     
  • 5.225, Аноним (225), 13:04, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –7 +/
    java такой же убогий язык. Все нормальные люди пишут на C#
    Вот если бы C# предложили в ядро включить.
     
     
  • 6.238, виндотролль (ok), 18:05, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так разве ещё не в ядре, nt4.0 которое?
     
  • 6.300, max (??), 10:59, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Все нормальные люди пишут на Kotlin, Scala или Java (выбирай по вкусу).
     
  • 3.224, Аноним (225), 13:02, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    1) он небезопастный. В нем unsafe блоки отличии от Си
    2) у него ужастный синтаксис
    3) на нем невозможно написать ничего сложнее hello world
    4) на нем пишут отвратительный, нечитаемый, кривой код
    5) он никому не нужен
     
     
  • 4.241, Gogi (??), 19:27, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    +1.

    Кроме того, все эти ужимки с "владением объектом" - полная чушь и околесица. Никто так писать не будет, а "изучать глубоко" - тем более.
    И это не говоря о том, что там напрочь отсутствует ООП. Без объектов писать большие сложные системы - медленное самоубийство под тонной собственной вермишели.

     
     
  • 5.257, fatlortroll (?), 21:27, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Без объектов писать большие сложные системы

    И как же линуксовое ядро на pure C нашкодили-то?

     
  • 5.295, Аноним (295), 05:24, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сам я не фанат этих ваших растов, но вы явно перегибаете Его поэтому и разреш... большой текст свёрнут, показать
     
     
  • 6.297, n00by (ok), 08:29, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Сам я не фанат этих ваших растов, но вы явно перегибаете...
    >> там напрочь отсутствует ООП
    > Его поэтому и разрешают. ООП и системное программирование не встречается даже на
    > венде.

    Угу. Именно потому "в венде" имеются объекты ядра https://docs.microsoft.com/en-us/windows/win32/sysinfo/kernel-objects
    и семейство ядрёных функций с префиксом Ob* (например, nt!ObCreateObjectType).

     
     
  • 7.303, Аноним (303), 22:56, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    То что это оффтопик, еще не значит, что нужно распространять ложную информацию ... большой текст свёрнут, показать
     
     
  • 8.304, n00by (ok), 10:06, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Об этом говорят IRP, которыми объекты обмениваются Но про эти сообщения говорит... большой текст свёрнут, показать
     
     
  • 9.305, Аноним (303), 13:14, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    _ KMDF - это фреимворк для написания драйверов уровня ядра в линуксе почти в... большой текст свёрнут, показать
     
     
  • 10.308, n00by (ok), 17:34, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Можно писать на плюсах Как раз во времена KMDF и началось продвижение ограничен... большой текст свёрнут, показать
     
  • 4.271, коржик (?), 12:04, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > 2) у него ужастный синтаксис

    В чем ужас?

     
  • 3.240, Gogi (??), 19:25, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Он "хороший" только для хипстоты и смузихлёбов. Как таковой, это просто "ещё один" язык для неокрепших умов. Писать на этом г****вне всё равно никто не будет, один только хайп подымают.
     
  • 3.259, Аноним (259), 22:22, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А зоопарк из кучи языков - это разве не проблема?
     
  • 2.144, Аноним (144), 21:30, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Что-то я как опёнковод со стажем этому совсем не рад.
     
     
  • 3.167, Дегенератор (ok), 22:18, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Представляешь, я тоже... Кто-бы мог подумать... Не застрелись там! )))
     
  • 3.261, Аноним (-), 00:36, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    та да - во фрю, бывало, дрова из lo0nix'а тащили (некоторые копрорации в поднебесной ведь только для оного и пишут, и то за счастье!), а дрово-растию уже не потащить...
     
  • 2.178, th3m3 (ok), 00:50, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Чтобы писать недостающие драйвера на Rust? :)
     
     
  • 3.181, Аноним (180), 01:35, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    вот прям раньше никак нельзя было писать эти недостающие дрова? Только достающие?
     

     ....большая нить свёрнута, показать (33)

  • 1.4, Z (??), 12:55, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Это неизбежный процесс, слишком много преимушеств даёт Rust
     
     
  • 2.25, Аноним (25), 13:24, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +20 +/
    Главное преимущество Rust заключается в том, что на нём сложно написать код с ошибками, поскольку на нём в принципе почти невозможно написать полезный код. Что мы и наблюдаем на примере Redox, Servo и подобных проектов.
     
     
  • 3.39, Аноним (3), 13:37, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    но все же бывают и исключения в виде ripgrep, bat, fd. они просто еще мало настоялись
     
     
  • 4.60, Аноним (60), 13:59, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    ripgrep, bat, fd я не против этих "из коробки"
     
  • 4.223, анон (?), 12:56, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    ag вылизано чуше ripgrep


     
  • 3.98, rioko (?), 16:25, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    здесь проблема не в расте как таковом а в сложности упоминаемых проектов
    первый - ОС
    второй - браузерный движок
    у мозилы точно нет денег чтобы потянуть это и раст тут ни при чем.
     
     
  • 4.107, анонн (ok), 17:18, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > здесь проблема не в расте как таковом а в сложности упоминаемых проектов

    Здесь скорее проблема в очередном анонимно-диванном анализе вида "возьмем пару подходящих под выводы фактов и озвучим эти выводы с умным видом". Потому что о ржавом CSS движке, которые уже почти 3 года в лисе или том же WebRender или туевой куче ОС уровнем куда хуже RedOx, причем на всевозможных языках https://wiki.osdev.org/Projects - анонимы очень скромно умалчивают.
    И с умным видом делают выводы уровня "ветер дует потому что деревья качаются - это же всем очевидно!".

     
  • 4.242, Gogi (??), 19:29, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Почему Си-Сипипям это не мешает??
     
  • 3.104, proninyaroslav (ok), 17:15, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >почти невозможно написать полезный код

    Разве чтобы написать полезный или бесполезный код нужен специальный язык)?

     
     
  • 4.131, хрум (?), 20:13, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    для того что бы писать полезный код уже был С
    поэтому придумали руст что бы писать исключительно бесполезный код
     
     
  • 5.134, анончик (?), 20:38, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Си приктически идеялен, он совмещает в себе быстродействие ассемблера с удобством асемблера.
     
  • 5.136, proninyaroslav (ok), 20:47, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > для того что бы писать полезный код уже был С

    А до си уже был ассемблер. Тогда зачем этот бесполезный си? Ну а потом c++ появился, ещё более бесполезный, так как си уже был)

     
     
  • 6.190, Аноним (190), 03:54, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > А до си уже был ассемблер.

    У него был довольно неариятный недостаток, который совершенно случайно заметили разработчики колибри-ОС'а. Решили они как-то перейти с x86 на x86-64 - а тут оказывается вообще все переписывать надо. Представляете себе какое западло? И родили они с горя C--, чтоли, или как там его :). Чота разлюбив ассемблер...

    (а знаете, прикольно когда драйвер какой-нибудь usb-клавы без изменений взлетает даже на вон том mips'овом роутере, если ему в usb клаву зачем-то подцепить охото)

     
     
  • 7.202, Аноним (202), 09:00, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    C-- был ещё в начале 90х.
     
     
  • 8.232, Аноним (-), 14:06, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это 294й из параллельно-альтернативной вселенной У него там все было по другому... текст свёрнут, показать
     
  • 3.140, Аноним (139), 21:22, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Что за чушь?
     

  • 1.5, A.Stahl (ok), 12:59, 10/07/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.6, lockywolf (ok), 13:02, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –11 +/
    Отлично по-моему.

    Наконец-то первая операционная система, поддерживающая многоязычное расширение.

    Кроме Rust неплохо бы ещё C++, GNAT, GFortran, Go и scheme

     
     
  • 2.8, danonimous (?), 13:05, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Я бы ещё dart предложил добавить. Canonical поможет.
     
     
  • 3.14, Аноним (14), 13:14, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +15 +/
    Про Electron забыли.
     
  • 2.19, vitalif (ok), 13:17, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Джаббу тогда уже сразу
     
     
  • 3.21, lockywolf (ok), 13:19, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Джаббу тогда уже сразу

    Gcj подзаброшен.

     
     
  • 4.191, Аноним (190), 03:54, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Gcj подзаброшен.

    И даже вроде уже подвыброшен, не?

     
     
  • 5.306, Аноним (14), 13:38, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не просто подвыброшен, а выброшен.
     
  • 3.23, Аноним (14), 13:21, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так и Питончик тоже.
     
  • 2.31, Аноним (31), 13:31, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Почему Pascal забыли?
     
     
  • 3.48, Аноним (14), 13:44, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Выдаёт недостаточно объёмный размер бинарников.
     
  • 2.32, Аноним (-), 13:33, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    WASM в ядре пргодлась бы кроме всяких шутоок.
     
     
  • 3.37, Аноним (7), 13:36, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Подобный проект был на гитхвбе, но автор его удалил. Модуль ядра исполняющий wasm.
     
     
  • 4.45, Аноним (-), 13:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Отсюда удалил? https://github.com/wasmerio/kernel-wasm
     
  • 3.47, Аноним (14), 13:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это чтобы ядро в браузере исполнять?
     
     
  • 4.68, б.б. (?), 14:17, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >  Это чтобы ядро в браузере исполнять?

    и это в netbsd уже было лет 10 назад, если не больше

     
     
  • 5.70, Аноним (70), 14:20, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сравнил самолёт с велосипедом.
     
  • 3.138, Lex (??), 21:06, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Чем ?
    По сути своей, это тот же JS, который исполняется на базе движка JS, только супер-минифицированный( собсно, в «рекламных буклетах» так и говорят: «ускорение парсинга в сравнении с обычным JS». Про скорость выполнения обычно помалкивают, а то и умалчивают о существующих ограничениях )
     
     
  • 4.169, Весельчак У (?), 22:38, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это ни разу не js. Это универсальный переносимый формат исполняемых файлов. Выполняется в виртуальной машине. Виртуальная машина решает куда дать доступ и как. Он свободный. Медленный потому что не настоялся.
     
     
  • 5.196, Lex (??), 06:07, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Он исполняется на базе JS-движка, поскольку ключевое применение wasm - это веб и... большой текст свёрнут, показать
     
     
  • 6.209, funny.falcon (?), 10:27, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    WASM - ни разу ни про JS. Это реально низкоуровневый байткод. Там нет "объектов, прототипов, массивов, уникодных строк, GC". Все, что там есть, это байтики и команды манипуляции байтиками. И это немного приправлено безопасностью.

    Ок, еще проковыряна дырка в js мир. Но она опциональна.

    Многие проекты задумываются о поддержке плагинов на WASM. В основном такие, которым нужна скорость в обработке бинарных данных: сетевых протоколов, музыки, графики.

     
     
  • 7.227, Lex (??), 13:06, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну я и говорю - супер-минифицированный JS с нюансами( нельзя напрямую работать с DOM-деревом итп - только через прослойку из «классического» JS + допданные для интерпретатора, которые могут помочь оптимизировать ему потребление ресурсов )

    Если говорить о чем-то условно-универсальном и низкоуровневом, то почему это касается чего угодно, кроме того же LLVM с его байткодом, хотя много где даже сборка ПО так или иначе его реально касается ?

    Там не совсем про скорость обработки - там, скорее, про возможность изначально писать код на любом из языков, которые могут приводиться к wasm( насколько помню, это как минимум чуть ли все, которые норм приводятся к llvm ir ), а не только на пихоне.

     
  • 3.164, Онаним (?), 21:55, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > WASM в ядре пргодлась бы кроме всяких шутоок.

    Не надо. С BPF-то грабли на граблях, а уж WASM в kernel mode - это вообще только для камикадзе.

     
  • 2.67, б.б. (?), 14:16, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Наконец-то первая операционная система, поддерживающая многоязычное расширение.

    у netbsd lua в ядре уже много-много лет

     
  • 2.83, муу (?), 14:53, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    visual basic - индусы мелкомягка с радостью помогут
     
  • 2.88, Xasd5 (?), 15:20, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Наконец-то первая операционная система, поддерживающая...

    тут в новость про ядро

     
  • 2.95, anonymous (??), 16:10, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Че мелочишься, давай сразу 1С диалект вкорячь. Интеллект программистов ядра Linux сразу деграднет на порядок.

     

  • 1.9, Аноним (9), 13:06, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Никто не вечен. Даже C.
     
     
  • 2.17, Аноним (17), 13:16, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего не может работать дольше цикла for(;;) на C
     
     
  • 3.52, Russter (?), 13:47, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Taimer dumaet inache
     
  • 3.94, Аноним (94), 15:57, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Забавно, что даже в этом коменте о Си закралось UB
     
     
  • 4.226, Аноним (225), 13:05, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Почему?
     
     
  • 5.278, Аноним (278), 16:09, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Тело цикла не указано и не указано, что оно пустое. Может там следующей командой return 0; написано.
     
  • 3.239, Аноним (239), 19:00, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А вот в Golang как-то циклы подобные оптимизируют и они там за долю секунды выполняются, а потом спать уходят =)
     

  • 1.10, А10 (?), 13:06, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +14 +/
    Интересно как будут ментейнить ОС на разных языках?
    Мне кажется, что разработка ядра не упростится, а в разы усложнится.
     
     
  • 2.27, m.makhno (ok), 13:25, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    ну ОС в принципе вещь непростая, многокомпонентная - главное, что бы бинарно она работала как надо
     
     
  • 3.33, Аноним (14), 13:33, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +8 +/
    ОС - да, многоязычие оправдано. А тут ядро.
     
  • 3.244, Gogi (??), 19:36, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Причём тут "бинарно работала"? Сам-то понял, чё ляпнул?

    Речь идёт о том, что любой, кто попытается управлять разработкой ядра, сразу же получает граблями в виде "многоязычия". Ты сам-то много языков знаешь? Именно "знаешь" и понимаешь на 100%, а не как большинство лабухов - "писал однажды хелловорлд".

     
     
  • 4.256, m.makhno (ok), 20:57, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    нет, немного; да, понял - ведь всё так или иначе сводится к машинному коду, верно? средство его создания может быть любым, главное - результат...
     
  • 2.29, Аноним (17), 13:29, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Почему? Языки ведь не смешиваются в одном контексте.
    Одна система на одном языке предоставляет своего рода дополнение API для удобства разработки других систем на других языках.

    Никого же не волнует на чём именно написаны проприетарные драйвера.
    Да пусть хоть на питоне ("влинковав" туда всё начиная с libc) пишут если вызовы API, требования к зависимостям, ограничениям на используемые ресурсы и т.д не нарушаются.

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

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

     
     
  • 3.35, m.makhno (ok), 13:35, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    меняющийся в угоду чему-либо системный API есть моветон; и как мне кажется, Вы путаете API и ABI
     
  • 3.40, Аноним (14), 13:37, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >Никого же не волнует на чём именно написаны проприетарные драйвера.

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

     
     
  • 4.296, Аноним (295), 05:44, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вы совершили очень много ошибок во фразе Людей, поехавших на столмановских идея... большой текст свёрнут, показать
     
     
  • 5.315, Аноним (315), 23:10, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Смартфончиками не пользуюсь принципиально. Поэтому и перепршивать нечего.

    И что с того, что мы вынуждены использовать процессоры с аппаратными уязвимостями? Это отнюдь не оправдывает наплевательское отношение к софту. При любой возможности количество уязвимостей нужно МИНИМИЗИРОВАТЬ.

    Нет у меня в компе модема. И смартфона нет.

     
  • 2.243, Олег (??), 19:34, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Интересно как будут ментейнить ОС на разных языках?

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

    Вообще паразительное по своей глупости решение.

     

  • 1.11, Fracta1L (ok), 13:10, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Это круто, что ядро не держится за прошлое и продолжает эволюционировать
     
     
  • 2.28, Аноним (14), 13:27, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Раз пошла такая пьянка, то пусть лучше Л. Торваальдс запилит свой специализированный kernel-lang для ядра. В прошлый раз, с системой управлениями версиями, у него круто вышло. Взлетело и далеко за пределами ядра.
     
     
  • 3.41, Аноним ВВП (?), 13:39, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Тогда ему нужен еще один срок молодости с обнулением.
     
     
  • 4.51, Аноним (14), 13:46, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну Git он после 30-ти запилил, поэтому справится.
     
  • 4.80, Аноним (80), 14:47, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Готов отдать свою.
    Она все равно у меня в пустую потратится
     
  • 3.105, proninyaroslav (ok), 17:16, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ему и си хватает.
     
     
  • 4.314, Аноним (315), 22:49, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ему-то хватает. Но его окружают инклюзивные. И их всё больше и больше. Отбиваться становится всё сложнее. Поэтому, если возможность, то лучше возглавить, взять инициативу в свои руки.44
     
     
  • 5.316, proninyaroslav (ok), 23:10, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И как это спасёт от запрета принятия других языков в ядро? Он и в текущей ситуации мог бы сказать "только си и ничего другого", но ведь не сказал.
     
     
  • 6.317, Аноним (315), 23:38, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Если сам придумает kernel-язык со всякими @safe и прочими шахматами, окружающие могут хайпануть на новинку. Нынешние модномолодёжные языки могут отодвинуться на второй план.
     
  • 3.176, OpenEcho (?), 00:33, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Он совсем недавно говорил что вообще больше не програмирует, переписка, консультация, короче бюрократия засосала
     
  • 2.236, Аноним (236), 16:36, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это очень плохо что вместо замечательного, безопасного и удобного Си, будет дырявый, тормозной и убогий rust
    Rust нужно запретить
     
     
  • 3.246, Gogi (??), 19:40, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну он не то, чтобы "убогий", но без ООП это г***вно не нужно вообще. И работа с объектами сложная - все эти "передачи владения". Никто этим заниматься не будет, а значит будут бесконечно наступать на грабли.
     

  • 1.12, Аноним (12), 13:10, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    А между тем чтобы собрать сам компилятор Rust стабильной версии, нужен бинарник предыдущего компилятора, возможно даже из бета-ветки. То есть чтобы собрать Rust без скачивания бинарников от Mozilla, надо... Какая там версия? Скомпилировать 43+ компилятора для Rust предыдущих версий, и проблема только разрастается со временем.
     
     
  • 2.18, Аноним (15), 13:16, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    кто тебе такую чушь сказал?
     
     
  • 3.57, Аноним (12), 13:53, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Я с ней столкнулся, когда собирал, по документации: https://rustc-dev-guide.rust-lang.org/building/how-to-build-and-run.html#boots
     
  • 2.22, lockywolf (ok), 13:21, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > А между тем чтобы собрать сам компилятор Rust стабильной версии, нужен бинарник
    > предыдущего компилятора, возможно даже из бета-ветки. То есть чтобы собрать Rust
    > без скачивания бинарников от Mozilla, надо... Какая там версия? Скомпилировать 43+
    > компилятора для Rust предыдущих версий, и проблема только разрастается со временем.

    Ну так gcc тоже собирается с помощью gcc.

     
     
  • 3.54, Аноним (12), 13:49, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Да, там эта проблема тоже есть, но не в таких масштабах, не 5-8 компиляторов в цепочке максимум для сборки последнего GCC
     
  • 3.89, Аноним (89), 15:27, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    gcc можно собрать используя clang.
    Сколько сторонних компиляторов есть для Rust?
     
  • 2.120, Аноним (120), 19:41, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Эта проблема есть у любого языка, компилятор которого пишется на нем самом. Даже у typescript она есть, а уж с Rust-то компилятор на C выглядел бы совсем глупо :-)
     
  • 2.127, Аноним (127), 19:50, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зацени на досуге от куда берется компилятор gcc в LFS.
     
     
  • 3.132, Какаянахренразница (ok), 20:29, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    С хостовой системы. Но он там собирается 3 раза, вроде:
    - host-gcc собирает target-gcc из сорцов
    - target-gcc, собранный при помощи host-gcc, собирает target-gcc
    - target-gcc, собранный при помощи target-gcc, собирает target-gcc
     
  • 2.198, Аноним (198), 06:48, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    да, в LFS оно берется из хост-системы А вот Guix, например, работает над уменьш... большой текст свёрнут, показать
     
  • 2.228, Аноним (225), 13:09, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    чтобы собрать компилятор rust нужен компилятор! Это фатальный недостаток языка!
     
  • 2.260, Ordu (ok), 23:44, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, не 43 Я не скажу в точности сколько, последний раз я наблюдал активность п... большой текст свёрнут, показать
     

  • 1.16, Аноним (25), 13:15, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +15 +/
    Фанатизм. С++ в ядре им не нравится, хотя в виндовом ядре он неплохо себя чувствует в некоторых подсистемах, а инородный Rust, который не поддерживает и половины аппаратных платформ Linux, им непременно там зачем-то нужен.
     
     
  • 2.46, Аноним (46), 13:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А в этом, "С++ в виндовом ядре" - есть RAII? а исключения есть?
     
     
  • 3.61, n00by (ok), 13:59, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > А в этом, "С++ в виндовом ядре" - есть RAII?

    RAII не требует поддержки времени выполнения, так что не понятно, о чём вопрос. Есть. Микрософт в своём коде (примерах) раньше не использовали.

    > а исключения есть?

    Если понимать, что такое arbitrary thread context и IRQL, то местами возможно использовать.

     
  • 3.71, Аноним (70), 14:22, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Конечно есть RAII. И есть шаблоны. Нет исключений и фишек, обечпечиваемых рантаймом.
     
     
  • 4.73, Аноним (70), 14:30, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Точнее даже исключения ограниченно присутствуют, как заметили выше.
     
  • 3.307, Аноним (303), 15:52, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я вам больше скажу, что этот аноним, что n00by врут и не краснеют Он в другой ч... большой текст свёрнут, показать
     
  • 2.53, Аноним (53), 13:47, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Си плюс-плюс вреден в ситемщине. Пусть Майкрософт пилит своё ядро на чём ему вздумается. На божественные Юниксы Си плюс-плюс не пускать!
     
     
  • 3.56, Аноним (14), 13:52, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну таки здесь, вроде как, Linux не принято считать UNIX-ом?
     
  • 3.72, Аноним (70), 14:25, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В ядре макоси C++ давно есть, а это самый натуралный юникс. Так что мимо.
     
     
  • 4.130, Аноним (120), 20:01, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В XNU подмножество C++ (Embedded C++) и специальные компиляторы с оптимизациями именно под ембедовку. Если изначально так ядро проектировать - это одно, а прикрутить нечто подобное к Linux kernel - задача если и решаемая, то трудозатраты будут огромными.
     
     
  • 5.192, Аноним (192), 04:10, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > В XNU подмножество C++ (Embedded C++) и специальные компиляторы с оптимизациями именно
    > под ембедовку.

    Только чего-то именно в эмбедовке этой XNU и нету как раз.

     
     
  • 6.193, Аноним (193), 05:15, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А apple watch - это не ембедовка что ли?
     
  • 6.266, anonimous (?), 01:27, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Осей для микроконтроллеров на с++ написано много уже давно. Работают.

     
  • 5.234, Аноним (234), 15:30, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, специальный clang с секретными оптимизациями, а до этого был особый аненербе-гцц.

    >Если изначально так ядро проектировать

    Изначально это антикварный MACH на С, тот же самый что и в хурде, к которому прикрутили подсистему для драйверов на плюсах.

     
  • 2.62, n00by (ok), 14:06, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Фанатизм. С++ в ядре им не нравится, хотя в виндовом ядре он
    > неплохо себя чувствует в некоторых подсистемах, а инородный Rust, который не
    > поддерживает и половины аппаратных платформ Linux, им непременно там зачем-то нужен.

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

     
  • 2.64, Sauron (??), 14:07, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так пусть пишут дайверы там где llvm работает.
     
  • 2.75, Аноним (75), 14:33, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Rust использует LLVM как бэкэнд, а LLVM поддерживает все основные платформы, на которых актуально текущее ядро Linux.
     
     
  • 3.86, Xasd5 (?), 15:09, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    наверно не хватает ещё одной надписи, ато без неё будет разрыв в построении логической цепочки:

    "Rust поддерживает все те же платформы которые поддерживает его бэкэнд" (я этого НЕ знаю -- просто написал что этой фразы не хватет)

     
     
  • 4.90, qetuo (?), 15:44, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >я этого НЕ знаю -- просто написал что этой фразы не хватет

    Не волнуйтесь, здесь ни вы ничего не знаете, ни добрых три четверти остальных комментаторов. И ничего, нормально живут.

     
     
  • 5.188, Аноним (188), 03:22, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Во многой мудрости много печали; и кто умножает познания, умножает скорбь
     
  • 2.123, Аноним (120), 19:44, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    C++ без libstdc++ штука не особенно осмысленная, а какая может быть стандартная библиотека в ядре?

    Ну, да, классы - но и всё. "Си с классами" можно писать и на С, со структурами и указателями на функции - примерно то же самое получится (см. модули nginx как пример).

    А Rust именно как язык, безо всяких библиотек, дает преимущества.

     
     
  • 3.171, Аноним (171), 23:14, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Стандартная библиотека в ядре - не большая проблема: есть стандартные библиотеки C++ для микроконтроллеров.
     
     
  • 4.194, Аноним (193), 05:16, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В ядре, которое изначально пишется с использованием этой библиотеки - конечно, не проблема.
    А в линуксе... ну только если свою хедерную обертку вокруг уже имеющейся инфраструктуры написать
     

  • 1.20, Аноним (14), 13:18, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Пока фронтенд для Rust не добавят в GCC, рано говорить об его применении в разработке ядра.
     
     
  • 2.44, Аноним ВВП (?), 13:40, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Такой проект уже есть для gcc. Мимо.
     
     
  • 3.55, Аноним (14), 13:50, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да слышал. Вот только вяло он шевелится, даже попыток принятия-включения не видно.
     
  • 2.106, proninyaroslav (ok), 17:17, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Думаю тянуть гигантский статический анализатор в gcc никто не будет. Если только анализатор не будет выделен в отдельный компонент, такая работа уже идёт вроде.
     
     
  • 3.182, Аноним (180), 01:51, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    в здравом уме конечно никто не будет ... но не у всех ум здравый.
     
  • 2.124, Аноним (120), 19:45, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У gcc ворох архитектурных проблем с монолитностью, накопившихся за долгое время жизни проекта. Их понемногу решают, но это долгий путь.
     

  • 1.24, Аноним (24), 13:21, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Меня заставят учить раст чтобы собирать модули? Мои глаза не выдержат такого синтаксиса.
     
     
  • 2.125, Аноним (120), 19:46, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    _Собрать_ модуль можно не зная ни Раста, ни Си, ни даже Бейсика, в чем проблема?
     
     
  • 3.215, анон (?), 10:44, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    В том, что он соберется не так, как мне нужно.
     
  • 2.133, Fracta1L (ok), 20:36, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Это ещё и плюсуют лол
     
  • 2.142, Аноним (139), 21:27, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Что не так с синтаксисом?
    После C как глоток свежего воздуха на берегу океана, проще и понятнее, нет остатков многовековой совместимости
     
     
  • 3.183, Аноним (180), 01:55, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    иди и пиши свою ось, захер лезть в чужую и ломать её?
     
     
  • 4.231, Аноним (-), 13:57, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > иди и пиши свою ось, захер лезть в чужую и ломать её?

    Месье Торвальдс собственной персоной? Или очередной аноним, ничихуахуа ядерного вообще не написавший, зато в крутой маечке с пингвинчиком?


     
  • 2.199, коржик (?), 06:57, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И никакой конкретики
     

  • 1.26, Анонолекс (?), 13:25, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Посмотрим что получится, а дальше будет видно. Может пора уже на GNU/HURD валить...
     
     
  • 2.30, Аноним (14), 13:30, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Для начала его нужно допиливать/перепиливать, а потом валить.
     
     
  • 3.184, Аноним (180), 01:57, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    с растом почему-то не так
     

  • 1.34, Аноним (34), 13:35, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Осталось изменить логотип Линукса на радугу, для полного счастья.
     
     
  • 2.58, Аноним (14), 13:55, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не, пингвина заменять не нужно. Вот только чёрный пингвин это неполиткорректно. Радужный пингвин - самое то!
     
     
  • 3.129, Аноним (127), 19:55, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Вот только чёрный пингвин это неполиткорректно

    Нет, это ты расист.

     
  • 3.177, Анонолекс (?), 00:39, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Черный - это не цвет, это его отсутствие... Тоже применимо и к нашей бытовухе и то фигне, что сейчас творится в мире...
     
     
  • 4.185, Аноним (180), 01:59, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    не путайте цвет и свет.
     
     
  • 5.247, Gogi (??), 19:44, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если ты проссал всю физику в школе, то объясню: это ОДНО И ТО ЖЕ.
     

  • 1.36, Аноним (36), 13:36, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Стоп а разве rust не компилируемый язык ?
    (еще раз перечитал заголовок ... ничего не понятно)
     
     
  • 2.92, lockywolf (ok), 15:52, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Стоп а разве rust не компилируемый язык ?
    > (еще раз перечитал заголовок ... ничего не понятно)

    Компилируемость тут ни при чём, имеет смысл говорить, "генерящие elf-объекты". (Интерпретируемые языки тоже могут генерить elf.)

    Но (а) нужно согласовывать линковочные символы. Для этого кое-какая работа нужна.
    И (б) вопрос ещё не только в том, чтобы писать объектники, а ещё в том, чтобы код на русте стали принимать в ядро.

     

  • 1.38, Tronis (?), 13:36, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ну да давайте весь мусор в ядро тащить...
     
     
  • 2.59, Аноним (14), 13:58, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, палец у Линуса уже не тот...
     
  • 2.143, Аноним (139), 21:28, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Мусор не надо, но действительно крутые вещи вроде Раста - стоит
     

  • 1.42, malloc (?), 13:39, 10/07/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –3 +/
     

     ....ответы скрыты (4)

  • 1.43, КО (?), 13:40, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Пускай занимается в гугл и дальше
    Зачем пихать и занимать место всяким ненужным компиляторам на ПК домохозяйки...
     
  • 1.49, Аноним (53), 13:45, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    1. Небезопасный Раст - это чистый Си с проверками на безопастность. Никто, чистый Си без дополнительных инструментов не использует.

    2. Я против, не потому-что Раст сложен. А потому-что, на какой-то стадии появится опасная возможность использования 2 компиляторов для компиляции ядра Линукса.

    3. Для компиляции ядра Линукса не используются сишные библиотеки. А если Растаманы в каких-то компонентах пожелают использовать рантайм-библиотеки?

    4. Пусть Растаманы пилят свой Redox и пусть Раст не выходит за пределы экосистем Redox и Servo.

     
     
  • 2.74, Аноним (75), 14:30, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    А то, что без perl ядро не соберется вас не пугает? Уже привыкли?
     
     
  • 3.82, Xasd5 (?), 14:51, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а разве предлагают убрать perl (в случае появления rust)?

    (или ты один из тех кто думает что указав на какую-то проблему ты замаскируешь текуще обсуждаемую проблему? как это любят вещать в зомпоящиках в авторитарных странах)

     
     
  • 4.84, анонн (ok), 14:59, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > а разве предлагают убрать perl (в случае появления rust)?
    > (или ты один из тех кто думает что указав на какую-то проблему
    > ты замаскируешь текуще обсуждаемую проблему? как это любят вещать в зомпоящиках в авторитарных странах)

    То ли дело обозвать набор дикой чуши (см. хотя бы первый пункт с "небезопасностью" и третий пункс с бурной фантазией "если бабушка была бы дедушкой") "обсуждаемой проблемой"?

     
     
  • 5.85, Xasd5 (?), 15:02, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > третий пункс с бурной фантазией "если бабушка была бы дедушкой"

    а как иначе?

    не ясно же что им в голову придёт теперь :-) ..

    им Rust разрешат и они на этой эфории понесут новые идеи

     
     
  • 6.87, Xasd5 (?), 15:15, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > ... и они на этой эфории понесут новые идеи ...

    а потом как обычно говорят такие люди -- "ой! что-то мне Open Source надаел. теперь семья/дети/работа_грузчиком -- поддерживайте сами теперь это" (после внедрения эпических костылей, реализовывающих все их сокровенные влажные фантазии!)

     
     
  • 7.118, DEV (?), 19:07, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    о каких костылях речь?
     
  • 2.76, Xasd5 (?), 14:37, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    всё верно. каждый пункт по делу
     
  • 2.102, Ordu (ok), 17:01, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Небезопасный раст если и безпаснее Си, то только потому, что там нет UB А безоп... большой текст свёрнут, показать
     
  • 2.108, proninyaroslav (ok), 17:23, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    2. а про сборку ядра clangом уже забыли)?
    3. в расте есть no_std. и пожелать использовать рантайм они не смогут при всём желании так как просто не скомпилируется
    4. действительно, зачем этот раст вообще в продакшен пускать
     

  • 1.63, Аноним (63), 14:07, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    >нужно ли вообще добавлять такую поддержку

    Ни в коем случае. Rust-программисты - это те же вебмакаки. Cargo - это тот же npm, только для rust.  Даже простая сборка hello-world ядерного модуля тянет ворох зависимостей из crates. При этом для crates нет цифровых подписей, а система сборки при сборке может исполнять произвольный код, скачанный с crates в виде пакета. Большинство раст-пакетов требуют ночную версию раст, которой нет в дистрибутивах и которую предлагается ставить с помощью curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh .

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

     
     
  • 2.78, Xasd5 (?), 14:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    скачивание какого-то говна из интернетов для очередной компиляции ядра (при этом у каждого интернет разный -- и прилететь может разное) -- совсем не радует.

    поидее бы -- нужно запретить использование Cargo -- для целей компиляции ядра.

    но с другой стороны Растоманы зачастую считают что cargo это неотъемлимая часть Rust.. и всячески активно его используют (создавая огромные каскады зависимостей, также как js-программиты со своими сраным npm).

    это наверно как говорить "вот тебе пиши на C++ , но объектами пользоваться запрещаю!"

     
  • 2.81, анонн (ok), 14:49, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Большинство раст-пакетов требуют
    > ночную версию раст, которой нет в дистрибутивах и которую предлагается ставить
    > с помощью curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh .




    % pkg search nightl                                                              
    rust-nightly-1.46.0.20200630   Language with a focus on memory safety and concurrency



    Че там у вас в WSL-like нет, никому особо не интересно.

     
  • 2.145, Аноним (139), 21:34, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А C-программисты живут словно и 80ых, и поэтому не вебмакаки, да?
    И вообще, использование современных средств - плохо!
    Нужно, как и раньше, все расчеты проводить на калькуляторе! Нет, счетах, калькуляторы слишком современны.

    Как раз один из основных минусов C/C++ - отсутствие дефолт пакетного менеджера, который есть во всех современных актуальных языках. Это не в контексте ядра, разумеется, но факт остаётся фактом.

     
     
  • 3.206, Анонолекс (?), 10:12, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Дефолтный пакетный менеджер для Си/Си++ - это пакетный менеджер дистрибутива. Испокон веков всех всё устраивало, пока не народилось поколение воинствующих обезьянок.
     
     
  • 4.219, Аноним (219), 11:49, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Как раз таки никого и не устраивало, перенести приложение, а тем более проект тот ещё гемморой из НИЧЕГО.

    А как это сейчас. Пересобирать приложение для каждого дистрибутива, ну ок, бл*ть ещё и зависимости в другом месте лежат, ну ок, в evn наверное пути есть..нихера и началось. Тратишь время на решение никому ненужной проблемы. Пакетные менеджеры языков решают все эти проблемы.

     
     
  • 5.301, Аноним (63), 12:09, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не нужно Портанутые alienом пакеты прекрасно работают на чужом дистре и на его ... большой текст свёрнут, показать
     

  • 1.66, Аноним (63), 14:12, 10/07/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.77, richman1000000 (ok), 14:40, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    зачем на RUST? Давайте сразу на Python+java...
    Если уж переплавлять ядро в ведро то сразу и основательно!
     
     
  • 2.79, Xasd5 (?), 14:46, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    причём надо не просто Java -- а также написать Генератор который исходники на C превратит в Java.

    то есть так чтобы при этом код (Java) оказался бы похож на говно, как оно и бывает после выхода всех этих Генераторов.. (а не только жрал бы дофига памяти).

     
  • 2.148, Аноним (139), 21:36, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Эм. Как можно сравнить язык по производительности на уровне C/C++ с Джавой и тем более тормознейшим Питоном?
    Что у вас вообще в головах, откуда такая чушь льется?
     
     
  • 3.186, Аноним (180), 02:11, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ты застрял где-то в вин95
     
     
  • 4.264, Аноним (-), 00:47, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    а чё, в твоей персональной вселенной уже поди писюн без GIL да java без сборщика мусора, да? ;)

    прими таблетки и удались, стильный-модный-молодёжный.

     

  • 1.93, leap42 (ok), 15:52, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Возможность разработки драйверов на языке Rust позволила бы с минимальными усилиями создавать...

    Сразу видно, писал человек написавший ровно 0 реальных проектов на Rust (я писал если что, хоть и for fun)

    > безопасные и более качественные драйверы, избавленные от таких проблем, как обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера

    лол! буквально в этом году был баг пофикшен (уж не помню во фронтенде или в llvm), из-за которого borrow checker не работал как положено. т.е. никто за ним не проверял (зачем?)) а тот не работал xD

     
     
  • 2.149, Аноним (139), 21:39, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    После некоторого порога входа, какие такие особые усилия необходимо прилагать?
    Пишешь и наслаждаешься

    А по поводу бага - суть в том, что в UB/UB++ это задокументированное стандартное поведение, а для Раста - лютый баг :)

     
     
  • 3.187, leap42 (ok), 03:08, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    это на borrow cheker и владение намек так то - миф, его какие-то обезьяны-теоре... большой текст свёрнут, показать
     
     
  • 4.235, Аноним (234), 16:08, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >для этого нужен простой, незамусоренный синтаксис, богатая стандартная библиотека

    И этого всего в Си нет, лол!

    >если бы вы писали на Си, то пользовались бы несколькими тулами для отлова граблей

    Вот с этого места пожалуйста подробнее.

     
     
  • 5.274, leap42 (ok), 13:50, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >>для этого нужен простой, незамусоренный синтаксис, богатая стандартная библиотека
    > И этого всего в Си нет, лол!
    >>если бы вы писали на Си, то пользовались бы несколькими тулами для отлова граблей
    > Вот с этого места пожалуйста подробнее.

    анализатор clang, cppcheck, asan/ubsan ну и конечно "-Wall -Wextra -Wpedantic -Wshadow -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wconversion" для компилера - это современный стандартный набор

     
  • 2.272, Anonn (?), 12:52, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >буквально в этом году был баг пофикшен (уж не помню во фронтенде или в llvm), из-за которого borrow checker не работал как положено

    А можно поподробнее? Друг интересуется

     
  • 2.288, Аноним (288), 20:18, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Всмысле не работал?:) Хрень пишете да?:)

    Он действительно некоторые ситуации допускал, а некоторые более простые ситуации запрещял. (при этом я не говорю что он не работал, он просто некоторые вещи допускал..)
    Его просто улучшили...

     

  • 1.96, Аноним (96), 16:17, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Я против Rust в ядре, так как считаю что код в ядре не должен использовать каких-то встроенных в язык рантайм библиотек. Им не место в ядре. Если хотят писать модули для ядра - наверное это и сейчас можно, а в ядро пусть не лезут.
     
     
  • 2.103, Ordu (ok), 17:03, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > считаю что код в ядре не должен использовать каких-то встроенных в язык рантайм библиотек.

    Ок, в этом есть определённый смысл.

    > Я против Rust в ядре

    Но при чём здесь раст?

     
  • 2.109, анонн (ok), 17:24, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Очень, очень квалифицированное мнение Держите нас и далее в курсе ваших расчето... большой текст свёрнут, показать
     
  • 2.110, proninyaroslav (ok), 17:26, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > не должен использовать каких-то встроенных в язык рантайм библиотек

    А про no_std не слышали?

     
  • 2.116, VladSh (?), 18:55, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я против Rust в ядре...

    Опа, а ребята из новости об этом не в курсе!

     

  • 1.97, Аноним (96), 16:20, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сначала добавят в ядро раст, через год С++, потом джаву, потом питон, и как вишенку на торте добавят джаваскрипт. Вот до чего это доведёт.
     
     
  • 2.150, Аноним (139), 21:41, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    C++ ладно, это хороший языке, но каким тут боком языки без zero cost abstraction?
     
  • 2.207, Анонолекс (?), 10:15, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так гугл джаваскрипт итак пытается воткнуть во всё, куда дотянется...
     
  • 2.233, Онаним (?), 14:09, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Чессгря есть мысль что впилить duktape в ядро будет легче, чем хруст. И дешевле - собирается всё тем же GCC.
    Но зачем? :)
     

  • 1.100, Аноним (99), 16:43, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Раст - небезопасный, сложный ни одной проблемы с++ он не решил. Тогда какой в нем смысл?
     
     
  • 2.151, Аноним (139), 21:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На порядок безопаснее UB/UB++
    И многие проблемы C++ решил
    Складывается ощущение, что вы вообще о расте на заборе что-то краем глаза читали
     
     
  • 3.203, anonymous yet another (?), 09:10, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > И многие проблемы C++ решил

    Тут, между прочим, очередь из решателей всех проблем C++.
    Вставайте, но передайте, чтобы больше не занимали.

     
  • 3.210, Аноним (210), 10:30, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    То-то я смотрю везде где он есть он используется только с модулями unsafe.
     

  • 1.111, anonymous yet another (?), 18:22, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Что-то подозрительно много шумихи вокруг этого чуда.

    Покажите компактный POC, можно было бы посмотреть.

    А так: давайте всем миром вложимся в немаленькую архитектуру, а когда окажется что она ну очень немаленькая, накладывает тучу ограничений, контролируется толстым игроком и завязана на его инфраструктуру, будет аргумент "нельзя же, чтобы такие усилия пропали, надо принимать". А там демократические выборы, ущемлённые права или "имеют значение" подтянут.

    Кёрниган с Ричи должны встать на колени и покаятся за сорок лет угнетения альтернативных языков в ядре.

     
     
  • 2.114, Аноним (114), 18:43, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    секта разрастается, пока ещё не поют на площадят, но уже скоро, ещё будут ходить по квартирам.
     
     
  • 3.208, Анонолекс (?), 10:18, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Свидетели ржавчины?

    P.S. Как представил таких в костюмах ржавых грибов, так сразу захотелось взять и уе... ну вы поняли... :-)

     

  • 1.113, Аноним (113), 18:30, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Visual Studio в ядро добавьте пожалкуйста или хотя бы Visual Studio Code, IDEA и Qt Designer. А то я такой безрукий и без этих полезных вещей в ядре не могу apt install написать.
     
     
  • 2.152, Аноним (139), 21:44, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    При чем тут добавление поддержки хорошего языка?
     

  • 1.115, Иваня (?), 18:53, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Я хочу писать на Golang. Добавьте плиз в ядро Linux средств для разработки на языке Golang!
     
     
  • 2.153, Аноним (139), 21:44, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    У него ж сборщик мусора
     
     
  • 3.195, leap42 (ok), 05:36, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > У него ж сборщик мусора

    и? да, кое-где STW даже длинной <=0,1мс - непозволительная роскошь, но кое-где норм. я уже молчу о том, что выключать сборщик и запускать его вручную или вообще юзать malloc/free в Go можно и это поддерживается

     
     
  • 4.263, Аноним (-), 00:44, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Что "и"? Ты реально не понимаешь? Если не понимаешь - в ядро не смей соваться!
     
     
  • 5.269, leap42 (ok), 11:47, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Что "и"? Ты реально не понимаешь? Если не понимаешь - в ядро
    > не смей соваться!

    ну раз аноним запретил, то не буду xD

    (на Go если что уже есть драйвера, хоть и не для Linux, чудик)

     
     
  • 6.289, Аноним (288), 20:22, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И на javascript тоже драйвера писали и что?:))) Оно надо в ядре?:) (не суйте go...)

    И задержки не 0.1, а такие приличные в 1с при этом все приложение будет ожидать лишь очистки..

     
     
  • 7.294, leap42 (ok), 04:29, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > И на javascript тоже драйвера писали и что?:))) Оно надо в ядре?:) (не суйте go...)

    это for fun, а драйвера на Go есть в промышленной (хоть и неготовой пока) Фуксии

    > И задержки не 0.1, а такие приличные в 1с при этом все приложение будет ожидать лишь очистки..

    лоооооооооооол! ох уж эти мамкины эксперты! в общем случае задержка STW в Go меньше 0,1 мс (это как секунда, только нет, надеюсь, хоть это ты осилишь понять, друг анон?). статей с исследованием задержек полно (только ищи про новые версии). так вот, куча железа работает со значительно большей задержкой, поэтому никакой боли от GC не будет.

     

  • 1.117, Ivan_83 (ok), 19:03, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Большая ошибка.
    Одно ядро - один язык, и чем проще язык - тем понятнее он остальным.
    Поэтому таже плюсы - это уже плохо.
    А раст - вообще катастрофа.
     
     
  • 2.122, Онаним (?), 19:42, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да ладно вам. Ну будет полтора модуля на этом извращении, кому убудет-то. Главное, чтобы интерфейс был минималистичным и сильно глубоко в плане правок не лез.
     
     
  • 3.146, Ivan_83 (ok), 21:35, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Смысл в том, что теперь для правок ошибок нужно будет знать два языка.
    Для сборки системы нужны будут два компилятора.
     
     
  • 4.157, Онаним (?), 21:48, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Зачем? Просто снимаются опции ядра для этого хлама в базовой поставке, и всё.
    Кому надо - пересобирают со своим хрустом сами.
     
     
  • 5.174, Ivan_83 (ok), 00:15, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Затем что долбоящеров с хрустом будет всё больше и больше, в конечном итоге он начнёт требоватся не только для сборки драйверов от маргиналов с их малонужным барахлом но и для того что реально массово используется.
     
     
  • 6.230, Онаним (?), 13:57, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если так случится, значит оно действительно полезное, и заслуживает места быть.
    Но я скорее предполагаю путь staging -> small team support -> no support -> obsolete -> extinct.
     
  • 2.318, Аноним (234), 11:01, 15/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    С каких пор дополнительный слой илитности опеннетчикам стал мешать? Сложность это хорошо же, вебмакаки не пройдут.
     

  • 1.119, Аноним (119), 19:32, 10/07/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.121, Аноним (121), 19:42, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    rust-sources грядет. Это чтобы ядрышко собрать надо будет не gcc, а clang, llvm, rust и это полдня целых минимум.Calculate Linux по-моему обретает особый смысл и очарование.
     
     
  • 2.160, Онаним (?), 21:50, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да ладно вам - ну хотят трахаться, пусть трахаются - если растоводы возьмутся это в ядре поддерживать, why not? Но они вряд ли возьмутся, там не тот уровень.
     
     
  • 3.298, anonymous yet another (?), 10:51, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я полагаю, здесь многоходовка с целью подмять под себя ядро.
    Сейчас растоборцев задействовали.
     
  • 2.162, Онаним (?), 21:51, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    (имеется в виду, что по умолчанию это "N", желающие - велком "Y", и тогда уже в пререквизитах весь тулкит по правилам)
     

  • 1.126, Аноним (126), 19:48, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сколько ж дней оно с ним собираться будет? С временем компиляции у Раста всё плохо.
     
     
  • 2.154, Аноним (139), 21:45, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Будто у C/C++ лучше
     
     
  • 3.172, Ordu (ok), 23:59, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У C лучше. У C++, мне кажется, тоже лучше, хотя не писал на нём очень давно, а на чужом коде сложно оценивать тормознутость компилятора.
     

  • 1.128, Аноним (121), 19:54, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не зря этот хрен себе 32 ядра взял.(
     
  • 1.135, Аноним (135), 20:40, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Нет, дегродов до написания драйверов нельзя допускать, у нас уже прикладного софта с гомнокодом хватает глючного и блоатварного.

    И это, у нас уже есть целый дистр собраный на шланге, глючный шо пц.

     
     
  • 2.156, Аноним (139), 21:46, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > дегродов до написания драйверов нельзя допускать

    А при чем тут Раст?

     
     
  • 3.168, Аноним (135), 22:28, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А при том, что главное позиционирование его и причина внедрения это почва для ра... большой текст свёрнут, показать
     
     
  • 4.173, anonymous (??), 00:01, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > потому что не надо можг напрягать.

    Вообще у Rust порог вхождения намного выше, чем у Си. Он накладывает на тебя кучу ограничений, компенсируя экспрессивной системой типов и некоторыми другими zero-overhead feature-сами.

     
  • 4.229, Аноним (229), 13:12, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да-да, надо всё на ассемблере писать.
     

  • 1.137, Аноним (229), 20:49, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Читаю эти хейт-спичи (сейчас это так называется?) по поводу раста и вспоминаю бессмертное https://ru.wikipedia.org/wiki/Настоящие_программисты_не_используют_Паскаль
    Но там хоть в шутку это всё было.
     
     
  • 2.141, Аноним (114), 21:24, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    в принципе уместное сранение, но даже паскаль не был настолько ущербным как руст, а ада тем более. руст - это просто набор хаков для ллвм который выдаётся за "безопасность".
     
     
  • 3.159, Аноним (139), 21:49, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    C/C++ от ущербности Раста менее ущербными быть не перестанут.
     
     
  • 4.165, Аноним (114), 22:04, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    руст от ущербности с++ менее ущербным тоже не станет. ну можешь на аде пописать если хочешь, тебе же никто не запрещает. там всё "очень безопасно" (на самом деле нет) и "проверено временем" (проверка провалилась), генерирует нативный код - вообще огонь. всё как ты хочешь, тебе совсем не обязательно изобретать очередной велосипед, его изобрели 40 лет назад, просто тебе забыли сказать об этом.
     
  • 2.158, Аноним (139), 21:48, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Просто пишущие на C/C++ боятся, что их знания потеряют цену, только и всего
    Этого не случится, конечно, даже если сейчас всем внезапно придется перейти на Раст, но некоторые слишком консервативны для принятия нового
     
     
  • 3.163, Онаним (?), 21:52, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    К счастью, "всем внезапно придётся" невозможно - адекватных слишком много :)
     
     
  • 4.222, анон (?), 12:14, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Все же резко перешли на кок. Хотя не я помню, чтобы код не принимали лишь потому, что человек *** или ***

     
     
  • 5.287, Онаним (?), 19:03, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На биг блэк кок.
     
  • 3.166, Аноним (229), 22:09, 10/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот именно. Столько лет жили в своём уютном мирке, а тут внезапно появился годный язык общего назначения. НИБАМБИТ
     
     
  • 4.221, анон (?), 12:07, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Мне то же самое говорили и про го.
     
  • 4.282, Anonn (?), 16:44, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Где появился? Ссылку, срочно!
     
     
  • 5.293, Аноним (293), 23:26, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    где-то в мурзилке
     

  • 1.155, user90 (?), 21:46, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > занимающийся в Google обеспечением поддержки сборки

    Что, никому не смешно? Какой-то х. с гор.. то есть из гуглеля! что-то там сказал.

     
  • 1.170, Страшный аноним (?), 22:54, 10/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Rust пока себя особо не проявил, хотя языку уже много годков. Он уродлив и нечитабелен. Возможно, через определенной время он прекратит своё существование, дав жизнь, после переосмысления чему-то более юзабельному и красивому. Так зачем похабить ядро Linux? Я вообще считаю, что не C небезопасный, а что слишком много идиотов на нем программируют, не понимающих все плюсы и минусы языка.
     
     
  • 2.175, Аноним (175), 00:24, 11/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Но ведь полезно же иметь язык, предотвращающий как можно больше ошибок?
     
     
  • 3.268, Xasd5 (?), 11:18, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    в ядре?
     
  • 3.292, Аноним (293), 23:22, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    и как хруст может предотвратить ошибки работы с железом?
     
  • 3.299, anonymous yet another (?), 10:56, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вы историю с языками т.н. 4-го поколения (4th generation languages) не знаете?
     

  • 1.179, Аноним (179), 00:54, 11/07/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.201, Да (?), 08:11, 11/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Если Rust сможет избавить мир от вечного бетатеста программ написанных индусами на Си - ++, то я за.
     
  • 1.204, asdasd (?), 09:17, 11/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > занимающийся в Google

    Не, не, не, ни кому не в обиду, но когда крупные компании занимаются подобными вопросами, это тушите свет.

     
  • 1.205, asdasd (?), 09:19, 11/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > поддержку GCC атрибутов inline, cold, alias, used и section

    А ничего, что inline появился аж в C99?

     
  • 1.237, Аноним (237), 16:38, 11/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Каждый раз, когда читаю комментарии под новой статьей о Rust на opennet, в голове невольно вертится пословица "Собака лает, а караван идёт".

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

     
     
  • 2.267, anonimous (?), 01:35, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Может уже бы сели спокойно на выходных, да изучили бы язык, помедитировали

    Да я бы и поизучал, но вот после каждого столкновения с его синтаксисом ощущения, что я лучше китайский подучу.

     
  • 2.273, Сишник (?), 13:18, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Собрал хеллоуворд, оказалось 5мб весит, ну его нафиг. Те, кто такое сделал, хорошему не научат.
     
     
  • 3.276, Аноним (-), 15:05, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Собрал хеллоуворд, оказалось 5мб весит, ну его нафиг. Те, кто такое сделал,  хорошему не научат.




    cat hello.rs &&  rustc -O  hello.rs && wc -c ./hello
    fn main() {
      println!("Hello World!");
    }
      306552 ./hello

    % rustc -O  hello.rs -C link-args=-s && wc -c ./hello
      232208 ./hello

    % rustc -O  hello.rs -C prefer-dynamic -C link-args=-s && wc -c ./hello        
       14856 ./hello



    Криворук и ламероват - это злобный раст все виноват!


     
     
  • 4.280, Сишник (?), 16:23, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Криворук и ламероват - это злобный раст все виноват!

    В оттенках коричневого разбираться нужным не считаю. Сделал как у растовиков рекомендуется пару лет назад, возможно за это время осилили уменьшить размер бинаря, но более нужным его это не делает.

     
     
  • 5.283, Аноним (283), 16:51, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Криворук и ламероват - это злобный раст все виноват!
    > В оттенках коричневого разбираться нужным не считаю.

    Т.е. что такое debug/release компиляция, флаги оптимизации, что такое дебаг-инфа, статическая и динамическая линковки, strip - и как оно влияет на размер бинаря, ламерье не в курсе, не разбирается и разбираться не хочет? Впрочем, на то оно и ламерье, пусть и со звучным именем.

    > Сделал как у растовиков рекомендуется пару лет назад, возможно за это время осилили уменьшить размер бинаря, но более нужным его это не делает.
    > возможно за это время осилили уменьшить размер бинаря, но более нужным его это не делает.

    Да-да, уже лет 8 как, причем тайком от местных знатоков-экспертов.

     
     
  • 6.285, Сишник (?), 17:40, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чего злой такой? Мне нафиг не упало задрачивать ржавый тулсет для получения приемлимых результатов. У меня и так всё хорошо, а вот у тебя похоже что-то не задалось, раз кидаешься на посторонних людей🙂
     
     
  • 7.313, Ordu (ok), 20:25, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне нафиг не упало задрачивать ржавый тулсет для получения приемлимых результатов.

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

     
  • 4.286, Онаним (?), 17:47, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не хватает ldd к этому выводу.
     

  • 1.255, via (??), 20:21, 11/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    А кто им мешает-то, пусть делают, что хотят, только не под флагом kernel.org.
     
     
  • 2.291, Аноним (293), 22:19, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    они по другому не могут... они только под чужими флагами гадить умеют.
     

  • 1.262, Аноним (-), 00:42, 12/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >63), 14:12, 10/07/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
    >>Исследователи из Китайского университета в Гонконге развивают проект для
    >обеспечения мирового доминирования Китайской Народной Республики

    Сразу видим две вещи:
    1) аноним реально в теме - там так и есть
    2) модыратор реально куплен ККП

     
  • 1.265, Аноним (-), 00:49, 12/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    нет, он не куплен, всё гораздо печальнее... Он последователь этой идеологии, при чём промыты с раннего детства.
     
  • 1.275, Anonn (?), 14:01, 12/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Справедливости ради, ядро написано не на Си.
    Большинство из следующих используемых в ядре конструкций отсутствуют в языке Си

    Вывод типов - typeof(x)
    Ассемблерные вставки - asm volatile("pxor %xmm5,%xmm5");
    Диапазоны в свитче - case 1 ... 7:
    Массивы нулевой длины - some_variable_len data[0];
    Адрес вызывающего - ptr = __builtin_return_address(0)
    Определение константности выражения - if __builtin_constant_p(c)
    Различные атрибуты функций - __attribute__((always_inline))
    Подставляемые функции - inline void fun()
    Имя текущей функции - my_func_name = __func__
    Инструкции-выражения - ({ int a = b + 1; a; })
    Переменное число параметров в макросах - __VA_ARGS__
    Арифметика с указателями на void - ++void_ptr
    Неконстантные инициализаторы - int arr[2] = { x, y }

     
     
  • 2.277, Аноним (-), 15:43, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Спорно.

    И ты этим хочешь оправдать использование Раста? Глупенький.

     
     
  • 3.281, Anonn (?), 16:41, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Что тут спорного? Это объективный факт. Ядро написано не на Си, а на Си-с-расширениями.
    Компилятор, в котором нет этих расширений, такой код не соберет.
    Парсер, который написан в соответствии со стандартом, такой код может не распарсить.
    Человек, который учил Си по учебнику, конструкции не поймет, или подумает что это ошибка.

    До Раста мне дела нет, просто указываю на очевидную логическую неточность.

     
     
  • 4.284, Аноним (-), 17:32, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так ядро же GNU-тое, все это знают. GCC - официальный компилятор, все это знают.

    Вот только ты решил подыграть растаманам. Расту нет места в ядре. Для экосистемы GNU/Linux язык Раст - это чужеродное образование.

     

  • 1.279, Аноним (278), 16:14, 12/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >> Предполагается, что подобный подход может оказаться востребован производителями оборудования, разрабатывающими проприетарные драйверы на скорую руку без проведения должного аудита.

    Надо ещё больше говнокода! А то текущее количество миллионов строк уже никого не впечатляет.

     
     
  • 2.290, Аноним (293), 22:15, 12/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    дрова на скорую руку... проприетартные... жесть.
     
     
  • 3.310, Анонолекс (?), 20:02, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так сжечь нах под корень... и в село делов...
     
  • 2.311, Анонолекс (?), 20:10, 14/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Говно в говно! А то поразвели тут, понимаешь...
     

  • 1.302, Аноним (302), 18:06, 13/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ТО ли Линус постарел, то ли гики помолодели ...
     
  • 1.309, Анонолекс (?), 19:48, 14/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ты тут два раза подумали и я два раза сказал... Да в ж0пу ваш раст, в ж0пу...
     
  • 1.312, Анонолекс (?), 20:12, 14/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И надо больше жечь людей. Криворуких программеров ваще пачками...
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру