フォルダに多くのファイルがある - フルパスを使用してファイルにアクセスする時間の違い

フォルダに多くのファイルがある - フルパスを使用してファイルにアクセスする時間の違い

/var/log/somethingフォルダには、1つのファイル(test.log)または1,000,000の異なるファイルがあります(もちろんtest.logも同様です)。 realpathを使用してtest.logファイルにアクセスするとき、2つのファイルサイズに時間差はありますか?

たとえば、

less /val/log/something/test.log

答え1

これはファイルシステムとディレクトリの管理方法によって異なりますが、最新のファイルシステム(ext4を含む)はインデックス付きのディレクトリ構造を持っているため、そのディレクトリに1つのファイルがあるか100万のファイルがある場合でも、そのディレクトリ内の1つのファイルにアクセスする必要があります。 。かなり速い。

あります一部変化しますが、実際には重要なほど十分ではありません。

ディレクトリ内のファイルのリストを取得するには、インデックスツリー全体を参照する必要があるため、まったく異なる作業です。

関連情報