Після інциденти, що відбулися у спільноті розробників Linux Kernel через дискусію щодо впровадження Rust у ядро, де різні розробники Вони дали знати про своє положення на напрямку що проект приймає.
Грег Кроа-Хартман, відомий супроводжувач стабільної гілки ядра Linux, виступив на захист Rust і висловив підтримку використання мови Rust у розробці нових основних компонентів.
Greg згадайте це за останні 15 років, був одним із головних джерел інформації Про помилки та вразливості в ядрі та стверджує, що багато з цих проблем походять від недокументованих примх у мові C, навпаки, повністю усуває ці неоднозначності, представляючи значний прогрес у плані стабільності та безпеки.
Переваги Rust в ядрі
Для Грега ООН з основних переваг для інтеграції Rust у розробку ядра це викорінення типових помилок керування пам'яттю. Такі проблеми, як доступ до звільненої пам’яті, часткове переповнення буфера, неправильне звільнення ресурсів після помилок виконання та пропуск перевірок у кодах повернення, будуть значно зменшені. Ці вдосконалення дозволять спеціалістам із супроводу ядра зосередитися на більш актуальних проблемах, таких як умови перегонів і логічні проблеми, а не витрачати час на виправлення помилок, яких можна уникнути.
Існуючий код C не буде замінено, але можливість Написання нових контролерів і підсистем у Rust допоможе покращити якість програмного забезпечення в майбутньому. Крім того, використання цієї мови дозволить реструктуризувати внутрішні API ядра, щоб зробити їх більш зрозумілими та безпечними, що значно зменшить навантаження на супроводжуючих, забезпечивши його правильне використання. З розвитком оболонок у Rust дизайн ядра можна оптимізувати, що принесе користь як розробникам Rust, так і тим, хто продовжує використовувати C.
Грег Кроа-Хартман пояснює, що Rust не є магічним рішенням який вирішить усі проблеми ядра, але це цінний інструмент що покращить багато аспектів розвитку. Також вказує на те що Використання кількох мов усередині ядра не є непереборною перешкодою. Спільнота розробників Linux у минулому вирішувала ще складніші завдання, і додавання Rust є просто ще одним кроком до зміцнення проекту в довгостроковій перспективі.
Кіс Кук приєднався до цієї дискусії, колишній провідний системний адміністратор kernel.org і керівник групи безпеки Ubuntu. Кук підкреслив, що намір не полягає в тому, щоб переписати код існує в Rust, але надати можливість використовувати його для розробки нових компонентів. Ця стратегія не тільки зменшить кількість помилок пам’яті, але й прискорить процес розробки, оскільки Rust дозволяє виявляти помилки на ранній стадії процесу кодування, до того, як програмне забезпечення досягне фази тестування.
І це Зазначається, що життєздатність цієї стратегії доведена Раніше Google на Android. Було показано, що новий код є основним джерелом проблем безпеки, тому покращення його якості з самого початку є пріоритетом. насправді, Було помічено, що старий код має меншу щільність уразливостей з часом. Наприклад, код, написаний п’ять років тому, має в середньому в 3.4 рази менше недоліків безпеки порівняно з останнім кодом.
Таким чином, інтеграція Rust у ядро Linux вважається ключовим прогресом у покращенні безпеки, ефективності розробки та стабільності системи. Це не заміна коду C, а скоріше еволюція, яка дозволить у майбутньому писати більш безпечне та надійне програмне забезпечення.
Нарешті, якщо вам цікаво дізнатися більше про це, ви можете ознайомитися з деталями в наступне посилання.