5.2 实现原理
Zram内存压缩技术本质上就是以时间换空间。通过CPU压缩、解压缩的开销换取更大的可用内存空间。
我们主要描述清楚下面这2个问题:
1) 什么时候会进行内存压缩?...会将非活跃链表的页进行shrink, 如果是匿名页会进行pageout, 由此进行内存压缩存放到ZRAM中, 调用路径如下:
?...6.3 zRam相关的技术指标
1) ZRAM大小及剩余空间
Proc/meminfo中可以查看相关信息
SwapTotal:swap总大小, 如果配置为ZRAM, 这里就是ZRAM总大小
SwapFree...因此zRam并不是配置越大越好,具体的大小需要根据内存总大小及系统负载情况考虑及实测而定。
使用zRam,可能会存在低内存场景由于频繁的内存压缩导致kswapd进程占CPU高, 怎样改善?...zRam本质就是以时间换空间, 在低内存的情况下, 肯定会比较频繁地回收内存, 这时kswapd进程是比较活跃的, 再加上通过压缩内存, 会更加消耗CPU资源。