| ■20492 / ) |
Re[47]: ディレクトリの排他アクセス |
□投稿者/ れい (646回)-(2008/06/11(Wed) 10:15:51)
|
■No20484 (NyaRuRu さん) に返信 > 今回の件とは直接関係ないかもしれませんが,/usr/src/linux/Documentation/filesystems/directory-locking とかおもしろいですね.
OS内部、ファイルシステムの話ですね。
WinDDKのsrc/filesys/fastfatを見ればわかりますが、 per-inodeのロックをFCBのロックに、 per-filesystemのロックをVCBのロックに対応付けると 大体同じような仕組みになってますよね。
ちょっと違うのはファイルの作成です。 Windowsでは作成時にはボリューム全体をロックしますが、 Linuxはinodeの存在が保証されてるのでディレクトリのロックで大丈夫。
そんな感じでWindowsの方がロックの粒度は荒い。 なのにFSのパフォーマンスはWindowsの方が一般に高いらしいですね。
NyaRuRuさんが示してくれた資料のような感じに 具体的に「デッドロックを防ぐため」とかいう理由があって、 理論的にFindFirstFileが良い実装である、見たいな資料があるといいんですが。
今のところ理由は3つ。
1 歴史的経緯 2 ロックの粒度 3 ディレクトリとファイルの違いをあえて意識させたい
もし本当なら3に一番思想が含まれるので一番重要だと思うのですが。 ネタ好きさんの話だけでは私にはちょっと納得いかないです。
設計者の小言とか、どこかに資料落ちてないかなぁ。
|
|