|
lru_flag 什么时候会改
QUOTE: 晶晶小妹
-----------------------------
具体是,服务器进程需要读块进Buffer,它会从LRU链的尾端开始搜索自由块,如果发现搜索到的块的TCH值小于2,就重用这个块,并把它移动到冷端头。如果发现TCH大于2的块,并不会重用它,而是把它移到热端头部,并把它的TCH设为0。下面,我们试验一下这个过程:
-----------------------------------------
个人实验的结果,服务器进程需要读块进Buffer,它会从LRU链的尾端开始搜索自由块,如果lru满了,
如果发现搜索到的块的TCH值小于2,就重用这个块,并把它移动到冷端头。如果发现TCH大于2的块,并不会重用它,而是把它移到热端头部,并把它的TCH设为0,lru_flag改成了8
如果如果lru还未满,那么哪怕tch>2,应该说哪怕 到达20 ,也不会被移到热端,或者 需要很长的时间吧,我没有观察到。
关于lru_flag=4
我观察了一下 发现当要重用这个块时,这个块就变成了4,而且马上就没清除掉了,不知道是不是正确 |
|