Linux page包括分配给进程的Page及 cache Page,
记得很早之前看过vm.swappiness用来控制内存回收。
内存回收包括这两部分,2.6之后有个公式来控制
swap tendency = mapped ratio / 2 + distress + swappiness
mapped ratio表示分配给进程的页数
distress与zone上次扫描的优化级相关
swappiness即为vm.swappiness(默认60)。
当swap tendency > 100时,才回收分配给进程的内存。
这也就是为啥大数据系统vm.swappiness需要改成1,尽量回收cache page,否则容易回收分配给进程的page。
有个极端情况,当vm.swappiness为0时,极不可能回收分配给进程的page,容易出问题。





网友评论