Name

vfs_aio_linux — Linux kernel aio コールを利用するSamba vfs中での非同期I/Oの実装

Synopsis

vfs objects = aio_linux

説明

このVFSモジュールは samba(7)システムの一部である。

aio_linux VFS モジュールは、POSIX AIOインタフェースを 使わない、kernel AIO コールが有効なLinuxカーネル上でSamba用の非同期I/Oを有効に する。Posix AIO はきつい制限がある。たとえば、あるLinuxバージョン上では それが使うリアルタイムシグナルは、高負荷の時には動作しない。glibc(ほとんどの Linuxシステム)ベースのシステムは、glibc実装を使うシステム上でPosix AIOが本質的に 無効になってしまう、ファイル記述子あたり単一の未処理要求のみ許可される。

これらすべての制限を回避するために、aio_linux モジュールが書かれた。 これは、非同期に、読み出しと書き込み呼び出しを許可するため、内部の POSIX AIO インタフェースの代わりに Linux kernel AIO インタフェースを使う。 128イベントのキューサイズは既定値として使われる。この制限を変更するためには、 以下で述べる"aio num events"を設定する。

smb.conf パラメーターaio read sizeaio write sizeは、このモジュールを有効にするために、 適切に設定することも必要であるということに注意。

このモジュールは、Samba VFS pread/pwrite インタフェースがスレッドセーフで ないため、他のモジュールスタックの後に配置しなければならない。このモジュールは 直接preadとpwriteシステムコールを呼び出し、Samba VFS pread と pwriteインタフェースを 使わないことに注意。

使用例

簡単な使い方:

        [cooldata]
	path = /data/ice
	aio read size = 1024
	aio write size = 1024
	vfs objects = aio_linux

オプション

aio_linux:aio num events = INTEGER

未処理のIO要求を制限するために使われる、イベントキューの 最大値を設定する。

既定値は 128 である。

バージョン

このマニュアルページは、バージョン 4.0.14 のSambaシステム用である。

著者

オリジナルの Samba ソフトウェアと関連するユーティリティは、Andrew Tridgell によって作成された。現在 Samba は Samba Team に よって、Linuxカーネルの開発と同様のオープンソースプロジェクト として開発が行なわれている。

日本語訳

このマニュアルページは、Samba 4.0.6 - 4.0.14 対応のものである。

このドキュメントの Samba 4.0.0 - 4.0.14 の翻訳は

  • 太田俊哉 (ribbon@samba.gr.jp)

によって行なわれた。