- zram, RAM'de takas alanı veya ultra hızlı diskler gibi davranan sıkıştırılmış blok aygıtları oluşturarak disk erişimlerini azaltır ve performansı artırır.
- Debian, Ubuntu ve türevlerinde, kurulu RAM miktarına göre sıkıştırma algoritmasını ve boyutunu ayarlayarak zram-tools ile zram'ı etkinleştirmek kolaydır.
- zram-config veya zram-generator gibi araçlar, birden fazla zram aygıtının oluşturulmasını ve bunların systemd ile entegrasyonunu otomatikleştirir.
- Yüzde veya sabit boyut arasında seçim yapmak ve disk takasından ziyade zram'e öncelik vermek, dengeli ve verimli bir yapılandırma sağlar.

GNU/Linux'u günlük olarak kullanıyorsanız ve bilgisayarınızın performansından en iyi şekilde yararlanmak konusunda endişeleriniz varsa...Er ya da geç, zRAM kavramıyla karşılaşacaksınız. Sınırlı RAM'e sahip birçok kullanıcı, aynı anda birden fazla kaynak yoğun uygulama açarken takılmalar, ara sıra donmalar veya yavaş performans sorunları yaşıyor. Geleneksel olarak çözüm, sabit sürücüde bir takas bölümü kullanmayı içeriyordu, ancak günümüzde çok daha hızlı ve verimli alternatifler mevcut.
Zram, Linux çekirdeğinin sunduğu küçük hazinelerden biridir.Bu özellik, ultra hızlı takas alanı veya geçici diskler olarak kullanılmak üzere doğrudan RAM'de sıkıştırılmış blok aygıtları oluşturmanıza olanak tanır. Doğru şekilde yapılandırıldığında, hem mütevazı sistemlerde (4-8 GB RAM) hem de 16 veya 32 GB RAM'e sahip daha güçlü makinelerde büyük bir fark yaratabilir; disk erişimlerini azaltır, çökmeleri önler ve genel sistem performansını iyileştirir.
ZRAM nedir ve klasik takas işlemine kıyasla performansı neden artırır?
zram, RAM'de sıkıştırılmış blok aygıtları oluşturan bir Linux çekirdek modülüdür.Başka bir deyişle, RAM'de bir tür "sanal disk" oluşturur ve bu disk üzerinde takas alanı veya hatta bir dosya sistemi oluşturulabilir. Bu cihaza yazılan veriler, CPU kullanılarak anında sıkıştırılır ve bellekte saklanır, bu nedenle sıkıştırma olmadan olduğundan daha az yer kaplar.
Buradaki temel fikir, RAM'in herhangi bir HDD veya SSD'den çok daha hızlı olmasından faydalanmaktır.Sistem fiziksel belleği tükenmeye başladığında, bellek sayfalarını yavaş bir diske boşaltmak yerine, bunları zRAM'e sıkıştırır. Sıkıştırma ve açma işlemlerinde bir miktar CPU kullanımı kaybı olsa da, erişim hızındaki kazanımlar fazlasıyla telafi edilir ve disk aşınması azalır; bu da özellikle SSD'ler için önemlidir.
Bu mekanizma başlangıçta compcache olarak biliniyordu.Zamanla evrim geçirerek bugünkü adı olan zram ile çekirdeğe entegre edildi. Bugün, Linux'ta on yıllardır gördüğümüz geleneksel takas bölümüne çok ciddi bir alternatif (ve birçok dağıtımda tercih edilen seçenek) olarak kabul ediliyor.
En belirgin pratik avantajlardan biri, "aşırı" durumlarda performanstaki iyileşmedir.Örneğin, Fedora çalıştıran dizüstü bilgisayarlarda yapılan testlerde, disk takasından zRAM üzerinden takasa geçilerek, Proton ile çalışan bazı zorlu oyunların (Doom 2016 gibi) aynı donanımda sadece 6-7 fps'den yaklaşık 20 fps'ye çıktığı görüldü. Bu sadece takas stratejisinin değiştirilmesiyle oldu. Bu sihir değil; sadece takasın artık nispeten yavaş bir diskte değil, sıkıştırılmış RAM'de olmasıyla gerçekleşiyor.
Bu yaklaşımın, bol miktarda belleğe sahip modern bilgisayarlar için de avantajları vardır.16 veya 32 GB RAM ile takas belleğine ihtiyacınız olmadığını düşünebilirsiniz, ancak gerçek şu ki, zram'de sıkıştırılmış bir tampon belleğe sahip olmak, onlarca sekme açık olan tarayıcıları, sanal makineleri, ağır editörleri veya oyunları açtığınızda akıcılığı korumaya yardımcı olur ve sistemin işlemleri sonlandırmasını veya takılmasını önler.
ZRAM bugün nerede kullanılıyor ve hangi dağıtımlar onu zaten içeriyor veya kullanımını kolaylaştırıyor?
Birçok dağıtımcı, klasik takasın yerine veya tamamlayıcısı olarak ZRAM'a güçlü bir bağlılık göstermiştir.En bilinen örneklerden biri, varsayılan olarak yalnızca disk üzerindeki bir takas bölümüne güvenmek yerine, zRAM yerine takas belleğine öncelik vermeye karar veren Fedora'dır. Bu değişiklik, sınırlı belleğe sahip dizüstü ve masaüstü bilgisayarlarda kullanıcı deneyimini önemli ölçüde iyileştirmiştir.
Debian ve Ubuntu dünyasında yaklaşım yıllar içinde değişti.Debian 10 (Buster) ve Debian 11 (Bullseye) ile Ubuntu 20.04 LTS ve sonrası, zram'ı belirli paketler (örneğin zram-tools veya zram-generator) kullanarak kolayca yapılandırmanıza olanak tanır. Ayrıca, Ubuntu genellikle özel bir bölüm yerine disk üzerinde bir takas dosyası kullanır; bu da zram'a geçmeye karar verirseniz takas alanını devre dışı bırakmayı büyük ölçüde kolaylaştırır.
Hatta diğer dağıtımlar zram'ı kurulum dosyalarına entegre ettiler.Örneğin, Arch Linux, rehberli yükleyicisi olan archinstall üzerinden zram'ı doğrudan etkinleştirme seçeneği sunar. Sistem yapılandırmasında zram yerine takas belleğini kullanacak şekilde ilgili seçeneği seçmeniz yeterlidir; bu seçenek, oldukça makul varsayılan parametrelerle çalışır ve bazı kullanıcılar bunu kendi sistemlerini ince ayar yapmak için referans olarak bile kullanır.
Masaüstü bilgisayarların ötesinde, zram mobil cihazlarda ve gömülü sistemlerde de kullanılmaktadır.Android ve Ubuntu Touch, sınırlı belleğe sahip akıllı telefonlarda biraz nefes alma alanı kazanmak için bundan yararlanır: RAM çok değerli bir kaynaktır ve içeriğinin bir kısmını sıkıştırma yeteneği, ham fiziksel belleğin normalde izin verdiğinden daha zorlu uygulamaların çalıştırılmasına olanak tanır. Bazı hafif masaüstü dağıtımları da bunu varsayılan olarak içerir.
Masaüstü bilgisayarlar veya 16-32 GB RAM'e sahip mini bilgisayarlar gibi yeterli RAM'e sahip sistemlerdeKurulum sırasında takas bölümü oluşturmamak ve sıkıştırılmış takas mekanizması olarak yalnızca zram kullanmak giderek daha yaygın hale geliyor. Bu, sistemin takas için disk alanı ayırmaya gerek kalmadan sorunsuz çalışmasını sağlar; takas alanı çoğu durumda nadiren kullanılır.
Temel kavramlar: takas alanı, blok aygıtları ve RAM'deki sanal diskler.
Zram'ın ne yaptığını tam olarak anlamak için, takas (swap) ve blok aygıtları olmak üzere iki kavramı gözden geçirmek faydalı olacaktır.GNU/Linux'ta "neredeyse her şey bir dosyadır" ve donanım aygıtları da istisna değildir: /dev içinde özel dosyalar olarak temsil edilirler. Sabit disk, SSD, SD kart veya USB flash sürücü, farklı temel teknolojiler kullanmalarına rağmen, sistemin aynı arayüzle eriştiği blok aygıtları olarak görünür.
Blok aygıtı geleneksel bir dosya sistemi içerebilir.Örneğin ext4, XFS, btrfs vb. gibi dosya sistemleri, normal kullanıcı erişimi için bir bağlama noktasına bağlanabilir. Ancak bu soyutlama, RAM diskleri gibi herhangi bir fiziksel donanımla ilişkili olmayan blok aygıtlarının oluşturulmasına da olanak tanır. Bunlar, sistemin "disk" gibi gösterdiği ve diğer sürücüler gibi biçimlendirilip bağlanabilen RAM bellek alanlarıdır.
Takas alanı ise, RAM tükendiğinde sistemin sanal belleği tarafından kullanılan alandır.Geleneksel olarak, takas alanı bir diskte (bir bölüm veya dosyada) bulunur. Çekirdek RAM'i boşaltması gerektiğinde, daha az aktif bellek sayfalarını bu takas alanına taşır. Sorun şu ki, disk erişimi RAM erişiminden kat kat daha yavaştır; bu nedenle, bir sistem takas alanına agresif bir şekilde sayfalama yapmaya başladığında, çok belirgin bir yavaşlama ortaya çıkar.
Zram'ın ardındaki fikir, iki dünyanın en iyi yönlerini bir araya getirmektir.Bu işlem, RAM içinde "sahte" bir blok aygıtı oluşturmayı ve ona yazılan verileri sıkıştırmayı içerir. Bu, daha fazla kullanılabilir belleğe sahip olmaya benzer bir etki yaratır (çünkü sıkıştırılmış veriler daha az yer kaplar) ve darboğaz disk yerine işlemci haline geldiği için RAM ile neredeyse aynı hızda çalışır. Bu, özellikle sıkıştırma ve açma maliyetinin oldukça yönetilebilir olduğu, iyi bir işlemciye sahip sistemlerde kullanışlıdır.
Ayrıca, bir diğer belirgin avantaj da RAM'in aşınmamasıdır.SSD'lerde takas belleği kullanmak, sınırlı bir ömre sahip bir depolama ortamına sürekli yazma işlemi gerektirir; zram ile ise tüm takas işlemleri bellek içinde gerçekleşir, disklere zarar vermez veya özel disk alanı gerektirmez. Bu nedenle, dizüstü bilgisayar ve SSD kullanan giderek daha fazla kullanıcı, takas belleğini zram üzerinde yapılandırmayı ve birçok durumda disk takasını tamamen devre dışı bırakmayı tercih etmektedir.
ZRAM'deki sıkıştırma algoritmaları: lz4, zstd, lzo ve diğerleri.
Genel olarak, aşağıdaki performans sırası genellikle kabul edilir.Sıkıştırma ve açma hızı açısından bakıldığında, lz4 genellikle en hızlısıdır, onu zstd ve ardından lzo takip eder. Sıkıştırma oranı (yani veri boyutunu ne kadar azalttığı) açısından ise zstd genellikle kazanır, onu lzo ve ardından lz4 takip eder. Bu, zstd'nin daha fazla sıkıştırma yaptığı ancak lz4'ten biraz daha yavaş olduğu, lz4'ün ise yıldırım hızında performans için sıkıştırma oranından ödün verdiği anlamına gelir.
Birçok masaüstü senaryosunda zstd mükemmel bir denge sunar.lz4'ten daha iyi sıkıştırma sağlar (bu nedenle RAM'i daha fazla "genişletir") ve genellikle modern makinelerde yeterince hızlıdır. Bu nedenle, bazı yöneticiler ve ileri düzey kullanıcılar, donanım çok işlemci sınırlı olmadığı ve her döngünün önemli olmadığı sürece, zram'ı birincil algoritma olarak zstd kullanacak şekilde yapılandırmayı önerir.
Mevcut ve seçilen algoritma, sistemin içinde görüntülenebilir. Zram modülü yüklendiğinde, /sys/block/zram0/comp_algorithm dosyasının içeriğini kontrol etmek, çekirdeğin şu anda hangi algoritmaları desteklediğini ve hangisinin aktif olduğunu gösterecektir. Bu bilgi, zram-tools gibi araçların bazı yapılandırma dosyalarında da yorum satırı olarak yer almaktadır.
Her durumda, algoritma seçimi genellikle sık sık değişiklik gerektirmez.Genellikle izlenen yöntem, birini (örneğin, zstd veya lz4) seçmek, ayarlarda varsayılan olarak bırakmak ve özellikle titizseniz, sisteminizde bazı performans testleri yapmaktır. Çoğu kullanıcı, algoritmalar arasındaki ince farklılıklardan bağımsız olarak, zram'ı etkinleştirerek belirgin bir iyileşme fark edecektir.
Debian, Ubuntu ve türevlerinde zram-tools ile zram'ı etkinleştirin.
Debian, Ubuntu ve birçok APT tabanlı türevinde zram'ı etkinleştirmenin en kolay yolu zram-tools paketini kullanmaktır.Bu paket, zram'ın takas alanı olarak nasıl kullanılacağını kolayca tanımlamanıza olanak tanıyan bir hizmet ve merkezi bir yapılandırma dosyası sağlar. Debian 10, Debian 11, Ubuntu 20.04, Ubuntu 22.04 ve yakın sürümlerinde iyi çalışan, denenmiş ve test edilmiş oldukça standart bir yöntemdir.
İlk adım, terminalden ilgili paketi yüklemektir.sudo veya root hesabı kullanılarak. Bu dağıtımlarda tipik komut şu şekildedir:
sudo apt install zram-tools
zram-tools yüklendikten sonra, anahtar dosya /etc/default/zramswap konumundadır.Sıkıştırma algoritması, toplam zram boyutu ve diğer takas belleklerine göre önceliği gibi parametreler burada tanımlanır. Herhangi bir değişiklik yapmadan yeniden başlatırsanız, sistem genellikle varsayılan olarak az miktarda zram oluşturur (örneğin, 250 MiB), bu da günümüzdeki gerçekçi masaüstü kullanımı için genellikle yetersizdir.
Ayarları ihtiyaçlarınıza göre düzenlemek için, o dosyayı favori editörünüzle düzenlemeniz gerekir.Grafik arayüzü tercih edenler sudo ile Geany gibi bir araç kullanabilirken, konsol ortamını tercih edenler genellikle nano veya benzeri araçları kullanır. Örneğin:
sudo nano /etc/default/zramswap
Bu dosya içerisinde çeşitli açıklamalı bölümler bulacaksınız. Bunlar mevcut seçenekleri açıklıyor. Genellikle sıkıştırma algoritması hakkında bir bölüm, zram'e ayrılacak RAM yüzdesi hakkında bir bölüm, MiB cinsinden statik bir boyut belirleme seçeneği ve takas için öncelik seçeneği bulunur. Biçim sürümler arasında biraz farklılık gösterebilir, ancak temel kavram aynıdır.
Zram üzerindeki takas alanının algoritmasını ve boyutunu bilgisayarın RAM'ine göre ayarlayın.
En önemli ayarlamalardan biri uygun sıkıştırma algoritmasının seçilmesidir.zram-tools'da genellikle ALGO= gibi bir satır bulunur; bu satır yorum satırı haline getirilmiş veya varsayılan bir değere (çoğunlukla lz4) sahiptir. RAM'inizi daha iyi kullanmak istiyorsanız ve işlemciniz aşırı derecede sınırlı değilse, bunu zstd kullanacak şekilde değiştirebilirsiniz; bu da aşağıdaki gibi bir sonuç doğurur:
BİR ŞEY=zstd
İkinci önemli parametre ise zram'e ne kadar alan ayrılacağıdır.İki yaygın strateji vardır: toplam RAM'in yüzdesini yapılandırmak veya MiB cinsinden belirli bir miktar belirlemek. Bazı örneklerde, yüzdeyi tanımlamak için PERCENT veya PERCENTAGE gibi değişkenler kullanılır (örneğin, RAM'in yarısı için 50), dosyanın diğer sürümlerinde ise sabit bir boyutu belirtmek için SIZE veya ALLOCATION gibi bir değişken kullanılır.
Yüzde olarak bir oran tercih ederseniz, 4-8 GB RAM'e sahip sistemlerde çok yaygın bir yapılandırma, belleğin yaklaşık %50-70'ini ayırmaktır. Bir zram. Örneğin:
YÜZDE=50
Veya bazı yapılandırma varyasyonlarında: YÜZDE=50. Bu şekilde, 8 GB RAM'e sahip bir bilgisayarda, zram'e sıkıştırılmış yaklaşık 4 GB takas alanı oluşturulur; bu da çoğu masaüstü bilgisayar için genellikle yeterlidir ve fiziksel sınırlara çok yaklaşmaktan kaçınır.
Yeterli RAM'e sahip makinelerde, genellikle statik bir boyut tanımlamak daha mantıklıdır.Çok yüksek bir yüzdeye izin vererek orantısız miktarda zram üretmek yerine, SIZE veya ALLOCATION (MiB cinsinden) gibi değerler kullanılabilir. Bazı yöneticiler, örneğin, 8 GB'tan fazla RAM'e sahip sistemler için 4096 MiB (4 GiB) ve 16 GB'tan fazla RAM'e sahip sistemler için 8192 MiB (8 GiB) zram kullanılmasını ve kalan belleğin sıkıştırılmamış bırakılmasını önermektedir.
32 GB belleğe sahip bir bilgisayarda gerçek dünyadan bir örnek şöyle olabilir: ALGO=zstd ve SIZE=4096, zstd kullanarak zram'de 4 GB takas alanı ayırır. Bazı kullanıcılar, genellikle yaklaşık 4 GB zram ayıran 32 GB'lık makineler için Arch Linux'taki archinstall yükleyicisini referans olarak kullanır; diğerleri ise çok sayıda sanal makine veya büyük konteyner çalıştırıyorlarsa 8 GB'a kadar çıkmayı tercih eder.
Bu yapılandırma dosyası genellikle oldukça ayrıntılı açıklamalar içerir. Mevcut seçenekler ve resmi çekirdek dokümantasyonuna yapılan atıflar konusunda, her değişkenin ne işe yaradığını anlamak için bu yorumları dikkatlice okumak iyi bir fikirdir. Hangi değeri ayarlayacağınızdan emin değilseniz, ihtiyatlı davranın: 4 GB ile başlayıp daha sonra artırmak, sıkıştırma işlemi verileri önemli ölçüde azaltmadığında yeterli RAM'iniz kalmamasına neden olabilecek aşırı büyük boyutlara doğrudan geçmekten daha iyidir.
Mevcut disk takas işlemlerinin ve takas önceliklerinin yönetimi
Zram'ı etkinleştirdiğinizde, tanımladığınız disk takas alanını kontrol etmeniz önemlidir.Birçok Debian ve Ubuntu kurulumu, kurulum sırasında bir takas bölümü oluşturur veya Ubuntu'nun daha yeni sürümlerinde kök dosya sisteminde bir takas dosyası oluşturur. Bunları devre dışı bırakmazsanız, hem RAM'de sıkıştırılmış takas hem de diskte takas alanı elde edersiniz ve çekirdek, önceliklerine göre hangisini kullanacağına karar verir.
Çok fazla RAM'e sahip bilgisayarlarda (örneğin, 16 veya 32 GB), birçok kullanıcı takas bölümünü veya disk dosyasını tamamen devre dışı bırakmayı tercih eder.Bu durumlarda, takas işlemi için yalnızca zram'e güvenilir; bu da yavaş disk erişimini önler ve SSD'lerdeki aşınmayı azaltır. Eğer Debian veya Ubuntu sisteminiz diskte bir takas bölümü oluşturmadıysa (örneğin, kurulum sırasında bunu atladıysanız), /etc/fstab dosyasında hiçbir şeye dokunmanıza gerek yoktur.
Eğer takas bölümünüz varsa, /etc/fstab dosyasını düzenleyerek devre dışı bırakabilirsiniz. ve bu takasın montaj noktasına karşılık gelen satıra yorum yapılması. Tipik prosedür şu şekildedir:
sudo nano / etc / fstab
Takas bölümüne atıfta bulunan satırı bulun. (genellikle takas türüyle) ve başına # ekleyerek yorum satırı haline getirin. Değişiklikleri kaydettikten ve yeniden başlattıktan sonra, sistem artık bu takas diskini kullanmayacak ve zram'e odaklanacaktır. Genel bir kural olarak, yalnızca 4 GB RAM'e sahip sistemlerde takas diskini ek bir yedekleme olarak tutmak iyi bir fikir olabilirken, 6-8 GB ve üzeri sistemlerde yalnızca zram ile de gayet iyi çalışabilirsiniz.
Zram yapılandırma dosyasında, aygıt önceliğini de ayarlayabilirsiniz.Bu işlem, PRIORITY gibi bir seçenek kullanılarak yapılır. swapon komutu, her takas alanına sayısal öncelikler atamanıza olanak tanır; sayı ne kadar yüksekse, çekirdek o takas alanını o kadar çabuk kullanır. Zram'e HDD veya SSD'deki herhangi bir takas alanından daha yüksek bir öncelik vermek mantıklıdır; bu sayede RAM'deki hızlı takas alanı önce tüketilir ve ancak gerekirse disk takas alanı kullanılır.
İstediğiniz zaman hangi takas işleminin aktif olduğunu ve hangi sırayla kullanıldığını kontrol etmek isterseniz...`swapon --show` komutunu kullanabilirsiniz. Bu komut, takas aygıtlarını, boyutlarını, mevcut kullanımlarını ve önceliklerini gösteren bir tablo görüntüler. Bu, zram yapılandırmanızın beklendiği gibi çalıştığını ve sistemin bundan gerçekten yararlandığını doğrulamak için hızlı bir yoldur.
systemd zram-generator kullanarak zram'ı sıkıştırılmış RAM diski olarak kullanma
zram-tools'un yanı sıra, systemd kullanan modern sistemlerde çok güçlü bir başka seçenek daha var: zram-generator.Bu paket, /etc/systemd dizinindeki yapılandırma dosyalarını kullanarak zram aygıtlarını tanımlamanıza olanak tanır ve bunları ext4 gibi dosya sistemleriyle biçimlendirilmiş hem takas alanı hem de genel amaçlı diskler olarak kullanmanıza imkan sağlar.
Ana yapılandırma dosyası genellikle /etc/systemd/zram-generator.conf'tur.Birçok kurulumda varsayılan olarak mevcut değildir, bu nedenle manuel olarak oluşturmanız gerekecektir. Alternatif olarak, /etc/systemd/zram-generator.conf.d/ dizininde, yapılandırma "parçacıkları" görevi gören ve varsa ana dosyanın bölümlerini üzerine yazan bir veya daha fazla *.conf dosyası içeren bir yapı oluşturabilirsiniz.
Sözdizimi, , , vb. gibi isimlere sahip bölümlere dayanmaktadır. Numaralandırma 0'dan başlar ve böylece ilk aygıt, ikinci aygıt ve benzeri şekilde tanımlanır. Her bölümde, zram-tools'da görülenlere benzer parametreler ayarlanabilir, ancak systemd ve disk kullanımına özgü bazı ek seçenekler de bulunur.
En ilgi çekici seçenekler arasında sıkıştırma algoritması yer alıyor.Bu, sıkıştırma algoritmasını seçmenize olanak tanır (örneğin, zstd, lz4, lzo-rle, vb.). Belirtilmediği takdirde, sistem çoğu durumda lzo-rle olan çekirdek varsayılanını kullanır. Ayrıca, bellek yönetimini optimize etmek için kullanılmayan sıkıştırılmış sayfaların yürütme sırasında kesilmesine neden olan `discard` gibi bağlama veya takas parametrelerini geçirmek için bir `options` yönergesi de vardır.
İlgili bir diğer yönerge ise writeback-device'dir.Gelişmiş senaryolar için tasarlanan bu seçenek, etkili bir şekilde sıkıştırılamayan sayfaları depolamak için bir aygıt belirlemenize ve bunları zram'den ayırmanıza olanak tanır. Bu yapılandırma masaüstü bilgisayarlarda daha az yaygındır, ancak sıkıştırılmış bellek ve yedek depolamayı birleştirmek istediğiniz çok kısıtlı ortamlarda faydalı olabilir.
Zram'ı sıkıştırılmış bir RAM diski olarak kullanmak istiyorsanız, dosya sistemi türü ve bağlama noktası devreye girer.`fs-type` ile dosya sistemini (örneğin, ext4) ve `mount-point` ile zram aygıtının bağlanacağı dizini tanımlarsınız. Bu, örneğin, ağır derlemeler, geçici verilerin işlenmesi veya uygulama önbelleklemesi için yararlı olan, RAM'e ultra hızlı, sıkıştırılmış geçici bir dizin bağlamanıza olanak tanır.
Birden fazla zram aygıtı oluşturarak aynı aygıtta farklı kullanım alanlarını bir arada kullanmak mümkündür.zram0 takas alanı, zram1 ise ext4 ile monte edilmiş bir disk olarak yapılandırılmıştır. Bazı pratik örneklerde, örneğin, zram0'ın yalnızca sistemde belirli bir miktardan (örneğin, 9 GB) fazla RAM varsa oluşturulacağı ve her aygıtın 2 GB'a kadar fiziksel bellek kullanabileceği yapılandırılır; böylece zram'ın maksimum tüketimi ayarlanır ve sıkıştırma beklenenden daha az etkili olduğunda çok fazla RAM tüketmesi önlenir.
zram-config'in pratik kontrolleri ve otomatik davranışı
Bazı araçlar, örneğin zram-config (bazı Ubuntu türevlerinde kullanılır), yapılandırmanın büyük bir bölümünü otomatikleştirir.Bu paket yüklendikten sonra, varsayılan olarak zram'ı oluşturur ve yapılandırır, bu da minimum kullanıcı müdahalesi gerektirir. Yeniden başlatmanın ardından, sistem zram aygıtları yüksek öncelikli takas bellekleri olarak kullanıma hazır halde başlar.
Bu otomatik yapılandırmaların yaygın stratejilerinden biri, her CPU çekirdeği için bir zram aygıtı oluşturmaktır.Bu, sıkıştırma ve açma yükünün birden fazla iş parçacığı arasında dağıtılmasını sağlayarak çok çekirdekli işlemcilerden daha iyi yararlanmayı mümkün kılar. Örneğin, dört çekirdekli bir sistemde, çekirdeğin paralel olarak kullanabileceği benzer boyutlarda dört adet zram aygıtı (zram0, zram1, zram2, zram3) görürsünüz.
ZRAM'in toplam boyutu genellikle fiziksel RAM'in yaklaşık yarısı olarak ayarlanır.Dolayısıyla, 8 GB RAM'e sahip bir makinede, varsayılan yapılandırmalar çeşitli aygıtlar arasında dağıtılmış yaklaşık 4 GB zRAM üretebilir. Bu miktar genellikle sıkıştırmadan yararlanmak ile sistemde iyi sıkıştırma yapmayan işlemler için yeterli alan bırakmamak arasında iyi bir denge sağlar.
Bu zram aygıtlarına atanan öncelik genellikle disk takasından daha yüksektir.Bu, sistemin öncelikle sıkıştırılmış RAM takas alanını kullanmasını ve diski yalnızca son çare olarak kullanmasını sağlar. Bu tercih, `swapon --show` komutuyla doğrulanabilir; burada sayısal öncelikleri görebilir ve zram'ın geleneksel takas dosyasına veya takas bölümüne göre öncelikli olduğunu teyit edebilirsiniz.
Zram'ın tam yapılandırmasını ve gerçek kullanımını kontrol etmek için birkaç kullanışlı komut mevcuttur.Örneğin, `cat /proc/swaps` komutu, zram dahil olmak üzere tüm aktif takas alanlarını, boyutlarını ve ne kadarının kullanıldığını gösterir. Ayrıca, mevcut sıkıştırma algoritması veya tüketilen fiziksel bellek miktarı ile mantıksal olarak ayrılan bellek miktarı gibi ayrıntılı istatistikler ve gelişmiş parametreler için `/sys/block/zram*/` dizinini inceleyebilirsiniz.
Pratikte, zram doğru şekilde yapılandırıldıktan sonra, kullanıcının genellikle müdahale etmesine gerek kalmaz.İşletim sistemi, hangi sayfaların zRAM'e taşınacağına, ne zaman sıkıştırılacağına ve ne zaman serbest bırakılacağına karar verir. Kaynak yoğun programlar kullanıyorsanız veya birçok uygulama açıyorsanız, makinenin bellek yetersizliğinden dolayı yavaşlamaya veya işlemleri kapatmaya başlamadan önce daha iyi performans gösterdiğini fark edeceksiniz.
Linux'ta zram üzerinden takas belleği yapılandırmak, mevcut belleği daha verimli kullanmanızı sağlar.İster 4-8 GB RAM'e sahip bir dizüstü bilgisayarınız, ister 32 GB RAM'e sahip bir masaüstü bilgisayarınız olsun; disk erişimlerini azaltın ve genel sistem akışını iyileştirin. Boyut, algoritma ve öncelik seçeneklerini anlayarak, bu işlevselliği kendi zevkinize göre ayarlayabilir ve hayatınızı zorlaştırmadan en iyi şekilde kullanabilirsiniz.
Genel olarak bayt ve teknoloji dünyası hakkında tutkulu bir yazar. Bilgilerimi yazarak paylaşmayı seviyorum ve bu blogda da bunu yapacağım; size gadget'lar, yazılım, donanım, teknolojik trendler ve daha fazlasıyla ilgili en ilginç şeyleri göstereceğim. Amacım dijital dünyada basit ve eğlenceli bir şekilde gezinmenize yardımcı olmaktır.
