当前位置: 技术问答>Oracle内存数据库11g和高速缓存11g上市
iis7站长之家
一个页高速缓存的问题
来源: 互联网 发布时间:2016-09-27
本文导语: 对于特定的文件写操作的首先在页高速缓存中搜索需要的页,如果需要的页不再高速缓存中,那么内核在高速缓存中新分配一空闲项,下一步,prepared_write()方法调用,创建一个写请求,接着数据被从用户空间拷贝到...
对于特定的文件写操作的首先在页高速缓存中搜索需要的页,如果需要的页不再高速缓存中,那么内核在高速缓存中新分配一空闲项,下一步,prepared_write()方法调用,创建一个写请求,接着数据被从用户空间拷贝到了内核缓冲,最后通过commit_write()函数将数据写入磁盘
为什么从用户空间拷贝?
为什么从用户空间拷贝?
|
你说的是写磁盘的操作吧。
写磁盘的基本操作都是由用户发起的。要写的数据肯定是先在用户空间中产生。产生后,系统判断高速缓存中是否有相关的数据。没有就需要分配新的高速缓存,然后从用户空间拷贝。
以后这些数据需要再次写到磁盘时。系统判断高速缓存中有数据了,这时就不需要从用户空间拷贝了。直接将数据写入磁盘。
写磁盘的基本操作都是由用户发起的。要写的数据肯定是先在用户空间中产生。产生后,系统判断高速缓存中是否有相关的数据。没有就需要分配新的高速缓存,然后从用户空间拷贝。
以后这些数据需要再次写到磁盘时。系统判断高速缓存中有数据了,这时就不需要从用户空间拷贝了。直接将数据写入磁盘。