Hi, 每个zone都有三个水位,当前自由页面数目与这三个水位值比较,决定pageout守护进程kswapd的操作: pages_min: 当自由页面数目小于等于pages_min时,kswapd必须以同步模式工作,申请页面的进程必须sleep直到 自由页面数目超过pages_min。 pages_low: 当自由页面数目小于等于pages_low时,kswapd进程被唤醒,通过buddy分配器释放页面, 以增加自由页面数目;pages_low缺省是pages_min的两倍。 pages_high:当自由页面数目大于等于pages_high时,kswapd不会被唤醒,系统认为zone是平稳、安定的(balanced)。 Pfree小于pages_min,大于pages_high都好理解。其它的情况,我的理解是: 假设Pfree属于(pages_min, pages_low): kswapd是可以唤醒的,并通过buddy分配器释放页面; 假设Pfree属于(pages_low, pages_high): 系统认为该zone不是"balanced",需要kswapd调整平衡值。 总觉得我的理解不完全,请大家都看看!! Best Regards Ouyang Kai