Crash Consistency: Move the file system from one consistent state (e.g., before the file got appended to) to another atomically (e.g., after the inode, bitmap, and new data block have been written to disk).
磁盘不提供多块读写 “all or nothing” 的支持
根据磁盘上已有的信息,恢复出 “最可能” 的数据结构
针对 crash,我们需要更可靠的方法我们需要一个更可靠的方法
两个 “视角”
二者的融合
用 bread, bwrite 和 bflush 实现 append()
现在磁盘需要写入双份的数据
从应用视角来看,文件系统的行为可能很怪异
更为一劳永逸的方案:TxOS