
内核参数
Blue summer
这个作者很懒,什么都没留下…
展开
-
vm内核参数之缓存回收vfs_cache_pressure
注:本文分析基于3.10.0-693.el7内核版本,即CentOS 7.41、背景在上篇文章中,我们知道在使用drop_caches接口释放内存时,drop_slab中会调用各个slab管理区的shrink函数释放空闲内存。在实际释放前会先计算可释放的空闲slab缓存数量,这个计算在针对超级块以及mbcache时会受vfs_cache_pressure参数控制。2、super block shrink文件系统在初始化时会调用alloc_super分配超级块,此时就会设置超级块的shrink函数,为原创 2020-10-05 17:39:45 · 8585 阅读 · 0 评论 -
vm内核参数之缓存回收drop_caches
https://www.cnblogs.com/10087622blog/p/8919384.html原创 2020-09-22 19:57:02 · 12702 阅读 · 0 评论 -
vm内核参数之IO写入记录block_dump
https://www.cnblogs.com/zengkefu/p/5639200.htmlhttps://www.cnblogs.com/zengkefu/p/5639167.htmlhttps://blog.youkuaiyun.com/Bruceleexiaokan/article/details/8207443原创 2020-08-16 22:40:23 · 1118 阅读 · 0 评论 -
vm内核参数之内存脏页dirty_background_bytes和dirty_bytes
内存脏页dirty_background_bytes和dirty_bytes原创 2020-08-13 23:01:00 · 5066 阅读 · 2 评论 -
vm内核参数之内存脏页dirty_writeback_centisecs和dirty_expire_centisecs
注:本文分析基于3.10.0-693.el7内核版本,即CentOS 7.41、背景在《BDI writeback脏页回写》中我们了解了BDI的一些基本结构以及初始化和一些触发路径,现在我们要更深入了解下脏页的writeback,一个是脏页什么时候会被处理,另一个是多久会触发脏页的writeback。2、脏页形成路径脏页由写操作引入,毕竟读操作不会引起数据的不一致性。不管应用层以什么方式将数据变脏,最终都会调用__mark_inode_dirty将inode标记dirty。而调用__mark_ino原创 2020-08-08 16:41:46 · 8957 阅读 · 0 评论 -
vm内核参数之内存水位min_free_kbytes和保留内存lowmem_reserve_ratio
1、zone内存水位值系统内存的每个node上都有不同的zone,每个zone的内存都有对应的水位线,当内存使用达到某个阈值时就会触发相应动作,比如直接回收内存,或者启动kswap进行回收内存。我们可以通过查看/proc/zoneinfo来确认每个zone的min、low、high水位值。[root@centos7 ~]# cat /proc/zoneinfo | grep -E "Node|...原创 2020-04-06 11:41:32 · 6993 阅读 · 0 评论 -
vm内核参数之内存整理compact_memory和extfrag_threshold
只有在启用了CONFIG_COMPACTION选项才有效。当向该文件(/proc/sys/vm/compact_memory)写入1时,所有的内存域都会被压缩,使空闲的内存尽可能形成连续的内存块。...原创 2020-04-01 21:39:00 · 5688 阅读 · 0 评论 -
vm内核参数之虚拟内存申请overcommit
1、涉及参数/proc/sys/vm/下admin_reserve_kbytesuser_reserve_kbytesovercommit_memoryovercommit_kbytesovercommit_ratio2、具体作用首先是admin_reserve_kbytes,内核里涉及该参数的地方有三个函数,一个是__vm_enough_memory(),在内存分配路径上...原创 2020-03-07 22:45:48 · 1169 阅读 · 0 评论