Nowy sposób formatowania HDD
W najbliższym czasie będziemy świadkami największej od 30 lat zmiany w metodach formatowania dysków twardych. Pozwoli to na udoskonalenie technologii, jednak użytkownicy starszych systemów operacyjnych mogą mieć w związku z tym kłopoty.
Dyski twarde są obecnie formatowane w bloki o wielkości 512 bajtów. Taki format został przejęty z dyskietek i spopularyzowany przez IBM-a.
Sprawdzał się on dobrze do czasu, gdy HDD miały stosunkowo niewielkie pojemności. Jednak dzielenie przestrzeni dyskowej na tak małe bloki oznacza spore straty w pojemności urządzenia. Każdy taki bloczek zawiera znacznik informujący o jego początku oraz przestrzeń zarezerwowaną na korekcję błędów. Ponadto pomiędzy poszczególnymi bloczkami należy zostawić nieco przestrzeni. W dużych dyskach twardych przy takim formatowaniu sporo miejsca jest przeznaczanych na potrzeby samego HDD lub w ogóle marnowane. Dlatego też postanowiono, że od początku 2011 roku dyski będą formatowane w 4-kilobajtowe sektory. Pozwoli to kilkukrotnie zmniejszyć ilość marnowanego miejsca, a jednocześnie zapisać w sektorze dwa razy więcej informacji potrzebnych do korekcji błędów. Dzięki takim zabiegom na dysku z 4-kilobajtowymi sektorami użytkownik będzie mógł zapisać od 7 do 11 procent więcej danych.
Tutaj pojawia się problem dla posiadaczy starszych wersji systemów operacyjnych, takich jak np. Windows XP. Pojawiły się one bowiem jeszcze zanim zdecydowano o nowym sposobie formatowania. Dlatego też nowe dyski, z 4-kilobajtowymi sektorami, gdy będą używane ze starszymi OS-ami, wykorzystają wbudowane mechanizmy, emulujące działanie dysku z 512-bajtowymi sektorami. Na codzień emulacja ta powinna przebiegać niezauważenie, jednak w pewnych okolicznościach niekorzystnie odbije się to na wydajności HDD, który może pracować nawet o 10% wolniej.
Problem z nowymi dyskami nie będzie dotyczył użytkowników Windows 7, Windows Vista, OSX Tiger, Leopard i Snow Leopard oraz Linuksa z jądrem opublikowanym po wrześniu 2009 roku.
Komentarze (20)
Alek, 9 marca 2010, 13:59
A czy taką zmianę można przeprowadzić samodzielnie i przed 2011 sformatować dysk w nowy sposób?
mikroos, 9 marca 2010, 13:59
Ale po co, skoro w 2012 koniec świata?
Jurgi, 9 marca 2010, 14:12
Dlaczego miałem wrażenie, że większe sektory używane są od dawna?
Poza tym, w czym problem w napisaniu sterownika pod WinXP, czy inny system? Chyba że to kolejny sposób wymuszania kupna nowszych wersji.
Michał Wolak, 9 marca 2010, 15:26
państwo pozwolą, że wyjaśnię.
nie żaden "bloczek" tylko SEKTOR. większe sektory nie są używane od dawna, kolega ma na myśli KLASTRY, składające się z takiej ilości sektorów, jaką się ustali podczas formatowania.
sektor jest fizycznie najmniejszym obszarem zapisu informacji na dysku i rzeczywiście posiada na początku znacznik a na końcu sumę kontrolną. dzięki zwiększeniu wielkości sektora zmniejsza się liczba tych znaczników i sum kontrolnych, stąd oszczędność miejsca.
teraz owacje na stojąco, kurtyna.
Mariusz Błoński, 9 marca 2010, 16:30
Rzuciłem okiem na udostępnione dokumenty dotyczące tego tematu i wychodz na to, że nie. To kwestia fizycznej konstrukcji dysku. Ale przemysł umówił się, że HDD z 4-kilobajtowym sektorem będzie wyposażone w mechanizmy emulujące tak długo, jak długo OS-y i aplikacje nie będą potrafiły samodzielnie tego obsługiwać. Wszystko wskazuje na to, że co najmniej do 2013 na rynek będą trafiały HDD z taką emulacją.
de0, 9 marca 2010, 16:32
"Dlatego też postanowiono, że od początku 2011 roku dyski będą formatowane w 4-kilobajtowe sektory."
no nie wiem na ile jest w tym prawdy (zwłaszcza w stwierdzeniu "postanowiono"). przede wszystkim nie 4kb sektory tylko własnie 4 kb bloki danych. przynajmniej tak to działa w istniejącym już od jakiegoś czasu ext4.
wilk, 9 marca 2010, 17:50
Nie myl klastrów/bloków z sektorami.
gravisrs, 9 marca 2010, 19:52
Oczywiście nikt nie wspomina, że takie dyski będą bardziej "awaryjne".
Chyba nie trzeba nikomu tłumaczyć co będzie jeżeli zaczniemy obcinać długość sum kontrolnych (lub wydłużać bloki danych zachowując obecną długość sum).
Z tą pojemnością też nie będzie tak różowo. Co z tego, że zaoszczędzimy na przestrzeni adresowej skoro najmniejszy plik w systemie (nawet zerowy) będzie miał 4k.. w zasadzie każdy plik będzie zaokrąglany w górę do wielokrotności 4k...
Ostatecznie okaże się, że nasze dyski mają 10% więcej pojemności, ale przy okazji są bardziej awaryjne a Windows jakimś cudem też spuchnie o te 10%..
witrak(), 9 marca 2010, 20:41
W oryginalnej wiadomości napisano:
"Pozwoli to kilkukrotnie zmniejszyć ilość marnowanego miejsca, a jednocześnie zapisać w sektorze dwa razy więcej informacji potrzebnych do korekcji błędów."
witrak()
--
"Lepiej milczeć i wyglądać na głupca niż odezwać się i rozwiać wszelkie wątpliwości"
czesiu, 9 marca 2010, 22:23
Myślę, że niektóre osoby dały się zwieść tytułowi, w końcu zmianie ulegnie nie tyle formatowanie dysku co sama budowa. Na dysku były bloczki po 512bajtów teraz będą po 4kb, reszta tak jak zauważył wiatrak()
Dyski twarde już od dawna nie są formatowane na system plików 512b ze względu na związane z tym rozmiarem klastrów ograniczenie rozmiaru partycji.
wilk, 9 marca 2010, 23:22
Czyli nie inaczej niż jest obecnie. Klastry w NTFS mają domyślnie 4kB. W FAT16/32 wahały się w zależności od typu systemu plików i rozmiaru partycji od 512B-64kB. Czyli nawet 1 bajtowy plik zajmował kilka(naście) kilobajtów. (http://support.microsoft.com/kb/140365/pl)
Możliwe, że z powodu wzrostu rozmiaru sektorów zniknie też potrzeba klastrowania systemu plików (klastry zmniejszały fragmentację oraz obciążenie mechanizmu).
Tutaj trzeba rozróżnić formatowanie niskopoziomowe (opisane w artykule) od wysokopoziomowego (pod dany system operacyjny - opisane przez Ciebie).
czesiu, 10 marca 2010, 12:55
A czy ja twierdzę coś innego? zresztą nawet formatowaniem niskopoziomowym nie zmienisz struktury fizycznej dysku twardego.
wilk, 10 marca 2010, 14:13
No nie zmienisz, trudno by było jak. Tylko, że nie wiem po co mieszać w to klastry, co już jako pierwszy zaznaczył p. Michał Wolak.
czesiu, 10 marca 2010, 14:31
Tylko po to, aby zasugerować, że tytuł jest mylny dla sporej części społeczeństwa, co widać w komentarzach następujących po p. Michale Wolaku... zresztą odnosiłem się do de0(w mniejszym stopniu) czy (w większym stopniu)gravisrs-a
Tolo, 10 marca 2010, 15:42
Tak czytam to co tu piszecie i aż postanowiłem skorzystać z funkcji przypomnienia hasła.
Artykuł dotyczy czegoś co powinniśmy nazwać preformatowaniem. Formatowanie niskopoziomowe to raczej czasy dysków MFM. Później już się tego nie dało zrobić. chociaż funkcjonowało coś co było zwnane Low Level Format jednak w tym kontekście było to formatowanie "sredniopoziomowe" to znaczy po fizycznych sektorach bez interwencji w ich strukturę. Dziś można identyczne efekty osiągnąć poprzez zerowanie dysku. Nazwanie tego procederu z artykułu formatowaniem jest mylące bo w zasadzie wykonywanie jest tylko raz i to w fabryce, dodatkowo podczas tego procederu głowica jest pozycjonowana przez system zewnętrzny ponieważ właśnie wtedy nanoszone są dane które umożliwiają głowicy pozycjonowanie w przyszłosći.
Rozmiar sektora jest dość umowny to znaczy raczej powinniśmy mówić o użytecznej pojemności sektora, w rzeczywistości zajmuje on troszkę więcej placu, chociażby właśnie więcej o dane wykorzystywane przez dysk do pozycjonowania.
Problem niekompatybilności bierze się z stąd ze klaster nie może być mniejszy od sektora bo logicznie będziemy adresować przestrzeń fizycznie nie adresowalną (fizycznie w pewnym uproszczeniu). I dla tego stare systemy mogą mieć z tym porblem. A dysk będzie wewnętrzne emulował starą strukturę mapując ja na nową, to może nie być wydajne, bo de facto powstanie kolejna warstwa logiczna po drodze. Już fizyczna struktura klasów jest mocno naciągną i umowna dzięki chociażby mechanizmowi relokacji uszkodzonych sektorów. Generalnie to co myślimy ze się dzieje na dysku jest dość mocną abstrakcją tego co tam się dzieje w rzeczywistości.
Dwukrotnie więcej danych korekcyjnych nie jest potrzebne obywatelowi do szczęścia tylko dyskowi do funkcjonowania. Ze względu na ciągły wzrost gęstości zapisu dyski coraz bardziej będą odczytywać coś na kształt danych które dopiero po dodatkowej obróbce staną się na powrót tym co tam zapisaliśmy.
gravisrs, 19 marca 2010, 12:50
Pojemność sektora zwiększa się 8x, długość sum kontrolnych tylko 2x. Stosunkowo sumy kontrolne są krótsze. Zamiast obrażać przedmówców polecam zapoznanie się z podręcznikiem do matematyki.
--
Matematyka na maturze powinna być obowiązkowa.
gravisrs, 19 marca 2010, 12:55
Tak, ale można je formatować na 512, a teraz już nie będzie można... tzn będzie teraz wątpliwa pod względem efektywności emulacja dla klastrów < 4kb.
Eselix, 23 marca 2010, 18:05
Zależność między długością sumy kontrolnej a długością chronionych danych nie jest liniowa. W CRC np. jest to coś koło 2n, gdzie n to długość sumy kontrolnej. Czyli (teoretycznie) przy 512 B potrzebna jest suma kontrolna o długości 9 bitów, wystarczy 3 bity więcej i możemy chronić 4 kB. Wszystko zależy od zastosowanego algorytmu i ile błędów chcemy korygować "w locie". Więc dwa razy to znaczne zwiększenie bezpieczeństwa danych.
Jurgi, 24 marca 2010, 12:23
No właśnie, a jakie algorytmy się stosuje w HDD? Bo CRC to jest już cokolwiek archaiczna. Stosowano ją choćby w dyskietkach co najmniej od końca lat siedemdziesiątych, a możliwe, że wczesniej.
Eselix, 25 marca 2010, 12:09
W mojej poprzedniej wypowiedzi wkradł się błąd: powinno być tam bajtów a nie bitów. Co do HDD to tutaj piszą, że stosuje się kodowanie Reeda-Solomona.