2Sep

Neden Disk Space'i Boşaltmak Bilgisayarları Hızlandırır?

Bilgisayarlar ve çalışma biçimleri hakkında daha fazla şey öğrenirken ara sıra mantıklı görünmeyen bir şeyle karşılaşacaksınız. Bunu göz önünde bulundurarak boş disk alanı aslında bilgisayarları hızlandırır mı?Günümüzün SuperUser Q & A postasında şaşırtıcı bir okuyucunun sorusuna cevap var.

Bugünkü Soru &Yanıt oturumu bize Q & A web sitelerinin topluluk temelli bir gruplandırması olan Stack Exchange'in bir alt bölümü olan SuperUser nezaketen geliyor.

Ekran görüntüsü nchenga'nın izniyle( Flickr).

Soru

SuperUser okuyucu Remi.b, disk alanının boşaltılmasının neden bir bilgisayar hızlandırdığı izlenimini bilmek istiyor:

Bir sürü videoyu izliyordum ve şimdi bilgisayarların nasıl daha iyi çalıştığını anladım. RAM'in ne olduğunu, uçucu ve uçucu olmayan bellek ve takas sürecini anlıyorum. Ayrıca artan RAM'in neden bir bilgisayarı hızlandırdığını da anlıyorum.

Anlamadığım, disk alanını temizlemek neden bir bilgisayarı hızlandırmak gibi görünüyor. Gerçekten bilgisayarı hızlandırıyor mu? Eğer öyleyse neden bunu yapıyor?

Bir şeyleri kaydetmek için bellek alanını aramakla ya da bir şey kaydetmek için yeterince uzun bir alan yaratmak için etrafında şeyleri hareket ettirmekle bir ilgisi var mı?Sabit diskte boş alan ne kadar boş bırakmalıyım?

Boş disk alanı neden bir bilgisayarı hızlandırıyor gibi görünüyor?

Cevap

SuperUser katılımcı Jason C bize cevap veriyor:

"Neden disk alanını boşaltmak bilgisayarları hızlandırıyor?"

En azından kendi başına değil. Bu gerçekten yaygın bir efsane. Ortak bir efsanenin nedeni, sabit diskinizi doldurmanızın, geleneksel olarak bilgisayarınızı ( A) 'yi yavaşlatabilecek diğer şeylerin aynı anda gerçekleşmesidir. SSD performansı düştükçe bozulmaya eğilim gösterir, ancak bu SSD'lere özgü nispeten yeni bir konudur ve sıradan kullanıcılar için gerçekten fark edilmemektedir. Genellikle düşük boş disk alanı yalnızca kırmızı bir ringa türüdür.

Örneğin, aşağıdakine benzer şeyler:

1. Dosya parçalanması.Dosya parçalanması bir konudur ( B) , ancak boş alan olmaması, kesinlikle katkıda bulunan pek çok faktörden biri değilse de, bunun tek nedeni değildir. Buradaki bazı önemli noktalar:

  • Bir dosyanın parçalanma ihtimali, değil , sürücüde kalan boş alan miktarı ile ilgilidir. Bunlar, boş alan miktarının 'ye üst sınır koyması durumunda tahrik ünitesindeki en büyük boş alan bloğunun( yani, boş alanın "delikleri") boyutuyla ilgilidir. Ayrıca, dosya sisteminin dosya tahsisi işlemini nasıl gerçekleştirdiği ile ilgilidir( 'nin altında). Düşünün: Tek bitişik bir bloğun tüm boş alanıyla yüzde 95 oranında dolu olan bir sürücü, ( C) yeni bir dosyanın parçalanma şansı yüzde sıfırdır( ve eklenen bir dosyanın parçalanma şansı boş alantan bağımsızdır).Yüzde beş oranında dolu, ancak verinin sürücüye eşit olarak yayılmasıyla birlikte, bir parçanın parçalanması çok yüksek bir olasılığa sahip.
  • dosya parçalanmasının yalnızca parçalanmış dosyalara erişildiğinde performansı etkilediğini unutmayın. Göz önünde bulundurun: Hala çok sayıda boş "delik" bulunan güzel, birleştirilmiş bir sürücünüz var. Ortak bir senaryo. Her şey düzgün çalışıyor. Sonunda, boş alan kalmadığı bir noktaya geliyorsunuzdur. Büyük bir film indiriyorsunuz, dosya ciddi şekilde parçalanmış olarak sonuçlanıyor. Bu bilgisayar 'yi yavaşlatmaz. Başvuru dosyalarınız ve daha önce hazırlanmış olan tüm dosyalar aniden parçalanmış olmaz. Bu, filmin yüklenmesi daha uzun sürebilir( normal film bit hızları, sabit sürücü okuma hızlarına kıyasla çok az farkedilir olmasına rağmen çok düşüktür) ve film yüklenirken G / Ç bağlantılı performansı etkileyebilir ancakBundan başka hiçbir şey değişmez.
  • Dosya parçalanması kesinlikle bir sorun olsa da, etkileri genellikle OS ve donanım seviyesi arabelleğe alma ve önbelleğe alma yöntemleri tarafından hafifletilir. Gecikmeli yazmalar, okunur önlemler, Windows'daki prefetcher gibi stratejiler, parçalanmanın etkilerini azaltmaya yardımcı olur. Aslında parçalanma şiddetine gelene kadar önemli bir etkiye sahip değilsiniz( hatta takas dosyam parçalanmadığı sürece muhtemelen fark edeceğinizi söylemeye çalışacağım).

2. Arama indeksleme başka bir örnektir. Otomatik endeksleme özelliğinizin açık olduğunu ve bu işlemi dikkatli bir şekilde ele alamayan bir işletim sisteminiz olduğunu söyleyin. Dizine eklenebilen içeriği bilgisayarınıza( belgeler ve benzeri) daha fazla kaydettiğinizde, dizin oluşturma işlemi daha uzun sürebilir ve bilgisayarınızın algılanan hızını, G / Ç ve CPU kullanımında çalışırken etkilenmeye başlayabilir. Bu, boş alanla ilgili değildir, sahip olduğunuz indekslenebilir içeriğin miktarı ile ilgilidir. Bununla birlikte, boş alanın tükenmesi, daha fazla içerik saklama ile el ele gider, dolayısıyla yanlış bir bağlantı oluşur.

3. Anti-virüs yazılımı( arama indeksleme örneğine benzer).Sürücünüzün arka plan taraması yapmak için kurulmuş bir anti-virüs yazılımınız olduğunu söyle. Daha fazla taranabilir içeriğe sahip olduğunuzdan, arama, muhtemelen işinize müdahale ederek daha fazla I / O ve CPU kaynağı alır. Yine, bu taranabilir içeriğin miktarı ile ilgilidir. Daha çok içerik genellikle daha az boş alana eşittir, ancak boş alan olmaması nedendir.

4. Kurulu yazılım. Bilgisayarınızın önyükleme yaparken yüklenen bir sürü yazılım yüklediğinizi ve böylece başlangıç ​​zamanlarının yavaşladığını söylüyorlar. Bu yavaşlama, bir sürü yazılım yüklendiği için gerçekleşir. Bununla birlikte, yüklü yazılım sabit disk alanını kaplar. Bu nedenle, sabit disk serbest boşluğu bu gerçekleşir aynı zamanda azalır ve yine yanlış bağlantı yapılabilir.

5. Birlikte alındığı zaman , boş alan eksikliğini düşük performans ile yakından ilişkilendirmek için olarak görünen bu çizgideki diğer birçok örnek.

Yukarıdaki örnekte bunun yaygın bir efsane olduğu bir başka nedeni gösterilmektedir: Boş alan eksikliği, çeşitli uygulamaları yavaşlatmak, indekslenmiş veya taranmış içerikleri vb. Kaldırmak için bazen( ancak her zaman değil) yavaşlamanın doğrudan bir nedeni değildir;bu cevabın), kalan boş alan miktarı ile ilgisiz nedenlerden dolayı performansı tekrar yükseltir. Ancak bu aynı zamanda doğal olarak sabit disk alanını boşa çıkarır. Bu nedenle, yine "daha fazla boş alan" ve "daha hızlı bir bilgisayar" arasındaki açık bir( ancak yanlış) bağlantı kurulabilir.

Dikkat: Bir sürü yüklü yazılım, vb. Nedeniyle yavaş çalışan bir makineniz varsa, sabit diskinizi( tam olarak) daha büyük bir sabit sürücüye kopyalayın, daha fazla boş alan elde etmek için bölümlerinizi genişletin, makine sihirli bir şekilde hızlanmayacakyukarı.Aynı yazılım yüklenir, aynı dosyalar hala aynı şekilde parçalanır, aynı arama dizinleyicisi çalışmaya devam eder, daha fazla boş alan olmasına rağmen hiçbir şey değişmez.

"Şeyleri kaydetmek için bellek alanı aramakla ilgisi var mı?"

Hayır. Burada dikkat çekilmesi gereken iki önemli husus vardır:

1. Sabit diskiniz herhangi bir şeyi koyacak yer bulmak için etrafında arama yapmaz. Sabit diskiniz aptalca. Bu hiçbir şey değil.İşaretlediğiniz depolamanın büyük bir bloğu körü körüğe OS'unuzun söyleyeceği yerdedir ve sorulan her şeyi okur. Modern sürücüler, zamanla kazandığımız deneyime dayanarak OS'nin ne isteyeceğini öngörmek üzere tasarlanmış karmaşık önbelleğe alma ve arabelleğe alma mekanizmalarına sahiptir; bazı sürücüler, üzerlerindeki dosya sisteminin farkındadırlar;Bazen bonus performans özelliklerine sahip, yalnızca büyük bir salak tuğla gibi sür.

2. İşletim sisteminiz de işleri koyacak yer aramıyor. Aradığınız yok. Dosya sistem performansı için kritik olduğu için bu sorunu çözmek için çok çaba sarf edildi. Verilerin sürücünüzde gerçekte düzenlenmesi, dosya sisteminiz tarafından belirlenir.Örneğin, FAT32( eski DOS ve Windows PC'ler), NTFS( Windows'un daha sonraki sürümleri), HFS +( Mac), ext4( bazı Linux sistemleri) ve diğerleri."Dosya" ve "dizin" kavramı bile sadece tipik dosya sistemlerinin ürünüdür - sabit diskler dosyaları olarak adlandırılan gizemli canavarlar hakkında hiçbir şey bilmiyorlar. Ayrıntılar, bu yanıtın kapsamı dışındadır. Ancak esasen, tüm ortak dosya sistemleri, boş alan aramasının normal koşullar altında( yani, sağlıklı dosya sistemleri) gereksiz olması için kullanılabilir alanın bir sürücüde nerede olduğunu izleme yollarına sahiptir.Örnekler:

  • NTFS, $ Bitmap vb. Özel dosyaları ve sürücüyü tanımlayan çok sayıda meta verileri içeren bir ana dosya tablosuna sahiptir. Esasen, bir sonraki boş blokların nerede olduğunu takip eder; böylece yeni dosyalar her seferinde sürücüyü taramaya gerek duymadan doğrudan boş bloklara yazılabilir.
  • Başka bir örnek: Ext4'te, bitmap ayırıcı olarak adlandırılan, ext2 ve ext3'e göre temel olarak, boş blokların listesini taramak yerine boş blokların nerede olduğunu doğrudan belirlemeye yardımcı olan bir gelişme vardır. Ext4 ayrıca gecikmeli tahsisini 'yi de desteklemektedir; bu, parçalanmayı azaltmak için nereye koyacağınız konusunda daha iyi kararlar vermek için OS'ye sürücü tarafından yazmadan önce verilerin RAM'de depolanmasıdır.
  • Diğer pek çok örnek.

"Veya şeyden tasarruf etmek için yeterince uzun süre alan yaratmak için etrafında bir şeyler hareket ettirdiniz mi?"

Hayır. Bu, en azından farkında olduğum herhangi bir dosya sisteminde olmuyor. Dosyalar sadece parçalanmış olarak bitiyor.

"Bir şeyi kurtarmak için yeterince bitişik uzunlukta bir alanı oluşturmak için etrafında hareket etme" işlemi, 'yi birleştiren olarak adlandırılır. Dosyalar yazıldığında bu olmaz. Disk birleştiricinizi çalıştırdığınızda bu olur. En yeni Windows sürümlerinde, bu otomatik olarak bir programda gerçekleşir, ancak bir dosya yazarak tetiklenmez.

, 'yi bu şekilde etrafında hareket ettirmekten kaçınmak, dosya sistemi performansının anahtarıdır ve parçalanmanın neden gerçekleştiğini ve parçaların ayrı bir adım olarak neden mevcut olduğunu.

"Sabit diskte ne kadar boş alanı boş bırakmalıyım?"

Bu daha karmaşık bir sorudur( ve bu cevap çoktan küçük bir kitleye dönüşmüştür).

Kurallar:

1. Her tür sürücü için:

  • En önemlisi, için bilgisayarınızı etkin bir şekilde kullanmanız için için yeterli boş alan bırakın.Çalışmak için alanınız tükeniyorsa, daha büyük bir sürücü isteyeceksiniz.
  • Birçok disk birleştirme aracı, içinde çalışmak için minimum boş alan miktarı gerektirir( saniyede Windows'la birlikte yüzde 15, en kötü durumda gerektirir). Bu boş alanı, başka şeyler yeniden düzenlendiğinde parçalı dosyaları geçici olarak tutmak için kullanırlar.
  • Diğer OS işlevleri için yer bırakın.Örneğin, makineniz çok fazla fiziksel RAM içermiyorsa ve dinamik olarak boyutlandırılmış bir sayfa dosyası ile etkinleştirilmiş sanal belleğiniz varsa, sayfa dosyasının maksimum boyutu için yeterli alanı bırakmak isteyeceksinizdir. Veya hazırda bekletme moduna geçirdiğiniz bir dizüstü bilgisayarınız varsa, hazırda bekleme durumu dosyası için yeterli boş alana sahip olmanız gerekir. Bunun gibi şeyler.

2. SSD'ye özgü:

  • Optimum güvenilirlik için( ve daha düşük ölçüde performansı için), SSD'ler çok fazla ayrıntıya girmeden sürücüye sürekli olarak yazılmasını önlemek için veri yaymak için kullandıkları bir miktar boş alan gerektiriraynı yerde( onları giyer).Boş alan bırakma konseptine aşırı sağlama denir.Önemli olan, , ancak pek çok SSD'de zorunlu aşırı sağlanan alan zaten 'dir. Diğer bir deyişle, sürücüler OS'ye bildirdiklerinden genellikle birkaç düzine daha fazla GB'a sahiptirler. Düşük uçlu sürücüler genellikle bölümlenmemiş alanından ayrılmanızı ister, ancak zorunlu OP, olan sürücülerde boş alan bırakmanıza gerek yoktur. Burada dikkat edilmesi gereken önemli bir husus, fazla hazırlanmış alan genellikle yalnızca bölümlenmemiş alan 'den alınmış olmasıdır. Dolayısıyla bölümünüzün tüm sürücünüzü kaplaması ve üzerinde boş alan bırakmanız durumunda daima sayılmaz.Çoğu zaman, manuel aşırı sağlama işlemi, bölümünüzün sürücünün boyutundan daha küçük olması için küçülmenizi gerektirir. Ayrıntılar için SSD'nizin kullanım kılavuzuna bakın. TRIM, çöp toplama ve benzeri etkiler de var, ancak bunlar bu yanıtın kapsamı dışındadır.

Kişisel olarak, yaklaşık yüzde 20-25 boş alan kaldığında daha büyük bir sürücü kapmaktayım. Bu, performansla ilgili değil, sadece bu noktaya geldiğimde, yakında veri için yerden yeteri kadar tükeneceğim ve daha büyük bir sürücü almanın zamanı geldiğini bekliyorum.

Boş alan izlemekten daha önemli olan, zamanlanmış parçalama işleminin uygun olduğunda etkinleştirildiğinden emin olmaktır( SSD'lerde değil) böylece sizi etkileyebilecek kadar korkunç hale geldiğiniz noktaya asla gelemezsiniz.

Söz etmek gereken son bir şey var. Diğer cevaplardan biri de SATA'nın yarı çift yönlü modunun okuma ve yazmayı aynı anda engellediğini belirtti. Doğru olmasına rağmen, bu çok basitleştirilmiş ve burada tartışılan performans konularıyla çoğunlukla ilişkisizdir. Bunun anlamı, basitçe, verilerin teliyle 'nin her iki yönde aynı anda aktarılması mümkün değildir. Bununla birlikte, SATA'nın minik maksimum blok boyutlarını( telin blok başına yaklaşık 8kB, sanırım) içeren, okuma ve yazma işlemleri kuyruklarını vb. Içeren oldukça karmaşık bir özellikleri vardır ve okumalar devam ederken arabellekli oluyor arabelleklere yazmaları engellemezişlemler vs.

Oluşan herhangi bir engelleme, fiziki kaynaklar için yarışmaktan kaynaklanıyordur, genellikle bolca önbellekle hafifletilir. SATA'nın dupleks modu burada neredeyse hiç alakasızdır.

( A) "Yavaşla" geniş bir terimdir. Burada, I / O'ya bağlı olan şeyleri( yani, bilgisayarınız orada oturuyor, sayıları sabit tutuyor, hiçbir içeriğe sahip değilse) veya CPU bağlıysa ve teğet olarak alakalı şeylerle rekabet ediyorsa bunları kullanıyorumCPU kullanımı( örneğin, anti-virüs yazılımı tonlarca tarama).

( B) SSD'ler mekanik bir cihazla aynı kısıtlamaya bakmamasına rağmen sıradan erişim hızlarının genellikle rasgele erişime göre daha hızlı olması nedeniyle parçalanmadan etkilenir( parçalama olmaması bile yıpranmış tesviye nedeniyle sıralı erişimi garanti etmez,vb.).Bununla birlikte, neredeyse her genel kullanım senaryosunda, bu bir sorun değildir. SSD'lerdeki parçalanmadan kaynaklanan performans farklılıkları, yükleme uygulamaları, bilgisayarın önyüklenmesi gibi şeyler için genellikle ihmal edilebilir niteliktedir.

( C) Dosyaları kasıtlı olarak parçalamayan aklı başında bir dosya sistemi varsayıldı.

SuperUser'daki canlı tartının geri kalanını aşağıdaki linkten okuduğunuzdan emin olun!

Açıklamaya eklemek için bir şey var mı?Yorumların sesini kapatın. Diğer teknik uzman Stack Exchange kullanıcılarından daha fazla cevap okumak ister misiniz? Buradaki tam tartışma dizinine göz atın.