機械翻訳について

io_uringの拡張機能

io_uringは、記憶域デバイスの非同期I/O操作を管理するシステム・コール・インタフェースです。 実装では、UEK 8で使用可能ないくつかの機能および改善が提供されており、これらの一部は以前のUEKリリースにバック・ポートされている可能性があります。 更新には、セキュリティとパフォーマンスのための多くの最適化が含まれます。 重要な新機能と変更点は次のとおりです:

  • io_uringでは、データ・バッファとともにT10保護情報の送受信がサポートされるようになりました。

  • getsockopt(), setsockopt(), bind(), listen()およびwaitid()の操作。

  • 設定時にIORING_SETUP_SQPOLLを使用してシステム・コールを省略するメカニズム。 io_uring_enter()をコールすると、発行キューをポーリングするカーネル・スレッドが開始され、そこで見つかったリクエストが自動的に送信されます。

  • recv()コールおよびreads()のバッチ・リクエスト。

  • IORING_OP_SENDZC:ゼロ・コピー書込みを実行します。

  • いくつかのリング・コードの最適化:

    • リングおよび送信キューは、ヒュージ・ページなどのユーザー・スペース・メモリーに配置できます。

    • 1つのリングが別のリングにシグナルを送信して、メッセージ・リクエストを高速化できるようになりました。

    • リング関連の作業は、アプリケーションが要求するまで延期できます。

  • XFSでのバッファ書込みのio_uringの改善。

  • XFSおよびExt4でのio_uring最適化では、ファイルへの複数のダイレクトI/O書込みをパラレルで処理できます。

  • 絶対タイムアウトは、すでに使用可能な相対タイムアウトとともに可能になりました。