カテゴリー: Innovating

タグ: System Software

NIC のような I/O デバイスが高速化を続ける一方で、汎用 CPU で動作する既存の多くのソフトウェアにとって、それらの性能を十分に活かすことが難しくなってきているという課題があります。この課題へ向けて、実行効率の高いソフトウェアの設計と実装を模索します。

ユーザー空間におけるプロセススケジューリングポリシーの実装方法

  • 背景・課題:プロセスのスケジューリングは通信を行うようなプログラムの応答性能において重要であり、過去の研究では、特定のワークロードへ最適化されたスケジューリングポリシーがアプリケーション性能に寄与することが示されてきました。一方で、それらスケジューリングポリシーを導入するためには OS のカーネルに対して固有の変更を加える必要があり、利用のハードルが高いという課題があります。
  • 本研究:この課題に対して、ユーザー空間において、OS に一般的に実装されている機能のみを用いてユーザー空間でプロセススケジューリングポリシーを実装する方法を模索します。
  • 関連資料:[ブログ記事] [論文] [実装]

高速かつ統合しやすい TCP/IP スタック実装

  • 背景・課題:近年、研究コミュニティにおいて、高速な TCP/IP スタックの実装方法がある程度確立されつつある一方で、これまでに発表されてきた実装は、別のシステムと組み合わせることが困難であり、多くの用途で使いにくいという課題があります。
  • 本研究:この課題に対して、高速化についてこれまで発表されてきた知見を取り入れつつ、統合しやすさと使いやすさに配慮した TCP/IP スタック実装を提案します。
  • 関連資料:[ブログ記事1] [ブログ記事2] [論文] [実装]

システムコールフック機構

  • 背景・課題:これまで、研究コミュニティにおいて、OS 機能をユーザー空間で実装することの性能やセキュリティ面での利点が示されており、システムコールフックは、それらユーザー空間に実装された OS 機能を既存のユーザー空間プログラムを変更することなく適用することを可能にするために必要な基礎的な技術ですが、一方で、既存のシステムコールフック機構には性能面での負荷や網羅性に課題があります。
  • 本研究:この課題に対して、メモリ上にロードされたプログラムを書き換えることによってフックを実現する方法を提案します。
  • 関連資料:[ブログ記事] [論文] [実装]

仮想マシンのためのメモリ共有手法

  • 背景・課題:複数の仮想マシンが一つのデバイスを共有する際、そのデバイスのレジスタ等をマップしたメモリ領域へアクセスする際には、ホストが仲介を行うことが一般的ですが、仮想マシンとホスト間でのコンテキスト切り替えは仮想マシン上で動作するアプリケーションの性能劣化を引き起こす原因となります。
  • 本研究:この課題に対して、仮想マシンがホストへコンテキストの切り替えを行うことなく、更に、悪意のある仮想マシンが攻撃に利用できないような、共有メモリ領域へのアクセス方法を提案します。
  • 関連資料:[ブログ記事] [論文] [実装]

PAGE TOP