Bölümleri “hizalamak” ne demektir?


Yanıtlar:


15

Bölümü hizalamak, onu gerçek, altta yatan blok yapısına uyacak şekilde hizalamak anlamına gelir.

Uzun bir süredir sabit diskler 512 bayt blok kullanmıştır. Bu uzun süredir devam ettiği için blok boyutunu değiştirmek neredeyse imkansız. Çok fazla yazılımın düzeltilmesi gerekir.

Bir SSD'de gerçek blok boyutu 128 KB olabilir. Bir RAID dizisinde 64 KB olabilir. Gelişmiş formatlı bir sürücüde 4 KB olacaktır.

Geriye dönük uyumluluk için sürücü 512 baytlık bloklarla çalışmaya devam eder. Ancak performans nedenleriyle, sisteminiz gerçek blok boyutunu gerçekten bilmelidir .

En kolay performans ayarlarından biri, işletim sisteminiz 4 KB veya 64 KB veya 128 KB yazdığında tam bir blok yazması için sürücü bölümünü gerçek blok boyutuyla hizalamaktır.

Bölüm hizalanmamışsa, sonuç ilk bloğa 512 bayt ve ikinci bloğa 4K - 512 bayt yazmak, disk / SSD / RAID'i bir yazma yerine iki okuma-değiştirme-yazma döngüsü yapmaya zorlar .



@AnkurTank: Hayır, oradaki soru iyi örtülmüş görünüyor.
Zan Lynx

İlginiz için teşekkür ederim, kalan tek şey bölümlerin hizalandığını nasıl doğrulayacağınız. Çünkü benim için ayrıldı hala bölümlerin hizalanmadığından şikayet ediyor. Ayrıca gdisk gibi başka bir araç kullanmayı denedim, ancak gdisk'i derleyemiyorum. Bu yüzden nasıl yardımcı olacağını doğrulamak için herhangi bir öneriniz varsa düşündüm.
ART

3

Bölümler blok dizileridir ve uzun süredir devam eden bir kuralla bir blok 512 bayttır.

Bu nedenle, bir disk, çok uzun bayt dizesi olarak "görülen" bir disk içindeki 512 baytın herhangi birinden başlayabilir.

Bununla birlikte, başlangıçta aynı 512 bayt sektör boyutuna sahip olan temel disk donanımı artık verimlilik için daha büyük bir boyut kullanıyor. Diyelim ki 4096 bayt.

Uyumluluk nedenlerinden dolayı, işletim sistemi ve donanım arasındaki sabit yazılım hala "sektörlerde konuşuyor". Böylece ilk sektöre soruyorsunuz ve donanım ilk bloğu (4096 bayt) alır ve bellenim uygun dilimi çıkarır ve sunar. İkinci blok sorulur ve blok büyük olasılıkla önbellekten alınır.

Şimdiye kadar sektör büyüklüğü uyumsuzluğunun eksileri yoktur.

Ancak işletim sistemi de verimlilik için bloklar (genellikle kümeler olarak adlandırılır ) kullanır ve bunları bölüme hizalar. Böylece 5, 6, 7 ve 8. sektörlerden oluşan 4 sektörlü bir kümelenme olacaktır.

İşletim sistemi dosya sistemi kümesi # 2 istediğinde, ürün yazılımı mantıksal sektörler 5, 6, 7 ve 8'i ister. Hepsi aynı disk bloğundaysa, disk BİR okuma gerçekleştirmelidir.

Ancak bölüm "yanlış" sektörde başlarsa, dosya sistemindeki ilk küme, 2, 3, 4 ve 5. sektörlerde basitleşerek sonuçlanır ve bu durumda ilk disk bloğunun yarısı olabilir (1 -2-3-4), ikincisinin yarısı (5-6-7-8).

Şimdi fazladan bir okumaya ihtiyacınız var . 1: 1 OS-disk oranları için bu, okumaların iki katına çıkarılmasıyla aynıdır. İşletim sistemi-disk oranı 2: 1 ise, bir küme iki donanım disk bloğudur, 2 + 1 = 3 okumaya ihtiyacınız olacak,% 50 ceza:

OS   |--- cluster  12 ---|--- cluster  13 ---|--- cluster  14...
     |                   |                   |
HDD  --|----|----|----|-a--|--b-|-c--|-d--|-e--|----|---        BAD
     |                   |                   |
HDD  |----|----|----|----|-a--|--b-|-c--|-d--|----|----|---     GOOD

Yukarıda bir küme, her biri 2 sektörden oluşan 4 donanım bloğudur (4: 1 oranı). "Eşit" sektörlere uyum sağlamak, bu 8 sektör okumasını bir küme okumak için 4 blok okumasına çevirmek anlamına gelir. Garip sektörlere uyum sağlamak, aynı 8 sektör okumasının 4 + 1 = 5 blok okumayı,% 25 performans cezasını gerektirdiği anlamına gelir (her dörtünde bir okuma eklersiniz).

4: 1 oranına sahip yanlış hizalanmış bir diskiniz varsa, bunu hizalamak diski% 20 daha hızlı hale getirir (her 5 okumada bir kaydedersiniz).

Bir bölümü "hizalı" yapmak için, ofsetini diskin başından 512b kesimin uygun katına taşıyabilir / ayarlayabilir veya (araca bağlı olarak) diskin başına küçük bir bölüm ekleyebilir, öyle bir büyüklükte ki, bir sonraki bölüm tam olarak bir disk sektörü sınırında başlar. Bu ikinci durumda, teoride en fazla N-1 sektörüne, yani çok az kilobayta ihtiyaç duyarken, pratikte muhtemelen en fazla performansı sıkmak için yüz kilobaytı, muhtemelen tam megabayt harcamanız gerekecektir. çoklu gigabayt sabit disk.

(OS küme boyutunu uygun şekilde seçerek bu alanı ve çok daha fazlasını kurtarabilirsiniz ).


1
Okumalar o kadar da kötü değil, evet biraz fazla veri okumak zorundasınız, ancak üç bitişik bloğu okumak iki kitabı okumaktan çok daha fazla zamana mal olmaz. Asıl sorun, temel blok boyutundan daha küçük bir bölüm yazmak, verilerin okunmasını, diskin tam bir revoloution döndürmesini ve daha sonra yeniden yazılmasını beklemesidir.
plugwash

1
Ayrıca, fazladan bölümler oluşturmaya gerek yoktur, diskteki tüm alanların bölümlendirilmesi gerektiğine dair bir kural yoktur.
plugwash

2

Sürücüler neredeyse her zaman 512 baytlık mantıksal sektörlere ayrılır, diğer boyutlar mümkündür, ancak uyumluluk sorunları nedeniyle nadiren kullanılır. Daha eski sabit disklerde bunlar ayrı ayrı yazılabilen ayrı sektörlerdi.

2000'lerin ortalarına kadar bölümler geleneksel olarak "silindir" sınırlarına hizalandı. Tarihsel nedenlerden ötürü, bir "silindir" normalde 63 sektördür. Sektör 0'da önyükleme sektörü ve parition tablosu bulunmaktadır. Silindir 0'daki daha sonraki sektörler bazen önyükleyici için ek bilgi tutar. İlk bölüm tipik olarak silindir 1'in başlangıcında başladı.

Çoğu dosya sistemi sektörleri daha büyük bloklar halinde gruplandırır (bazen "kümeler" olarak da adlandırılır). Bunlar genellikle 4KiB boyutundadır.

Bir noktada sürücü satıcıları, 4K fiziksel sektörleri de kullanmanın daha verimli olacağına inandılar, ancak uyumluluk nedeniyle mantıksal sektör boyutunu 512 baytta tuttular. Ev sahibi, tüm fiziksel sektörü bir kerede okur veya yazarsa, işler hızlıdır. Eğer okuma kısmı sürücü hala istenmeyen verileri atabilir gibi şeyler hala oldukça hızlı. Ancak, ana bilgisayar fiziksel bir sektörün yalnızca bir bölümünü yazarsa, sürücünün fiziksel sektörü okuması, okunan verileri ana bilgisayardaki verilerle birleştirmesi ve daha sonra değiştirilen sektörü yeniden yazması gerekir. Bu, sürücünün bir kez yerine iki kez dönmesini beklemek anlamına gelir.

Dosya sisteminin 4K kümeleri sürücünün 4K fiziksel sektörleriyle hizalanmışsa, bu işe yarar. Maalesef geleneksel disk bölümleme yöntemi, ilk bölümün temelde yanlış hizalanmış olması ve daha sonraki bölümlerin hizalanma şansının sadece 1'de 1 olması anlamına gelir. Bu nedenle, gelişmiş biçimli sürücülerin tedarikçileri, insanların parition'larını yeniden hizalamasına yardımcı olmak için araçları acele etmek zorunda kaldı.

Baskın dizileri ve SSD'ler için de aynı hususlar geçerlidir. Bir baskın şeridi tek bir dosya sistemi kümesinden çok daha büyük olsa da, bazı dosya sistemlerinde iki sınırın gücüne göre hizalanmış bölgeler veya benzeri olabilir.

Mevcut normal uygulama, parition'ları, tüm ortak blok boyutlarının katı olacak kadar büyük bir güç olan 1MiB sınırlarına hizalamaktır.



0

Bu yararlı olursa, ancak benim anlayışım, bölüm hizalamanın belirli bir bölümü altta yatan bir RAID şerit birimleriyle hizalamanızdır.

Görünüşe göre, donanım tabanlı bir RAID veya yazılım tabanlı kullandığınızda performans düşebilir; bölümün başlangıç ​​konumu RAID üzerinde oluşturulan disk bölümündeki şerit birimi sınırıyla hizalanmadığında sorunlar oluşabilir.

Hacim kümeleri oluşturma faktörüne bağlı olarak, şerit birimi sınırının yanında şerit birimi sınırı üzerinde bir birim kümesi oluşturulabilir. Bu davranış, yanlış hizalanmış bir bölüme neden olabilir .

Ben yoldan olabilir ve bu RAID ile ilgisi olmayabilir;)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.