Fossbytesは12月4日(米国時間)、「Using Rust in Windows - Microsoft Security Response Center」において、MicrosoftがWindows 10のコンポーネントの一部をプログラミング言語「Rust」を使って書き換えを進めていると伝えた。メモリセーフであるRustを使うことで、Windows 10に発生する脆弱性を回避する狙いがあると見られる。

Fossbytesは先月、Microsoft Security Response Centerのブログ「Using Rust in Windows - Microsoft Security Response Center」を引用する形で、0Microsoftのこの取り組みを伝えている。

Using Rust in Windows - Microsoft Security Response Center


取り組みはまだ実験的な位置づけにあり、Windows 10にRustによって開発されたコンポーネントは含まれていないが、取り組みの結果によっては、今後Windows 10のコンポーネントの一部が順次Rustで開発されたものへ置き換えられている可能性がある。

MicrosoftはRustを使ったコンポーネント開発の特徴として、C++開発者であればRustの習得が比較的簡単であること、優れたドキュメントの存在と役立つコンパイラエラーメッセージのおかげで学習が簡単になることなどを挙げている。

課題としては、Rustに同梱されているビルドおよび管理ツールであるCargoを既存のWindows 10ビルドシステムと連動できていないことが指摘されているが、すでにCargoのチームと取り組みを開始していると説明しており、そう遠くない段階でWindows 10のビルドシステムとCargoが連動する可能性がある。

「Rust」はC/C++と類似したシステムプログラミング言語。オブジェクト指向プログラミング、関数型プログラミング、手続き型プログラミングといった複数の特徴を備え、C/C++と同様に高速で、メモリセーフかつ並列性に優れるという特徴があるとされている。Mozillaが開発を支援しており、Firefoxの重要な機能はRustを使って開発されている。

Microsoftは以前からRustに興味を示しており、Windows 10の一部をRustで書き換えることはそれほど驚く取り組みとは言えない。Rustは学習が比較的難しいと考えられているが、メモリセーフであり生成されるバイナリがC/C++で開発したものに匹敵するほど高速であることから、ここ数年注目度が上がっている。