ioctl()
FIBMAP
で利用可能な論理ブロックがある場合は、ファイルが占める物理ブロックを決定するために使用できますstat()
。ただし、root アクセスが必要です。ファイルのディスクの場所を決定するためにルートアクセスが必要なのはなぜですか。この質問を提起するユースケースでは、ファイルが小さいため(平均約1ブロック)、最初のブロックの物理的な場所を知るだけで十分です(間接ブロックはもちろん必要ありません)。これらのファイルの約100,000個は、できるだけ早い順序で短い順序でアクセスする必要があり、I / Oスケジューラキューに渡す前に、ディスクの場所に基づいてファイルを事前にソートしたいと思います。ソートはinode
root権限を必要としない可能性に基づいていますが、inode番号とディスクの場所との間の一致度は確率的であるため、一致度によってパフォーマンスが異なります。
ファイルが占める物理ブロックへの非ルートアクセス
おすすめ記事
- mysqldumpにエラーがない場合にのみgzipを使用する方法は?
- 中央のタッチパッドボタンを無効にするチェックボックスはどこにありますか?
- Amazon Linux AMIにFedoraパッケージをインストールする
- Kali LinuxでPostgresqlサービスが開始されませんでした。
- ドメインにポイントがある場合、resolv.conf検索は機能しなくなります。
- カスタム位置から `.vimrc`テーマとプラグインをロードする
- sedを使用して最初の空の行と最後の行の間の行を表示するには?
- gnomeでカーソル形状を構成する
- 2つの別々のドライブでPop!_osとwin10をダブルブートする安全な方法
- 改行/改行/改行文字を含む文字列をUnixでファイルを検索する