ls -iがlsより遅いのはなぜですか?

ls -iがlsより遅いのはなぜですか?

わかりましたエルエス与えられたディレクトリのファイル名をリストし、LS-i表示名とinode番号。

しかし、なぜ遅いのですか?

編集する: この問題は大きなディレクトリで発生します。

名前と inode 番号はディレクトリ情報ブロックにまとめて保存されます。なぜ inode 番号のクエリに時間がかかるのですか?

答え1

stracels -i呼び出されるlstat()各ファイル名を表示します。

これは追加の操作を説明できます。

readdir()がすでにinode番号を返していることを考えると、これは次善策のようです。

これはバグのように感じますが、この動作はマウントポイントとの一貫性のためです。 (トーマスのコメント参照)

関連情報