
触动机制:
1.进程或者手工调用sync().
2.grow_buffers( )分配buffer page失败
3.free_more_memory() or try_to_free_pages() reclaim失败
4.mempool_alloc()分配失败
5.更多场景,当进程dirty pages达到阈值时,/proc/sys/vm/dirty_background_ratio(默认10%),调用 background_writeout()回收。
pdflush调用background_writeout(),指定刷新nr_pages。
过程中,当脏页在/proc/sys/vm/dirty_ratio(默认30%)以下时,停止刷新,如果脏页比例还在30%以上,往page_cache写将block。
刷新内存范围包括page cache dirty pages,super block dirty pages,device dirty pages等。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)