Chinaunix

标题: 块设备数据的一致性在哪里保证? [打印本页]

作者: smalloc    时间: 2011-08-21 16:28
标题: 块设备数据的一致性在哪里保证?
我的疑问是块设备具有随机访问的特性, 类似内存, 但是块IO都是通过request执行的, request有重排合并功能.
联想到CPU的指令队列的乱序, 因为对内存的读写访问数据相关的访问, 指令序列也有一定规则, 保证数据相关性不发生错误, CPU中寄存器访问也考虑到这个问题.
而块设备也不能完全排除数据相关性, 有类似的机制保证吗?
作者: omycle    时间: 2011-08-21 18:42
这个一致性指的是什么?
按照我的一致性理解,试着说一下:
page cache 在改写的时候,定义page为dirty.不过,在submit(bh)之前,将其改为uptodate。这就是一致性吧?然后,其他进程如果访问对应的文件,会查看是否在内存中已经有对应的page cache了,如果Page cache存在,并且uptodate了,那么就可以访问这个page cache了。
作者: smalloc    时间: 2011-08-21 20:47
可以看看这帖子, 把这问题至上而下搞通一遍.
http://bbs.chinaunix.net/viewthread.php?tid=1801098




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2