私は効率的なテキスト ファイル ローダーを実装していましたが、GNU grep の作成者から次の投稿で良いアドバイスを見つけました: http://lists.freebsd.org/pipermail/freebsd-current/2010-August/019310.html
彼が提案することの 1 つは、ページで整列されたデータ ブロックの read() 呼び出しをページで整列されたバッファに行うことです。どうやらこれにより、カーネルは余分なバッファリングを回避できます。
私は検索してきましたが、この主張を支持する人は他にいません。read() をページ整列バッファー (おそらく mmap/posix_memalign などで割り当てられたもの) に呼び出すと、実際にはより効率的であるというのは本当ですか? 真実ではない場合、それはかつて真実だったものですか?基盤となるファイルシステムやその他の要因に大きく依存していますか?
ありがとう!