fadvise が存在する場合、ramdisk の目的は何ですか?

fadvise が存在する場合、ramdisk の目的は何ですか?

私の理解ではfadvise指定されたファイルをファイル システム キャッシュ (RAM) に保存するようにシステムに指示します。

fadvise --willneedディレクトリだけを RAM ディスクにマウントできる場合、ディレクトリを RAM ディスクにマウントする目的は何ですか?

答え1

読んでみましょう基礎となるライブラリ呼び出しのマニュアルページ:

プログラムは posix_fadvise() を使用して、将来特定のパターンでファイル データにアクセスする意図を通知し、カーネルが適切な最適化を実行できるようにします。

アドバイス(必ずしも存在するとは限らない)地域に適用されるオフセットそして延長レンバイト(またはファイルの最後まで)レン参照されるファイル内の翻訳アドバイス拘束力はなく、単にアプリケーションに代わって期待を構成するだけです。

(強調追加)

RAM ディスク上のすべてのデータは、設計上、RAM 内にあることが保証されています (ただし、tmpfs はスワップ アウトできます)。ただし、fadvise は単なるアドバイスであり、カーネルはデータを RAM に事前にロードする必要はなく、常に RAM 内に保持する必要もありません。

関連情報