アカウント名:
パスワード:
jbdってのはこの辺で解説されてる [ibm.com]Journaling Block Deviceレイヤーのこととして話を進めますが、仮にあなたの意見が正しいとしても、現在のLinuxのVFSレイヤーにraw disk I/Oが無い以上、その上で動作するファイルシステムはどれもダメ(=Journalの正しさを保証できない)という件の文章の結論が変わるとは思えません。
「ディスクはリクエストを出した順序に処理を行うという保証は無い」という文章も今一つ意味が判りません。Linuxの非同期ディスクアクセスについては件の文章でも言及されているので、その話ではありませんよね。ハードウェア的に発行された書き込み命令の順序が、ディスク側で入れ替わる可能性がある、ということですか? (外付けのRAID箱ならそういう場合もあるかも知れんが)
他人の文章を事実誤認と非難するのであれば、第3者にも判るように説明する必要があると思います。で、その結果が件の文章にフィードバックされれば、ためになる情報が蓄積され、より多くの人が幸せになれると思うんですが。
判りやすい解説ありがとうございますm(__)m
raw disk I/Oってのは、HDD上のキャッシュ以外の要素を考慮しなくて良い直接的なディスク操作、という意味で使ってます。おっしゃる通り、きちんと排他処理がなされていれば結果は同じですね。
でも、HDD上のキャッシュをソフトからフラッシュする汎用的な方法ってあります?SCSIならありそうな気がしますが、IDEの場合そんな高級な操作って出来るのかな…
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
※ただしPHPを除く -- あるAdmin
一体どれ使えばいいの? (スコア:0)
Re:一体どれ使えばいいの? (スコア:3, 参考になる)
ちょっとlinuxに関して手厳しい意見に見えるかも
しれませんが、とにかく、これだけファイルシステムに
関して詳しく解説しているところって滅多にないんじゃ
ないかと思います。是非、御一読を。
Re:一体どれ使えばいいの? (スコア:2, 参考になる)
*jbdはジャーナルの書き込みにext2を使っていない
*ディスクはリクエストを出した順序に処理を行うという保証はない
という点で事実誤認をしています
嘘をまき散らす人と信じる人がいるわけですね
Re:一体どれ使えばいいの? (スコア:1)
jbdってのはこの辺で解説されてる [ibm.com]Journaling Block Deviceレイヤーのこととして話を進めますが、仮にあなたの意見が正しいとしても、現在のLinuxのVFSレイヤーにraw disk I/Oが無い以上、その上で動作するファイルシステムはどれもダメ(=Journalの正しさを保証できない)という件の文章の結論が変わるとは思えません。
「ディスクはリクエストを出した順序に処理を行うという保証は無い」という文章も今一つ意味が判りません。Linuxの非同期ディスクアクセスについては件の文章でも言及されているので、その話ではありませんよね。ハードウェア的に発行された書き込み命令の順序が、ディスク側で入れ替わる可能性がある、ということですか?
(外付けのRAID箱ならそういう場合もあるかも知れんが)
他人の文章を事実誤認と非難するのであれば、第3者にも判るように説明する必要があると思います。で、その結果が件の文章にフィードバックされれば、ためになる情報が蓄積され、より多くの人が幸せになれると思うんですが。
Re:一体どれ使えばいいの? (スコア:2, 参考になる)
> その上で動作するファイルシステムはどれもダメ
違います。
なぜ raw disk I/O(そもそもこの用語で何を仰りたいのかよくわかりませんが)
が無ければ書き込み操作の完了が保証されないとお考えなのでしょうか。
正しく排他処理を行えば簡単に実現できます。
最もナイーブに作ればログの書き込みは
> ハードウェア的に発行された書き込み命令の順序が、ディスク側で入れ替わる可能性がある、ということですか?
はい、あります。
ハードディスクの書き込みキャッシュを利用している場合、
個々の書き込み操作の間の順序関係は守られないかもしれません。
守りたい場合は書き込みごとに書き込みキャッシュを
フラッシュする必要があります。
この場合、softupdate はフラッシュだらけになってしまいますが
LFS や JFS の場合はトランザクションの開始と終了(コミット)だけ
書き込み順序が守られていればよいのでフラッシュの回数を抑えられる、
かもしれません。
# Linux のファイルシステムはどれも対応してないようですが…
# というか、現在の所、正しく対応しているファイルシステムの実装はない?
Re:一体どれ使えばいいの? (スコア:1)
判りやすい解説ありがとうございますm(__)m
ACさんなんで#168239 [srad.jp]と同じ方かどうか判りませんが、初めからこういう風に書いてあれば私なんぞが異論を挟む余地はありません。raw disk I/Oってのは、HDD上のキャッシュ以外の要素を考慮しなくて良い直接的なディスク操作、という意味で使ってます。おっしゃる通り、きちんと排他処理がなされていれば結果は同じですね。
でも、HDD上のキャッシュをソフトからフラッシュする汎用的な方法ってあります?SCSIならありそうな気がしますが、IDEの場合そんな高級な操作って出来るのかな…
Re:一体どれ使えばいいの? (スコア:0)
今時のATAコマンドはSCSIと変わりません。
Re:一体どれ使えばいいの? (スコア:0)
親コメントの補足説明です。
「ハードディスクの書き込みキャッシュ」とは
「ハードディスクに搭載されている書き込みキャッシュ」のことです。
Re:一体どれ使えばいいの? (スコア:0)
意味わかって書いてます?
Re:一体どれ使えばいいの? (スコア:0)
なぜ「…という点が間違っているので注意」と書けないのかな。
Re:一体どれ使えばいいの? (スコア:0)
Ext3 や Linux のファイルシステムに関して誤認があるのだから、
XFS と他の ファイルシステムとの比較に役に立つとは思えません。
そもそも具体的なデータを示してあるわけでもありませんし。