Источник: Memory Compression
Frank Hofmann, Mandy Neumeyer · Выпуск 215/2018
Оперативная память (RAM) используется для хранения данных текущих операций. RAM имеет сверхкороткое время доступа, но стоит сравнительно дорого. Кроме того, объём RAM нельзя наращивать бесконечно: плата поддерживает только определённый объём памяти и предлагает лишь фиксированное число слотов для неё. К тому же модули памяти для старых устройств иногда трудно достать.
Вместо того чтобы добавлять в компьютер больше RAM, можно пойти другим путём — уместить больше данных в уже имеющуюся RAM. Современные компьютеры настолько быстры, что сжатие данных «на лету» практически не влияет на общее время выполнения. Сжатие данных начиналось как технология архивирования данных на жёстких дисках, но его можно применять и к данным в оперативной памяти.
Три метода — zram, zswap и zcache — предоставляют три реализации, расширяющих сжатие содержимого на RAM. Эти возможности попали в основную ветку ядра [1] в версии 3.14, но не получили широкого повседневного применения. Только Android 4.4 и Knoppix 7 и новее активируют zram по умолчанию.