min_free_kbytes是内存最安全值的阈值,然后这个值是怎么影响到系统内存回收的呢?
2017-11-24 23:13
351 查看
min_free_kbytes
内存域水印值:min_free_kbytes
当不设置的时候:sqrt(16M)=4k 4k*4 = 16k
设置内存水印值的函数是:
__setup_per_zone_wmarks 中会设置每个内存zone中的min/low/high水印
内存域的这些值都是怎么玩的?
突然间发现了一个函数,可以看到每个内存域的各种内存的信息:show_free_areas竟然是printk,只有在内存很低的时候才打印!
min: 在vmscan时会用到:pfmemalloc_watermark_ok , __zone_watermark_ok这里会判断是不是超过了内存的水位。
low:
high
内存域水印值:min_free_kbytes
当不设置的时候:sqrt(16M)=4k 4k*4 = 16k
设置内存水印值的函数是:
6792 /* 6793 * Initialise min_free_kbytes. 6794 * 6795 * For small machines we want it small (128k min). For large machinemis 6796 * we want it large (64MB max). But it is not linear, because network 6797 * bandwidth does not increase linearly with machine size. We use 6798 * 6799 * min_free_kbytes = 4 * sqrt(lowmem_kbytes), for better accuracy: 6800 * min_free_kbytes = sqrt(lowmem_kbytes * 16) 6801 * 6802 * which yields 6803 * 6804 * 16MB: 512k 6805 * 32MB: 724k 6806 * 64MB: 1024k 6807 * 128MB: 1448k 6808 * 256MB: 2048k 6809 * 512MB: 2896k 6810 * 1024MB: 4096k 6811 * 2048MB: 5792k 6812 * 4096MB: 8192k 6813 * 8192MB: 11584k 6814 * 16384MB: 16384k 6815 */ 6
__setup_per_zone_wmarks 中会设置每个内存zone中的min/low/high水印
内存域的这些值都是怎么玩的?
突然间发现了一个函数,可以看到每个内存域的各种内存的信息:show_free_areas竟然是printk,只有在内存很低的时候才打印!
min: 在vmscan时会用到:pfmemalloc_watermark_ok , __zone_watermark_ok这里会判断是不是超过了内存的水位。
./include/linux/mmzone.h:258:#define min_wmark_pages(z) (z->watermark[WMARK_MIN])
low:
high
相关文章推荐
- 内存域水印值:min_free_kbytes
- malloc的内存用free释放后为何系统回收不了
- Qt视频学习笔记4(坐标系统 、内存回收、菜单栏、工具栏、核心控件和浮动窗口)
- 安卓学习笔记---android系统内存不足时,应用被系统回收发生了什么?
- 夏日葵电商:自建了我的商城系统,然后该怎么营销?
- free看内存使用,ps看系统进程,netstat查看网络,tcpdump抓包
- 新生代串行收集器对内存分配及回收的影响
- 怎么将一个整个文件一次读到内存,然后循环从内存中读取1024字节,写入新的文件(或socket发送出去)
- LINUX 查看当前系统的内存使用情况 free
- rocketmq涉及到的系统参数(min_free_kbytes )
- 高质量C++编程之(7.8 有了malloc/free 为什么还要new/delete ?7.9 内存耗尽怎么办?)
- android系统内存不足时,应用被系统回收发生了什么?
- Android内存告急,进程被系统回收
- 内存大了,但是系统没觉得快,怎么优化内存呢?
- min_free_kbytes
- 查看linux系统内存使用情况free
- malloc与free对被操作内存的影响
- Problem 64 如何设置Linux系统内存回收的阀值?
- 四大组件之Activity(上)——Activity的生命周期、系统回收、系统配置改变的影响
- mac系统内存占用问题,free很少的困惑