引用 9 楼 yellow_hill 的回复:引用 4 楼 eclipse_2 的回复:引用 2 楼 yellow_hill 的回复:分块写,每块校验,错了重写 分块写 加log 校验 错了log恢复 是这个意思吧 但是linux内核中的数据是如何保证的?是这样做的吗?好像没有这么复杂 楼上已经解释了,可以考虑crc校验,临时文件我觉得也是办法 至于内……
引用 4 楼 eclipse_2 的回复:引用 2 楼 yellow_hill 的回复:分块写,每块校验,错了重写 分块写 加log 校验 错了log恢复 是这个意思吧 但是linux内核中的数据是如何保证的?是这样做的吗?好像没有这么复杂 楼上已经解释了,可以考虑crc校验,临时文件我觉得也是办法 至于内核的机制,这点没研究过
引用 2 楼 yellow_hill 的回复:分块写,每块校验,错了重写 分块写 加log 校验 错了log恢复 是这个意思吧 但是linux内核中的数据是如何保证的?是这样做的吗?好像没有这么复杂
但如果的确是要求一直操作一个文件, 那么我觉得自定义格式, 在每一个包的头尾加上magicnumber来做校验就差不多了,不需要计算crc之类的。
引用 4 楼 eclipse_2 的回复:引用 2 楼 yellow_hill 的回复:分块写,每块校验,错了重写 分块写 加log 校验 错了log恢复 是这个意思吧 但是linux内核中的数据是如何保证的?是这样做的吗?好像没有这么复杂 记得文件编辑时不是正常退出了话,系统会产生一个XXX.swp文件。 这应该就是qq120848369提到的临……
分块写,每块校验,错了重写
断电时时刻刻啊,内核都没法保证不对数据或者数据不错。。
23,120
社区成员
74,507
社区内容
加载中
试试用AI创作助手写篇文章吧