Neden 'Boyut' ile 'Diskteki Boyut' arasında Büyük Bir Fark Var?
Çoğu zaman, 'Boyut' ve 'Diskteki boyut' değerleri bir klasör veya dosyanın boyutunu kontrol ederken eşleşmeye çok yakın olacak, fakat ikisi arasında büyük bir tutarsızlık varsa? Bugünün Süper Kullanıcı Soru-Cevap yazısı bu kafa karıştırıcı sorunun cevabına bakıyor.
Bugünün Soru ve Cevap oturumu bize topluluk tarafından yönlendirilen bir soru-cevap web sitesi grubu olan Stack Exchange'in bir alt birimi olan SuperUser'ın izniyle geliyor..
Soru
SuperUser okuyucu thelastblack, telefonunun SD kartındaki bir klasör için 'Boyut' ile 'Diskteki Boyut' arasında neden bu kadar büyük bir fark olduğunu bilmek istiyor:
Aşağıda görebileceğiniz gibi, bu klasör için 'Boyut' ile 'Diskteki Boyut' alanları arasında çok fazla fark var. Neden?
Windows’taki ayırma birimleri nedeniyle disk Diskteki Boyut’un Size Boyut’tan biraz daha fazla olması gerektiğini biliyorum, ancak neden bu kadar fark var? Çok sayıda dosya nedeniyle olabilir?
BTW, bu klasör Android telefonumun SD kartında. Bunun içinde haritalar uygulamam önbelleğe alınmış haritaları saklar ve uygulama haritaları Google Haritalar'dan alır..
Ekran görüntüsüne baktığımızda, 'Boyut' ile 'Diskteki Boyut' arasında kesinlikle büyük bir tutarsızlık var.?
Cevap
SuperUser yazarı Bob, bizim için cevabı var:
Burada FAT / FAT32 dosya sistemini kullandığınızı varsayacağım, çünkü bunun bir SD kart olduğunu söylüyorsunuz. NTFS ve exFAT, tahsis birimleri bakımından benzer şekilde davranır. Diğer dosya sistemleri farklı olabilir, ancak yine de Windows'ta desteklenmiyorlar.
Çok sayıda küçük dosyanız varsa, bu kesinlikle mümkündür. Bunu düşün:
- 50.000 dosya
- FAT32 için en fazla olan 32 KB küme boyutu (ayırma birimleri)
Tamam, şimdi asgari Alınan alan 50.000 * 32.000 = 1.6 GB'dir (matematiği basitleştirmek için SI öneklerini kullanarak, ikili değil). Her dosyanın diskte aldığı alan her zaman ayırma birimi boyutunun bir katıdır - ve burada her dosyanın gerçekte bir (boşa harcanan) alan bırakarak tek bir ünite içine sığacak kadar küçük olduğunu varsayıyoruz..
Her bir dosyanın ortalaması ortalama 2 KB ise, toplam 100 MB alırsınız - ancak tahsis birim büyüklüğü nedeniyle ortalama olarak 15x (dosya başına 30 KB) harcıyorsunuz.
Derinlemesine Açıklama
Bu neden oluyor? Peki, FAT32 dosya sistemi her dosyanın nerede saklandığını takip etmelidir. Her bir baytın bir listesini tutacak olsaydı, tablo (bir adres defteri gibi) verilerle aynı hızda büyür ve boşa harcardı. Bu yüzden yaptıkları şey “küme büyüklüğü” olarak da bilinen “ayırma birimleri” kullanmaktır. Birim bu tahsisat birimlerine ayrılmıştır ve dosya sistemi söz konusu olduğunda, alt bölümlere bölünemezler - bunlar ele alabileceği en küçük bloklardır. Tıpkı bir ev numaranız gibi, ancak postaneniz kaç yatak odası bulunduğunu veya içlerinde kimin yaşadığını umursamıyor.
Peki, çok küçük bir dosyanız varsa ne olacak? Peki, dosya sistemi, dosyanın 0 KB, 2 KB veya 15 KB olmasına rağmen umursamaz - en düşük alanı verir - yukarıdaki örnekte, bu 32 KB'dir. Dosyanız bu alanın yalnızca küçük bir kısmını kullanıyor ve geri kalanı temelde boşa harcanıyor, ancak hala dosyaya ait - boş bıraktığınız bir yatak odası gibi.
Neden farklı tahsisat birimleri var? Eh, daha büyük bir masaya sahip olmak (adres defteri, örneğin, John'un 123 Sahte Sokak, 124 Sahte Sokak, 666 Şeytan Şeridi, vb. Bir evin sahibi olduğunu söylemek gibi) veya her birimde (ev) daha fazla boşa alan arasında bir takas olur . Daha büyük dosyalarınız varsa, daha büyük ayırma birimleri kullanmak daha mantıklıdır - çünkü bir dosya diğerlerinin tümü doluncaya kadar yeni bir birim (ev) alamaz. Çok sayıda küçük dosyanız varsa, yine de büyük bir masaya (adres defteri) sahip olacaksınız, bu yüzden onlara küçük birimler (evler) de verebilir..
Büyük tahsis birimleri, genel bir kural olarak, çok sayıda küçük dosyanız varsa, çok fazla alan israf edecektir. Genel kullanım için 4 KB'ın üstüne çıkmak için genellikle iyi bir neden yoktur..
parçalanma?
Parçalanma gelince, parçalanma bu şekilde yer israf etmemelidir. Büyük dosyalar parçalanabilir, yani birden fazla tahsis birimine bölünebilir, ancak her bir birim bir sonraki başlamadan önce doldurulmalıdır. Birleştirme, ayırma tablolarında küçük bir alan kazandırabilir, ancak bu sizin sorununuz değil.
Muhtemel çözümler
Gladyatör2345'in önerdiği gibi, bu noktadaki tek gerçek seçeneğiniz onunla yaşamak veya daha küçük tahsis birimleriyle yeniden biçimlendirmek.
Kartınız, masa boyutunda daha küçük bir limite sahip olan ve bu nedenle daha büyük bir birime hitap etmek için çok daha büyük ayırma birimleri gerektiren FAT16'da biçimlendirilmiş olabilir (32 KB ayırma birimleriyle 2 GB üst sınırı ile). Kaynak Braiam'ın izniyle. Bu durumda, yine de FAT32 olarak güvenle formatlanabilmelisiniz..
Açıklamaya eklemek için bir şey var mı? Yorumlarda ses kesiliyor. Diğer teknoloji meraklısı Stack Exchange kullanıcılarından daha fazla cevap okumak ister misiniz? Burada tüm tartışma konusuna göz atın.