タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

rustに関するvladimir-kyotoのブックマーク (8)

  • 「Rust」言語はCよりも遅いのか、研究者がベンチマーク結果を解説

    「C」や「C++」に代わるシステムプログラミング言語として「Rust」が注目を集めている。メモリ安全性が高く、メモリ破壊バグといった脆弱(ぜいじゃく)性を作り込みにくいからだ(関連記事)。 ただし、システムプログラミング言語では、高い処理性能が必須条件であり、これがCやC++が使われ続けている理由となっている。Rustはどの程度「速い」のだろうか。 ドイツのミュンヘン工科大学で博士課程の学生であるポール・エメリク氏は2019年9月9日、Rustで作成したデバイスドライバの性能評価をGitHubで発表した。 同氏のグループはさまざまな言語で同じ機能を備えたデバイスドライバを記述し、性能を比較している。 何が性能低下を引き起こしているのか 性能評価用に作成したのは、Intelのイーサネットコントローラー向けのLinux用デバイスドライバだ(ixgbeタイプ)。 エメリク氏は解説の冒頭で研究に取

    「Rust」言語はCよりも遅いのか、研究者がベンチマーク結果を解説
  • cargoのどこがいいのか | κeenのHappy Hacκing Blog

    κeenです。久しぶりのブログですね。 LLイベントに行ってきたらパッケージマネージャの話がありました。 その懇親会でcargoについて振られたんですがタイミングがなくて喋れなかったのでブログに書いておきます。 ざっくりまとめると パッケージマネージャ/ビルドツールに要求される要件を卒なくこなしている 面倒を見る範囲が広く、要はワンストップソリューションだから便利 コンパイラと同じ母体が開発してるのでグダグダがない じゃないかなと思います。あとバイナリなのでキビキビ動く。 因みにcargoが便利という声の中にはcrates.ioで欲しいパッケージを探しやすいだとかみんな割とセマンティックバージョニングを守るので理不尽にビルドがコケたりしないなどもあると思います。 1に関しては最近のよくあるベストプラクティスを全部やったらこうなったって感じですね。 セマンティックバージョニングで依存関係を管

    cargoのどこがいいのか | κeenのHappy Hacκing Blog
  • RustはHeartbleedを防げたのか? - 低レイヤ強くなりたい組込み屋さんのブログ

    はじめに ja.wikipedia.org 2014年に、「OpenSSL」にHeartbleedという脆弱性が見つかり、話題になっていました。 この脆弱性は、典型的なメモリ操作に関するバグであったため、Rustであれば発生しなかったのではないか?という観点で調べていると、過去に同じ主張をしている文献をいくつか発見しました。 こういうのは、後からなら何とでも言える部分があるのですが、やはりRustなら発生しなかっただろうな、というのが私の見解です。 Rustでは、メモリ操作に関連する脆弱性になり得るコードの多くが、コンパイル時にチェックされます。 スライスやコレクションについては、実行時に境界チェックが入るため、最悪サービスが停止しますが、データが流出したり、バグったまま動き続けるようなことはありません。 なるべく、安全なプログラミング言語を使って、開発を進められるようにしていきたいですね

    RustはHeartbleedを防げたのか? - 低レイヤ強くなりたい組込み屋さんのブログ
  • Microsoftが「Rust」言語を導入、安全性以外の理由あり(続報)

    Microsoftが「Rust」言語を導入、安全性以外の理由あり(続報):性能や安全性以外にも評価あり Microsoft Security Response Center(MSRC)は、C/C++に代わるシステムプログラミング言語の最有力の選択肢として「Rust」を挙げ、その理由を解説した。合わせてMicrosoftのような大規模なコードベースを持つ企業にとっての課題も示した。 なぜメモリ安全性と性能の両方が必要なのか MSRCによると、メモリ安全性を備え、Microsoft社内外で広く使われている言語は数多い。「C#」や「F#」のような.NETに対応した言語の他、「Swift」「Go」「Python」、Rustなどがある。 だが、システムプログラミング言語はOSカーネルなど、他のソフトウェアの動作基盤となるシステムの作成に使うものだ。CやC++が提供するような速度と予測可能なパフォーマ

    Microsoftが「Rust」言語を導入、安全性以外の理由あり(続報)
  • 第二プログラミング言語として Rust はオススメしません Nim をやるのです - 強まっていこう

    これから Rust 触ってみようかなぁと思っている方。やめておきましょう。プログラミングが嫌いになりますよ。 Nim をやりましょう。 すでに Rust に挑んで心ぶち折れた方。 Nim をやって心の傷を癒やしましょう。 Rust がディスられる!小癪な!と思っている方。 Nim をやるのです(天に轟く反響音)。 Nim の魅力を Rust と比較しつつ皆様へお伝えしましょう(両手を広げる)。 さぁ、みんな、Rust なんて捨ててさっぱり人気が無い Nim をやるのです(ドドメ色に輝く)。 行末のセミコロンが必要ない タイプ数がもりもり減ります。 Rust にはもちろん必要です。 main が要らない スクリプト言語感覚でいきなりコードを書けます。 Rust は main が必要です。 標準出力への文字列出力が楽 Nim では echo で改行付きの出力ができます。shell と同じですね

    第二プログラミング言語として Rust はオススメしません Nim をやるのです - 強まっていこう
  • Rustは何が新しいのか(基本的な言語機能の紹介) - いもす研

    Rust は、Firefox を開発する Mozilla が開発し、次世代ブラウザの開発に使っているプログラミング言語です。借用検査という概念を導入することによりメモリ安全およびデータ競合安全をコンパイラが保証する言語であり、2015年中頃の安定版のリリースあたりから次第に注目を集めるようになりました。 メモリ安全とは、メモリの範囲外アクセスや二重解放、ヌル参照、未初期化領域へのアクセスがない状態を表します。ただし、Rust の言うメモリ安全とは、メモリリークをしないことを保証するものではありません。 データ競合安全とは、あるひとつのオブジェクトに対しての読み込みおよび書き込みのが同時に起き結果が不定になる状態にならないことを表します。競合状態とは異なります。 無名関数という概念を様々な言語が次々と導入したように、プログラミング言語は相互に影響を及ぼし徐々に変化しています。Rust は「寿

  • Linux Programming / お気楽 Rust プログラミング超入門

    WHAT'S NEW 2022/08/15 簡単なプログラムに複素数を追加 2022/08/13 簡単なプログラムに多倍長整数を追加 2022/08/06 Rust 入門: Hello, Cargo, cargo によるクレートの作成, 外部クレートの使い方 を追加 2022/08/06 お気楽 Rust プログラミング超入門を改訂 CONTENTS 2022/07/30 はじめに 2022/07/30 参考文献, URL 2022/07/30 権利・免責事項など Rust の基礎知識 2022/07/30 Hello, Rust! 2022/08/06 Hello, Cargo! 2022/07/30 基的なデータ型 2022/07/30 変数 2022/07/30 基的な演算子 2022/07/30 基的な制御構造 2022/07/30 所有権 2022/07/30 参照と借用

  • UbuntuにRustをインストールする - Qiita

    UbuntuにRustをインストールしたのでメモとして残しておきます。この記事ではUbuntu18.04にRust1.34.0を入れた記事になっています。Ubuntu22.04にRust1.62.0をインストールした記事はこちらにあります。 環境 Ubuntu 18.04 rust 1.34.0 インストール curl https://sh.rustup.rs -sSf | shを実行するだけで簡単にインストールできます。途中でインストールの方法を選択できますがここではデフォルトの1を選択しています。rustup.rsは中身はBashスクリプトになっていてrustupやrustc、cargoなどを$HOME/.cargo/binにダウンロードしてくるようです。スクリプトの中身はrustup.rsのGitHubrustup-init.shです。 ~$ curl https://sh.rus

    UbuntuにRustをインストールする - Qiita
  • 1