Canonical今天宣布,将于4月发布的Ubuntu22.04LTS版本将进一步降低硬件配置要求。内存不再需要4GB以上,2GB就完全可以使用了。官方展示了只有2GB内存的树莓派4,已经成功运行Ubuntu22.04。这种优化背后的秘密是Zswap。我们知道,无论是Windows还是Linux,当剩余内存容量不足时,系统都会通过虚拟内存(交换文件)将内存数据暂时存放在硬盘上,但是硬盘的读写速度却远低于硬盘那个记忆。跑得很慢,口吃。zswap可以看作是一个压缩工具,在线程要转为分页文件的时候进行压缩,检查新的小文件是否可以保留在内存中或者是否需要转入虚拟内存,解压Zswap文件要快很多比从虚拟内存中读取,大大提高了小内存设备的系统响应速度。Linux内核默认支持Zswap,默认是关闭的。启用它的命令是:$sudosed-i-e's/$/zswap.enabled=1/'/boot/firmware/cmdline.txt但是,Ubuntu22.04默认会启用这个功能。包含在所有RaspberryPi4设备上。此外,Ubuntu22.04还增加了另外两个小的内存优化机制,一个是名为z3fold的分配器,可以增加压缩对象的数量,二是lz4压缩算法,在压缩率和压缩速度之间取得了更好的平衡。
