ある開発者が Rust で GNU Coreutils の再実装を提供しています 

gnu-coreutils-rust

このプロジェクトに Rust を使用すると、多くの潜在的なバグが完全に排除されるため、このプロセスをスピードアップできます。

Sylvestre Ledru は Rust での GNU Coreutils の再実装に取り​​組み始めました COVID-19 パンデミックの間 先週、FOSDEM の 2023 年版で発表しました。 uutils と呼ばれる取り組みは現在、多くの Linux ディストリビューションでパッケージ化されており、Yocto プロジェクトを通じて有名なソーシャル ネットワークでも使用されています。

Rust 言語と C++ 言語の比較には共通点があります。メモリの安全性に関して、C++ に対する Rust の優位性を強調することです。 RisingWave の編集者は、C++ プロジェクトを離れた後、ネイティブのクラウド DBMS を Rust でゼロから書き直した理由を説明します。

「Rust は、所有権の規則を導入することで、コンパイル時にメモリとスレッドの安全性を保証します。 これは、C++ で一般的に使用されるメモリ管理メカニズムである RAII を超えています。 これには XNUMX つの利点があります。 XNUMX つ目は明らかです。Rust コンパイラがプログラムを検証すると、実行時にセグメント エラーや競合状態が発生しなくなります。これは、特に同時実行性の高いコードベースや大部分が非同期の場合に、何十時間ものデバッグが必要になります。 XNUMX つ目はより微妙です。Rust のコンパイラは単に障害の種類を制限するだけで、このような障害のある動作を引き起こす可能性のある密にネストされたコード スニペットを減らします。 確定的実行を使用することで、エラーの複製が大幅に改善されます。 »

GNU Coreutils はパッケージです GNU プロジェクトから Unixライクなオペレーティングシステムに必要な多くの基本的なツールが含まれています: cp (ファイルまたはディレクトリのコピー)、mkdir (ディレクトリの作成) など。 開発者が Rust 言語での再実装を提案します。

目標の XNUMX つ: パッケージを他のオペレーティング システムで使用できるようにすること: Windows、macOS、Android、FreeBSD などこの動きは、C および C++ で新しいプロジェクトを開始し続けるか、単に Rust 言語を選択するかという問題に関する議論を復活させることになります。

「Rust 言語は、メモリ管理に関してデフォルトでセキュリティ保証を提供します。 これは、Mozilla での使用がメモリ セキュリティの問題の原因となっている C や C++ には当てはまりません」と Sylvestre Ledru 氏は強調します。

しかし、Bjarne Stroustrup は、Rust と C++ を比較すると、ソフトウェアを保護するという概念がメモリを保護するという概念に限定されることに同意しません。

「『セキュリティ』の概念に単一の定義はなく、プログラミング スタイルの組み合わせ、サポート ライブラリ、および静的分析の活用により、さまざまな種類のセキュリティを実現できます。 したがって、Bjarne Stroustrup は、ソフトウェア セキュリティの観点から C++ から何が得られるかは、とりわけ開発者、特に言語が提供するツールの知識、コンパイラの熟達度などに依存することを示唆しています。

Google のエンジニアは、C++ が可能性として提供するものを認識しており、この言語でのローン検証機能の作成に着手しました。 メモリ ポインタの割り当て管理を通じてメモリの安全性を確保するのは、Rust コンパイラの機能です。

Google チーム、 その出版物は前年の第XNUMX四半期に登場し、 の結論に達した C++ ライクなシステムは、そのような演習には適していません。 そして、 C++ でメモリの安全性を達成できること プログラム実行中のコントロール付き。 言い換えると、 Rust と同等のセキュリティ レベルを達成できるのは、遅い C++ コードの場合です。.

RisingWave エディタのリリースは、Rust が、C および C++ の代替として何年も提示されてきた他の言語から際立っているときに行われます。 実際、Linux カーネルは Mozilla のシステム プログラミング言語に対してますますオープンになっています。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。