Soft updates
出典: フリー百科事典『ウィキペディア(Wikipedia)』
Soft updatesとは非同期書き込み中に不意に計算機が止まった場合でもファイルシステムの一貫性を保つための技術である。
[編集] 概要
Soft updates(Soft dependenciesとも言われる)とは、非同期書き込みを行っている際に突然電源切断が起きても、ファイルシステムの一貫性を保つための技術である。同等の技術であるジャーナリングファイルシステムと同様、ファイルシステムの一貫性を保証する技術であり、 データの喪失が起きないようにする技術ではないことに注意されたい。
ファイルシステムの一貫性を保証するために、Soft updatesではハードディスクへのデータ書き込みの順序を制御している。 ジャーナリングファイルシステムではメタデータの更新などをジャーナルとして別の領域に保存するが、 Soft updatesではそのような特別な領域を必要としない。
Soft updatesによってファイルシステムのinodeなどのメタデータと実際のデータの一貫性が常に保証されるので、突然の電源切断が起きた場合にもfsckなしにmountすることができる。 しかし、実際には未使用なのに使用されているとマークされているページができることがある。 これは、Soft updatesでは利用している領域を未使用領域と誤認する状況を避けるようハードディスクへの書き込み制御をするからである。 このような誤って使用中と認識された領域を掃除するためにbackground fsckを行う。
Soft updatesは最初FreeBSD用にマーシャル・カーク・マキュージック(Marshall Kirk McKusick)が開発したものだったが、他のいくつかのBSDの子孫でも利用可能である。
[編集] 参考文献
- McKusick, M. (2002). Running "fsck" in the Background." Proceedings of the BSDCon 2002. 55-64.
- McKusick, M. and Ganger, G. (1999). "Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem." USENIX Annual Technical Conference. 1-18.
- Seltzer, M. et al. (2000). "Journaling Versus Soft Updates: Asynchronous Meta-data Protection in File Systems." USENIX Annual Technical Conference. 71-84.