Rust для Linux официально объединен с Linux 6.1

Драйверы ржавчины в Linux

Код Rust для Linux был объединен с основным деревом Linux 6.1 Git в прошлый понедельник и этот новый исходный код из 12 500 строк обеспечивает только самую базовую инфраструктуру и интеграцию, в то время как будущие запросы на включение добавят больше абстракций подсистем, различные драйверы, написанные на Rust, и многое другое.

Компиляция ядра Linux с поддержкой Rust по-прежнему необязательна., так как проект «Rust для Linux» делает еще один большой шаг, но некоторые разработчики все еще скептически относятся к внедрению языка Rust в ядро ​​Linux.

В сообщении сообществу ядра Торвальдс сказал:

«Дерево имеет недавнюю основу, но в основном это linux-next уже полтора года. Обновлено на основе отзывов с саммита по обслуживанию ядра.

Мигель — главный сопровождающий, и я помогаю, когда это необходимо. Наш план состоит в том, чтобы дерево перешло к стандартной практике не менять базы, как только этот начальный этап инфраструктуры будет завершен. Контент — это абсолютный минимум, позволяющий интегрировать код Rust в ядро, а также множество других интерфейсов (и драйверов: NVMe, 9p, GPU M1) на подходе».

Напомним, проект «Rust для Linux» нацелен на внедрение в ядро ​​нового языка программирования.. У Rust есть ключевое свойство, которое делает его очень интересным для рассмотрения в качестве второго языка ядра: он гарантирует отсутствие неопределённого поведения. Сюда входят ошибки неиспользования after-free, двойные освобождения, гонки данных и т. д.

При этом почти через 31 год для разработки ядра будет принят второй язык. Связанные с этим обсуждения вращаются вокруг возможности отказа от C в пользу языка Rust.

Поддержка Rust была в linux-next в течение полутора лет, и краткий журнал не отражает количество людей, которые внесли свой вклад как в ядро ​​Linux, так и в исходную часть Rust для поддержки потребностей ядра. . . .

Спасибо этим 173 людям и многим другим, которые принимали участие во всех видах

Торвальдс объявил в списках рассылки Kernel, что первоначальная поддержка Rust для Linux находится примерно в 4 областях. и которые включают:

  • внутренности ядра (расширение kallsyms для символов Rust, формат %pA);
  • Kbuild framework (правила сборки Rust и вспомогательные скрипты)
  • Документация и образцы ядра Rust.

Торвальдс недавно исследовал потенциальную проблему безопасности с примитивами спекулятивного выполнения связанного списка ядра, написанными на ANSI C. Именно при устранении этой проблемы он понял, что «в C99 итератор, передаваемый в список макросов обхода, должен быть объявлен в области вне области видимости. сама петля.

Именно из этого наблюдения вытекает его недавнее решение обновить ядро ​​Linux до C11, стандартизация которого была завершена в 2011 г. Это своего рода технические причины, которые могут оправдать отказ от языка C в пользу Rust в течение длительного времени, в дополнение к основному сроку разработки.

Поддержка Разработка ядра Rust для Linux продолжается и считается «важным шагом». чтобы иметь возможность писать контроллеры на более безопасном языке». Язык Rust, разработанный Mozilla Research, — это тип языка программирования, используемый теми, кто пишет код для базовых систем ввода-вывода (BIOS), диспетчеров загрузки, операционных систем и т. д. иметь интерес

По мнению некоторых экспертов-наблюдателей, это будущее системного программирования, а не языка C. На самом деле эксперты считают, что он предлагает лучшие гарантии безопасности программного обеспечения, чем пара C/C++. Например, в AWS, мировом лидере в области облачных вычислений, указано, что выбор Rust для ваших проектов разработки означает добавление энергоэффективности и производительности выполнения C к преимуществам безопасности.

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


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

Комментарий, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Эдуардо Авила сказал

    Какие хорошие новости. Это то, что было замечено. Тем более, что ржавчина набирает большую силу. Лично меня программирование на Rust увлекает, и я скоро стану профессионалом в Rust.