Влітку компанія оголосила, що перепише певні компоненти мовою Rust (замість C і C++), щоб зробити їх більш захищеними.
Microsoft зацікавилась Rust, тому що понад 70% проблем з безпекою, які компанія виправляла за останні 10 років, були пов'язані з пам'яттю — а Rust призначена саме для цього.
Які саме програми перепишуть, компанія не казала, лише обіцяла тримати в курсі. Зараз, через чотири місяці, публікуються перші результати цього експерименту.
Як виявилось, розробники переписали деякі низькорівневі компоненти Windows. В цілому результатом задоволені, хоча ще є над чим працювати.
Моїм завданням було експериментальне переписування низькорівневого системного компонента з кодової бази Windows (вибачте, не можу сказати, якого саме). Хоча проєкт ще не закінчений, свій результат роботи з Rust я можу назвати позитивним. <...> Взагалі, нові чи вже наявні компоненти з чистим інтерфейсом найпростіше перенести на Rust. Компонент, який я переписував, був складним, доводилось проводити попередній рефакторинг, перш ніж досягти прогресу.
Також Берч додав, що процес не проходить ідеально. Не вистачає безпечного перенесення («старих даних» у вихідні байти та з них), безпечної підтримки C style unions, та масштабного модульного тестування, необхідного для інфраструктури Microsoft.
Розробник, вважає що Rust чудово підійде для мікроконтролерів низькорівневих систем, як ядра і гіпервізори — тобто там, де зосереджена на безпеці мова потрібна найбільше.
Ще немає коментарів