Ben RAM ya da RAM olduğunda takas olduğunu duydum beri merak ediyordum ve çok fazla RAM (8GB) var çünkü, çok fazla takas kötüdür ....
bir takas bölümü oluşturmazsam ne olur?
Ayrıca, hazırda bekletme için ihtiyacım var mı yoksa şart değil mi?
Ben RAM ya da RAM olduğunda takas olduğunu duydum beri merak ediyordum ve çok fazla RAM (8GB) var çünkü, çok fazla takas kötüdür ....
bir takas bölümü oluşturmazsam ne olur?
Ayrıca, hazırda bekletme için ihtiyacım var mı yoksa şart değil mi?
Yanıtlar:
Modern işletim sistemleri, RAM'in verimli bir şekilde kullanılabilmesi için takas alanı gerektirir. Sisteminizde bol miktarda RAM olsa bile, RAM israfı daha küçük bir arabellek önbelleği ile sonuçlanır, bu da artan disk G / Ç anlamına gelir. Ne kadar RAM'iniz olursa olsun, sistemin onu verimli bir şekilde kullanmasını istersiniz. Verimli bir şekilde kullanılması, erişilmesi son derece düşük olan şeyleri RAM'den çıkarmak anlamına gelir.
Tipik bir sistemi başlattığınızda, çok sayıda hizmet başlatılır. Programlar başlatma kodunu çalıştırır ve işlemdeki özel bellek eşlemelerini değiştirir. Bu hizmetlerin bir kısmı bir daha asla çalışmaz. Birçoğu saatlerce koşmayacak. Takas olmadan, işletim sisteminin bu hizmetlerle ilişkili değiştirilmiş özel bellek eşlemelerini RAM'de sonsuza kadar tutmaktan başka seçeneği yoktur. Bu hiçbir zaman disk önbelleği olarak kullanılamayacak olan RAM'dir.
Yani ihtiyacınız olsun ya da olmasın takas etmek istersiniz.
Birkaç yıldır takas olmadan bir masaüstü sistemi kullanıyorum ve çok iyi gidiyor! Farklı olan birkaç davranış vardır; bunlardan bazıları avantajlıdır ve bazıları size zarar verebilir. Her şey ne yaptığınıza bağlı.
Önemli bir fark, bellek bittiğinde sistemin nasıl davrandığıdır:
Takas bölümü yoksa, OOM katili hemen çalışır. Hafıza sızdıran bir programınız varsa, bu muhtemelen öldürülen program olacaktır. Bu olur ve sistemi neredeyse anında kurtarırsınız.
Orada ise ise swap bölümü, çekirdek takası içine belleğin içeriğini iter. Errant işlemi bellek ayırmaya devam edebilir. Bu, takas bitene kadar devam eder, büyük bir takas bölümünüz varsa on dakika ila bir saat arasında olabilir. Bunu yaparken sisteminiz taramayı yavaşlatır. Bir terminal açmak ve süreci öldürmek imkansız hale gelir. Bu olduğunda genellikle güç kablosunu çıkarırım.
Benim verilerini kaybedeceğim beri Yani, her durumda sistem Ooms, ben bir toparlanma (yüksek) şansı en az eski seçeneği tercih zaman.
Hazırda bekletme için takas gerekir, aksi takdirde gayet iyi alabilirsiniz.
Takas alanına sahip olmanın performansı olumsuz etkilediğini düşünmek yaygın bir yanlış anlamadır. Performansı ciddi şekilde etkileyen şey yeterli RAM'in olmamasıdır. Takas alanının, güvenilirliği önemsemediğiniz sürece performans üzerinde olumsuz bir etkisi yoktur. Yeterli RAM'e sahip olduğunuzu düşünseniz bile (ve RAM sıkıntısı rapor edilmediğinde) performans üzerinde olumlu bir etkisi olabilir .
Dikkate alınması gereken üç durum vardır:
1: Dahili çekirdek ihtiyaçları için yeterli RAM vardır, tüm uygulamalarınızın çalışma sayfalarını RAM'de bulundurmaları ve yine de önbellek önbelleğinin dosya sistemi sıcak verilerinin çoğunu saklaması için "ücretsiz" RAM'e sahip olmaları gerekir.
2: arabellek önbelleğinin tam olarak verimli olması için yeterli boş RAM'iniz dışında yukarıdakilerle aynı.
3: Uygulamalarınızın kullandığı sayfaları bile depolamak için yeterli RAM yok.
Bir üretim makinesi için norm olması gereken, takas alanı olan veya olmayan bir şey (en azından Linux tabanlı işletim sistemlerinde ve belleği aşırı işleyen diğer işletim sistemlerinde).
Durum 2'de, takas alanı olması , sistemin çok seyrek kullanılan sayfaları dışarıda bırakmasına ve ardından arabellek önbelleğinin rolünü daha iyi oynamasına izin vererek genel performansı artırabilir .
Durum 3'te, takas alanı olması uygulamanın sayfalama nedeniyle performans düşüşü pahasına çalışmaya devam etmesini sağlar. Öte yandan, bir takas alanının (veya yeterince geniş bir alanın) olmaması, uygulamaların rastgele çökmesine neden olur. Ayrıca, işletim sistemi ayarlarına bağlı olarak, OOM katili, kritik verilerinizi kaydetme şansı bile vermeden güçlü bir RAM talebi varsa, en çok bellek aç uygulamaları öldürmeye karar verebilir.
Bu ikinci durum, seçim yapmanız gereken bir durumdur. Yanıt süresinin çok önemli olduğu ve bir işlem / sürecin kaybedilmesinin önemli olmadığı sistemler gibi, işlemlerin öldürülmesinin tercih edilen seçenek olduğu kesinlikle bazı kullanım durumları vardır.
Ancak, çoğu durumda inanma eğilimindeyim, kullanıcı / yöneticinin RAM eksikliğini fark etmesine ve veri kaybetme riski olmadan buna göre hareket etmesine izin vermek daha iyidir.
Bir takas bölümü kullanmak istemiyorsanız, bir takas dosyası kullanabilirsiniz: normal bir dosyada depolanan ve takas alanınız olarak kullanılan bir dosya sistemi görüntüsü.
Aşağıdaki makaleler bunun nasıl yapılacağını ayrıntılı olarak açıklamaktadır:
Biraz tehlikeli ama takas alanı olmadan koşabilirsiniz. Ama nihayet sahip olduğunuz bellek miktarını aşarsanız, sisteminiz hemen haber verilmeksizin hemen çökecektir.
Takas edilen şey temel olarak hafızanız için genişletilmiş ancak çok daha yavaştır. Eğer aşarsanız takas etmeye başlayacaksınız, gerçekten hayatınızı sisteminizden çıkaracaktır .... Ancak, hatalı süreçleri öldürerek yine de sisteminizi kurtarabilirsiniz.
Bazı programlar takas alanı ayırmada (ancak kullanmamada) ısrar eder, hatırlıyorsam bunlardan bazıları veritabanı programlarıdır. Yine, takas alanı olmadığında çalıştırılabilecek programları sınırlandırabilirsiniz.
Son olarak, alanı yedeklemek zorunda değilsiniz aslında SWAP UCUZ bakın. (Sistemlerini yedekleyen bu seçkin sistem yöneticilerinden biri olduğunuzu umuyorum).
Öyleyse yarat.
Başparmak kuralım 2 * bellek boyutundaydı ..... ama şimdi 1 * bellek boyutunda birçok durumda iyiyim ama genellikle 1.5 * (bellek boyutu) kullanıyorum. Bu kadar büyük bir miktar yaratmak zorunda değilsiniz, ama ben ... özellikle yaptığınız herhangi bir üretim türü varsa.
Oh evet, ve hazırda bekletme için, toplam bellek görüntüsünü tutmak için takas GEREKİR. Ve böylece h8ibernation düşünüyorsanız boyutu AT EN AZ (1 * bellek boyutu) + 100MB olmalıdır. 100 MB süreçte gerekli ek yük için.
Linux takas bellek baskısı olur olmaz oldukça zor bir gereksinim var gibi görünüyor. Belirti, neredeyse tüm RAM aktif işlemler tarafından kullanılıyorsa, sistemin sert durması ve sabit diskin vahşi çalıştığıdır.
Neden?
Yedek dosyası olmayan sayfalar (genellikle dinamik bellek ayırmadan) takas olmadığında RAM'den çıkarılamaz. Çekirdek, aslında yakında tekrar ihtiyaç duyulsalar bile, bir destek dosyası olan sayfalara başvurur. e. takas olmadan bile çöp!
Bu ince sorun hakkında daha fazla ayrıntı için bu blog yayınına bakın.
Sonuç : Her zaman takas edin.
Ve kaba bir kılavuz olarak boyut için, çok fazla RAM'e sahip sistemler için bile, hazırda bekletmediğinizi varsayarsak, 4 ila 8 GB arasında bir şey kullanın. Daha fazla ayrıntı için Red Hat'in takas alanı hakkındaki belgelerine bakın .