問題点など

SYNCモードでマウントしたときの問題点

  1. iノード/間接ブロックの更新より、フリービットマップへの登録が 先に動作する。フリービットマップの方が先に更新されると フリービットマップとファイル構造の両方に登録された 状態になり、 DUPブロックが発生する可能性がある。 さらに、iノード/間接ブロックの更新前に、 解放されたブロックがフリービットマップから別のファイル構造に 組み込まれてしまう可能性もある。
  2. iノードと間接ブロックの書き込み順が逆である。 間接ブロックのほうが先に解放されるため、iノードが 解放済みの間接ブロックを参照しているタイミングが存在する。 これもシステムクラッシュ時のDUPブロックの原因となる。
  3. ファイル削除時は、既に全てのディレクトリからの参照は あり得ないが、解放するiノードや間接ブロックの 同期書き込みが動作することがある。(単純に性能上の問題)
  4. セキュリティさえ考えなければ、最終ブロックの0クリアは 無くても良い。(利用頻度の低い機能なので、さぼったと しても性能的なメリットは少ない)
  5. これ自体、ファイルシステムの構造に影響を与えるものでは無いが、 ファイルの先頭に近い方のブロックから解放しているのは 気になる。
  6. ファイルトランケート時に、ファイル生成時間まで 設定し直しているが、POSIX的にはこれは正しいのだろうか?

(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST
1