メニュー
ホーム
アーカイブ
元祖ワシ的日記
ほぼ雑記的メモ
←キーワード「ケーシー」
キーボード忘れた→
aio_read
2004年10月15日(金)
aio_read()というのは非同期にreadするという関数です。普通のreadは一定のデータを読み終わるまで戻ってこないんですが、こいつは即座に戻ってきます。
したがって、戻ってきた直後はデータがない可能性もあるわけですが、その間ベツな処理をあらかじめしておいて、その後に読んだデータの処理をすることができます・・・というような関数なのでしょう。
これが使い道があるのかどうかはおいといて、調査する必要が出てきたので、軽くFreeBSDで調査をしてみました。
まずは、カンタンなサンプルを作成して実行してみました。
するとENOSYSというエラーが。つまり、サポートされていないと・・・
うーむとばかりにカーネルソースをみてみたら、VFS_AIOが定義されていないときは、全てエラーとなるようにコーディングされてました。
というわけで、早速
options VFS_AIO
を追加してカーネル再コンパイル。無事動きました。ソースがあるって素敵ですね。ふぅ
って本来の目的は全然進んでないやん・・・・
Tweet
エントリにコメントする
エントリにコメントする
タイトル
名前
コメント
完了
コメントが表示されるまで時間がかかることがあります。
Powered by
Red Leaf
( Rev. c78c769f2 ), © Issei Numata, 2007-2021