タグ

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

  • 関連タグはありません

タグの絞り込みを解除

rustとapiとkernelに関するslay-tのブックマーク (2)

  • ソケットAPIが遅すぎる?新たなio_uringを試す!

    新しいAPIが作られるたびに、私たちは、古いAPIを置き換えるだけで高速化という夢をみます。何度夢破れても、高速なAPIが追加されたと聞けば、試さずにはいられませんよね! 今回は、Linuxカーネル5.1で追加されたio_uringを使って、Rustのasyncランタイムを実装し、gRPCサーバのベンチマークを実行してみました。 io_uringとはio_uringは、ファイルシステムとネットワークの非同期I/Oのために開発されました。同期よりも非同期のほうがおしゃれ、そういう雰囲気ありますよね!クラウドネイティブも、非同期にAPIを介して、なんかやってるやつですよね。 io_uringのインターフェイスは、高い性能を目指し、1)アプリケーションとカーネル間でのメモリコピーを避ける、2)複数のI/O要求を一度にカーネルに伝えることができる、という工夫がされています。 下図のように、アプリケ

    ソケットAPIが遅すぎる?新たなio_uringを試す!
  • Linuxカーネルが難しい?Rustで実装しよう!. 「カーネル開発者になりたい!」 | by FUJITA Tomonori | nttlabs | Jul, 2020 | Medium

    「カーネル開発者になりたい!」 クラウドネイティブ世代の皆様は、何を言っているのか理解できないと思いますが、一昔前は、Linuxカーネル開発の魅力におぼれたエンジニアがたくさんいました。クラウドファースト時代に、誰もやってないだろうと、軽い気持ちで試すと、今もひっそりと生息しているカーネル開発者に、一晩中、指導をうけるはめになりかねません。前例のないRustなら安心です。 RustLinuxカーネルモジュールが実装できるRustでカーネルモジュールを実装する利点Rustへの愛だけが理由ではなく、カーネル開発にRustを用いると、様々なバグを減らすことができそうという利点があります。例えば、動的なメモリ管理で、うっかり、解放を忘れるとか、解放した後に使ってしまうと、往々として、辛いデバッグになります。 Rustで実装した簡単なカーネルモジュールRustのカーネルモジュール開発フレームワーク

    Linuxカーネルが難しい?Rustで実装しよう!. 「カーネル開発者になりたい!」 | by FUJITA Tomonori | nttlabs | Jul, 2020 | Medium
  • 1