发明名称 |
采用事务日志的闪存恢复 |
摘要 |
一种用于闪存恢复的事务日志,包括指定诸如对扇区的写入或对块的擦除等已经执行的操作的链式块序列。执行将整个闪存状态写入到闪存的检查点。一旦执行了检查点,就删除该检查点之前的所有日志条目,并且关于恢复的日志处理开始于最后的检查点。如果系统能够安全关闭,则可以在驱动程序卸载之前执行检查点,并且在初始化时,整个持久存储的闪存状态可被加载到闪存中且进行最少量的闪存扫描。如果在系统操作期间发生电源故障,则在下一次引导时,只须扫描日志条目中的在最后的检查点之后指定的扇区或块,而不是该部分上的所有扇区。 |
申请公布号 |
CN102089746B |
申请公布日期 |
2013.08.21 |
申请号 |
CN200980128061.3 |
申请日期 |
2009.04.13 |
申请人 |
微软公司 |
发明人 |
A·M·罗杰斯;S·帕特尔 |
分类号 |
G06F12/16(2006.01)I;G06F11/07(2006.01)I;G06F11/00(2006.01)I |
主分类号 |
G06F12/16(2006.01)I |
代理机构 |
上海专利商标事务所有限公司 31100 |
代理人 |
陈斌;钱静芳 |
主权项 |
一种至少部分地在计算设备中执行的用于采用事务日志来进行闪存恢复的方法,所述方法包括:在闪存操作期间,生成所述事务日志,所述事务日志包括指定已执行的闪存操作的链式块序列(400);通过将整个闪存状态写入所述闪存中的指定位置来执行检查点(300);在完成所述检查点后,删除所有事务日志条目(348),其中最终检查点在闪存驱动程序在安全关闭期间卸载之前执行;如果在所述安全关闭之后初始化所述闪存,则基于所述最终检查点来加载所述整个闪存状态(452);以及如果在意外关闭之后,在未在所述闪存驱动程序卸载之前执行完整的检查点的情况下初始化所述闪存,则通过扫描最后的检查点之后的事务日志条目来恢复所述闪存状态(693)。 |
地址 |
美国华盛顿州 |