LBA i wielkość sektora

11

Czy LBA zawsze określa sektory jako 512 bajtów, nawet jeśli dysk jest sformatowany sektorami 4K? Ponieważ przeczytałem, że powinieneś sformatować granice partycji, aby klastry 4K były zgodne z sektorami 4K. Zakładam, że ten problem powstaje, jeśli dysk jest sformatowany sektorami 4K, ale LBA przypisuje go co 512 bajtów. Czy to jest powód? Czy jest również powód, dla którego logiczna geometria napędu różni się od fizycznej geometrii napędu - aby zachować zgodność wsteczną ze starymi standardami i ograniczeniami z CHS? Jeśli zgłoszona przez napęd geometria nie jest dokładna, dlaczego partycje nadal muszą zaczynać się w sektorze 63 (jeśli nie jest to już zawsze właściwy cylinder)?

I czy klastry są wyrównane z początkiem partycji lub początkiem dysku?

rubiksibuc
źródło

Odpowiedzi:

10
  • Czy LBA zawsze określa sektory jako 512 bajtów, nawet jeśli dysk jest sformatowany sektorami 4K?

Tak, wiele kodu na świecie napisano w czasach wyłącznej dominacji sektorów 512-bajtowych. Ten kod nie obsługuje żadnego innego rozmiaru sektora, więc sprzęt BIOS / dysk zawsze emuluje sektory 512-bajtowe, niezależnie od rzeczywistego rozmiaru sektora. W przeciwnym razie 95% systemów operacyjnych po prostu nie uruchomiłoby się z takich dysków.

  • Czy jest również powód, dla którego logiczna geometria napędu różni się od fizycznej geometrii napędu - aby zachować zgodność wsteczną ze starymi standardami i ograniczeniami z CHS?

W systemie adresowania CHS istnieją granice. 1 ≤ S ≤ 63, 0 ≤ H ≤ 255 (a czasami 0 ≤ C ≤ 1023). To jest powód, dla którego geometria logiczna istnieje i różni się od geometrii fizycznej.

  • Jeśli zgłoszona przez napęd geometria nie jest dokładna, dlaczego partycje nadal muszą zaczynać się w sektorze 63 (jeśli nie jest to już zawsze właściwy cylinder)?

Od systemu Windows Vista FDISKtworzy pierwszą partycję w sektorze LBA 2048 (wyrównanie 1M). Może mieć dowolne współrzędne CHS; nie mają już znaczenia.

W Windows XP i wcześniejszych wersjach pierwsza partycja została utworzona w sektorze CHS (C = 0, H = 1, S = 1), który zwykle jest mapowany na sektor LBA 63 (jeśli logiczna geometria tego dysku ma 63 sektory na ścieżkę). Niektóre dyski flash USB mają logiczną geometrię z 32 sektorami wirtualnymi na ścieżkę, więc dla nich pierwsza partycja rozpoczyna się w sektorze LBA 32. W każdym razie wszystko to nie ma nic wspólnego z faktyczną geometrią dysku, względami wydajności itp. - to czysta tradycja zakończona w systemie Vista / Windows 7.

  • Czy klastry są wyrównane z początkiem partycji lub początkiem dysku?

Klastry są zawsze wyrównane z początkiem partycji. Mogą więc być niedopasowane na dysku, jeśli partycja została utworzona w wersji starszej niż Vista FDISKi sama nie jest wyrównana.

Michaił Kupczik
źródło
6

Sam LBA może mieć zastosowanie do dowolnego rozmiaru sektora, ale rozmiary sektorów dysku twardego były 512 bajtów od początku komputera, a cały sprzęt i oprogramowanie zostało na stałe zakodowane przy takim założeniu. Zamiast więc czekać na nowe systemy i systemy operacyjne obsługujące sektory 4K, dysk pojawi się na zewnątrz jako 512-bajtowy dysk sektorowy.

CHS nie działa od czasu wprowadzenia LBA48 w 2003 roku. CHS jest ograniczony do 128 GB, więc każdy dysk większy niż ten rozmiar nie obsługuje CHS (spójrz na nowoczesny dysk; nie będzie miał wartości CHS na etykiecie ). W przypadku, gdy cały sprzęt i systemy operacyjne zostały już zaktualizowane (Windows 98 dodał obsługę LBA).

Nawet w przypadku CHS właściwości dysku fizycznego nie zgadzały się z wartościami CHS. Poważnie, żaden dysk twardy nie miał 255 głowic. Sterownik napędu konwertuje wewnętrznie wartości CHS na LBA.

Partycje nie muszą zaczynać się od sektora 63 - to stare ograniczenie DOS. DOS wymagał, aby partycja nie dzieliła granicy cylindra, a CHS ma 63 sektory dla cylindra. Microsoft do Windows XP zdecydował się zachować zgodność z DOS (możliwe było podwójne uruchomienie Windows 98, ME i XP na partycji FAT32). Aż do sektorów 4K nie było z tym problemu.

Na koniec, aby odpowiedzieć na twoje pytanie: klastry są wyrównane z początkiem partycji, a nie z dyskiem. Dlatego ważne jest, aby twoja partycja była odpowiednio wyrównana na granicy sektora.

shf301
źródło