Można długo i bezowocnie dyskutować na temat “czy i co właściwie daje defragmentacja dysku”… dla mnie wystarczy że zdefragmentowany od czasu do czasu dysk po prostu “mniej rzęzi” (co jednocześnie oznacza że np. dysk w laptopie jest cichszy i mniej się grzeje).
Pytanie więc brzmi: czym defragmentować dysk?
Oczywiście można użyć wbudowany w system “defragmentator dysku”. I tak właściwie w większości przypadków powinno to wystarczyć aby “mieć jakikolwiek porządek”. Lepsze to niż nic w każdym razie.
Do tego o ile XP nie ma nic typu “automatyczna defragmentacja”, o tyle Vista ma zaplanowane “cykliczne włączanie systemowego defragmentatora” – może nie jest to defragmentacja w locie (bo nie jest), ale przynajmniej defragmentator uruchamia się od czasu do czasu nawet bez ingerencji użytkownika (gorzej jeśli uruchomi się w czasie, kiedy coś intensywnie korzysta z dysku).
Krokiem do przodu jest zainstalowanie jakiegokolwiek defragmentatora. W XP systemowy defragmentator to mocno okrojona wersja programu Diskeeper… więc czemu nie zainstalować Diskeepera? Do dziś można znaleźć darmową wersję Diskeeper 7 Lite (kliknij aby wyszukać), wystarczy go pobrać, zainstalować i używać (wiem że działa pod XP, nie wiem jak z Vistą).
Jednak to wciąż nie jest nic “znacząco ponad to, co oferuje systemowy defragmentator”.
Dlatego też zacząłem szukać komercyjnego defragmentatora…
Pierwszym, naturalnym krokiem było sprawdzenie “co to właściwie jest ten Diskeeper”.
Diskeeper 2008
www.diskeeper.com
Aktualna wersja to Diskeeper 2008 – różni się on od wersji darmowej dość znacznie. Ze strony można pobrać 30-dniową wersję demo.
Po pierwsze wersja 2008 znacznie sprawniej defragmentuje pliki (czytaj: nie zostawia żadnych pofragmentowanych plików, o ile na dysku mamy w ogóle jakieś wolne miejsce) oraz konsoliduje wolną przestrzeń (czytaj: umieszcza spójny blok wolnej przestrzeni na końcu dysku), co wersji Lite nie zawsze wychodzi…
A propo wolnego miejsca jeszcze – kiedyś aby zdefragmentować dysk trzeba było mieć nawet 20% wolnej przestrzeni na dysku (inaczej defragmentator systemowy nie chciał się w ogóle włączyć)… dziś wystarczy nawet skromne 1% (sic!).
Poza tym wersja 2008 oferuje dwie “ciekawe” funkcje… tyle że o ile pierwsza z nich jest bardzo użyteczna, to druga jest bezużyteczna.
Pierwsza z tych funkcji to “defragmentacja w tle”. Nie jest to “defragmentacja w locie” jak na OS X – polegająca na tym, że każdy sfragmentowany plik o wielkości poniżej 10MB zostaje w czasie odczytu przeniesiony przez system do pierwszego znalezionego “ciągłego” fragmentu wolnej przestrzeni. Tu polega ona na tym, że Diskeeper 2008 działa w tle i kiedy system nie jest niczym zajęty, rozpoczyna on cichą defragmentację – przenosi i defragmentuje pliki, konsoliduje wolną przestrzeń etc. Co ciekawe wcale nie trzeba zostawiać kompa włączonego na noc żeby to działało – w czasie jednego popołudnia, kiedy siedziałem przy kompie i robiłem to co zwykle robię (www, muzyka, pisanie jakiegoś tekstu), zdefragmentowały mi się trzy dyski… fajnie.
Druga funkcja to dostępna w wersji Professional a niedostępna w wersji Home “Frag Shield”. W skrócie polega to na tym, że MFT (tablica plików) zostaje “na siłę” powiększona do “rekomendowanej” wielkości wynoszącej pojemnosci 12,5% dysku (normalnie ma wielkość taką, “jaka jest potrzebna”, a pozostała przestrzeń do tych 12,5% jest “tymaczasowo zajęta, ale w każdej chwili może się zwolnić”). Co oznacza że na dzień dobry tracimy np. 12GB ze 100GB partycji niezależnie czy mamy na niej 1 czy 10000 plików. Proces ten jest nieodwracalny (trzeba sformatować partycję i nie włączać “Frag Shield”)… podziękuję.
Na koniec należy jeszcze zauważyć jaką “filozofię defragmentacji” przyjmuje Diskeeper. Wygląda to tak, że plik umieszczany jest w “pierwszym dostępnym wolnym miejscu o wielkości danego pliku” (nie są więc układane ani “folderami” ani “datami”), zaś pliki nie są umieszczane “ultraściśle” – czasem zostaje pomiędzy nimi trochę miejsca, więc wolna przestrzeń nie jest w 100% ciągła. Poza tym Diskeeper “ocenia” czy defragmentacja dużego pliku da “znaczący przyrost wydajności” – oznacza to że lekko sfragmentowany “duży” plik (1GB i więcej) może pozostać sfragmentowany. Jednakże daje to – wraz z defragmentacją w tle – całkiem niezłe rezultaty, ponieważ dane nie są przenoszone “na siłę”.
Diskeeper może oczywiście zdefragmentować dysk na życzenie, ale jest to proces “dość powolny” w porównaniu do innych defragmentatorów (o których niżej). Jest tak z powodu jego “wieloprzebiegowej” defragmentacji – nie defragmentuje on dysku “kolejno od początku do końca” tylko “co się akurat da”. Dzięki temu nie jest on “zbyt wymagający” jeśli chodzi o zasoby systemowe (zwłaszcza po włączeniu opcji “wstrzymuj defragmentację przy jakiejkolwiek aktywności dysku ze strony użytkownika”), więc jego “siła” tkwi w defragmentacji w tle.
Dysk po defragmentacji wygląda więc zwykle tak (i w podobnym porządku jest utrzymywany przez defragmentację w tle):
Na koniec Diskeeper posiada jeszcze jedną opcję, którą posiadał do tej pory jedynie jego konkurent… o czym może poniżej…
PerfectDisk 2008
www.raxco.com
Dostępna jest oczywiście wersja demo.
Opcją dostępną dotychczas jedynie w PerfectDisku była “defragmentacja w czasie uruchamiania systemu”. Co to daje? Pozwala to na defragmentację plików, które normalnie są “zablokowane przez system”, czyli: pliku wymiany, plik hibernacji (tu zapisywana jest zawartość pamięci podczas hibernacji), MFT (tablicy plików) oraz meta-plików partycji NTFS (tych, które są normalnie niewidoczne dla użytkownika, więc pewnie nawet nie wiedzieliście że istnieją ;) ).
Kolejna ciekawa informacja brzmi tak, że wystarczy zrobić takią defragmentację jeden raz. Po pierwsze plik wymiany (o ile ktoś sobi tak ustawi – ja ustawiam) oraz plik hibernacji mają stały rozmiar, do tego nie są przenoszone. Więc po jednokrotnej defragmentacji pozostają tak “po wsze czasy”. MFT zaś wg. dokumentów opublikowanych przez Microsoft (jakby nie było twórców NTFS-u) “powinno zostać umieszczone w okolicy połowy partycji, co minimalizuje fragmentację oraz ruchy głowicy”. Tyle w teorii. A w praktyce? W praktyce faktycznie to działa… Nie próbowałem robić żadnych testów (poza tym nie jest to przyrost wydajności o dajmy na to 50%), ale zawsze to dysk mniej się dławi…
W każdym razie obecnie “potrafi to” zarówno Diskeeper jak i PerfectDisk.
Więc jakie są zalety PerfectDiska? Po pierwsze był pierwszym programem, który to potrafił, po drugie zaś posiada on dość “sprytną” metodę defragmentacji.
W przeciwieństwie do Diskeepera nie umieszcza on plików “gdzie się akurat da”, tylko jego filozofia wygląda następująco.
Na samym początku partycji umieszczane są sekwencyjnie (wg. danych pochodzących z wbudowanego w system Windows prefetchingu) “pliki używane w czasie uruchamiania systemu”, co ma skrócić czas konieczny do tegoż (przez to że dane konieczne do uruchomienia są odczytywane szybciej). Kolejno układane sa pliki, które nie były używane przez co najmniej 60 dni, potem pliki nie używane przez co najmniej 30 dni, na końcu zaś pliki które się “ostatnio zmieniły” (przedziały czasowe można oczywiście zmienić wedle własnego pomysłu).
Jaki jest tego cel? Podczas kolejnych defragmentacji, pliki które się nie zmieniają faktycznie są “nieruszane”, zaś pliki często zmieniające się są umieszczane w takim miejscu, w którym nie robią większego bałaganu, niż gdyby były umieszczone w innym miejscu (np. bliżej początku dysku).
Poza tym PerfectDisk jest defragmentatorem jednoprzebiegowym, znaczy to że już w czasie rozpoczęcia defragmentacji program ma ustaloną jednoznaczną “optymalną strategię” (czytaj: położenie kolejnych plików) i wtedy jedyne co pozostaje to poumieszczać te pliki zgodnie z przyjętymi wytycznymi. W praktyce oznacza to że pierwsza defragmentacja po długim okresie bez defragmentacji może być (ale wcale nie musi) “relatywnie długa”, zaś kolejne (np. codzienne) są bardzo krótkie – czasem nie trwają nawet kilkadziesiąt sekund. Co więcej, zdefragmentowane dane są ułożone w spójną całość podobnie jak wolna przestrzeń jest bardzo skrupulatnie skonsolidowana.
Jedyny “problem” jest taki, że nawet mimo właczenia niskiego priorytetu defragmentacji oraz zaznaczeniu “wstrzymuj defragmentację przy aktywności dysku ze strony użytkownika”, system potrafi być mocniej niż w przypadku Diskeepera zajęty. Wada? System może wolniej działać w czasie defragmentacji. Zaleta? Defragmentacja przebiega sprawniej. Coś za coś…
Dysk po defragmentacji Diskeeperem wygląda w PerfectDisku tak:
Zaś po defragmentacji w PerfectDisku wygląda tak:
Czy wygląda lepiej? Cóż… W każdym razie wygląda inaczej.
Analizując powyższe przypadki należy zauważyć, że PerfectDisk nie posiada modułu “defragmentacji w tle”. Można oczywiście ustawić harmonogram automatycznej defragmentacji (co w praktyce wygląda jak “automatyczna defragmentacja” w Viście), więc nie może on “na bieżąco” kontrolować poziomu fragmentacji dysku – musi więc działać “raz a konkretnie” w czasie przebiegu defragmentacji. Odmianą tegoż jest StealthPatrol, który ma za zadanie uruchamiać defragmentację nie o konkretnej porze, ale “kiedy akurat system nie jest zajęty”. Różnica jest jak ustawienie defragmentacji o 2 w nocy, co pewnego dnia “przypadkiem” zgra się z ważną partią Counter-Strike’a i zastanawiającym “zwolnieniem” gry i mielenia dyskiem, a automatycznym zaplanowaniem defragmentacji nie na konkretną porę tylko na “po skończeniu gry”. Tak więc nie jest to tak do końca defragmentacja w tle (gdyż nie działa non-stop), jakkolwiek mniej-więcej tak w praktyce działa… dysk jest utrzymany w relatywnym porządku.
Podsumowując: każda z tych strategii ma swoje zalety (i wady). Niezależnie którą z nich wybrać, wystarczy się jej trzymać konsekwentnie i efekt będzie podobny – efektem będzie większy porządek na dysku.
Tylko pytanie wciąz brzmi… której z tych strategii się trzymać? Który defragmentator wybrać? Dodatkowym argumentem niech będzie cena:
Diskeeper 2008 Home – $29.95 (około 65zł) – nie ma niesławnego Frag Shield
Diskeeper 2008 Professional – $49.95 (około 105zł) – ma Frag Shield i działa w systemie Vista 64-bit
PerfectDisk 2008 Professional – $39.99 (około 85zł) – jedna wersja “załatwia wszystko”
… co jednak nie zmienia sytuacji że wciąż nie wiem, czy wolę defragmentację w tle – stałą acz nieco mniej dokładną (program jednak interweniuje w razie potrzeby), czy defragmentację na życzenie (czytaj: jak sobie przypomnę) – dokładną acz tymczasową (i tak zaraz po defragmentacji robi się mniejszy bądź większy bałagan).
Może więc coś zupełnie innego?
O&O Defrag 10
www.oo-software.com
Jest to alternatywa dla obu powyższych programów. Jednakże nie biorę go pod uwagę z kilku powodów.
Po pierwsze jest najnormalniej w świecie drogi – 49,90E to około 170zł – praktycznie dwa razy drożej niż pozostałe programy!
Po drugie jego metody defragmentacji są nieco dziwne. Przykładowo defragmentacja “wg. nazw plików” lub “wg. rozmiarów plików”… tylko że jest to bez sensu, ponieważ wystarczy zmienić jeden plik przy początku dysku i… co… pozostałe 80GB plików (czy nawet 200GB plików na dużym dysku) zostanie przesuniętych żeby zmieścić jeden np. 10MB plik? Głupota… To przecież zabije dysk szybciej niż fragmentacja plików sama w sobie…
Poza tym nie do końca wiem jak w tym przypadku działa defragmentacja w tle i defragmentacja plików systemowych (defragmentacja w czasie uruchamiania systemu). Nie wiem tego ponieważ nie chce mi się pobierać wersji demo tegoż programu – wymaga to “rejestracji” (niby PerfectDisk też wymaga), poza tym i tak bym go (raczej) nie kupił mając do wyboru dwa tańsze a raczej nie gorsze rozwiązania. Jedyne co kusi to “jedna wersja do wszystkiego”… ale ja nie planuję stawiania 64-bitowego serwera z matrycą RAID o pojemności paru terabajtów…
Ponownie podsumowując… nie wiem któro rozwiązanie wybrać…
Diskeeper 2008 czy PerfectDisk 2008? Każde z tych rozwiązań jest na swój sposób dobre.
PerfectDisk pozostawia dysk w – dosłownie – pruskim porządku, podczas gdy Diskeeper działa w tle i co prawda porządek utrzymuje “nieco mniejszy”, ale za to porządek ten jest mniej lub bardziej ale stały… Poza tym Diskeeper jest nieco tańszy, ale wersja Home nie pozwoli w przyszłości na przesiadkę na system 64-bit ani nawet Vista Business (co nie jest dla mnie nierealne, bo dostałem taki z uczelni)…
Eh… decyzje, decyzje… ;)
UWAGI KOŃCOWE
Jak często należy przeprowadzać defragmentację?
W zależności od tego, kogo zapytacie, otrzymacie różne odpowiedzi:
- nigdy… bo i po co?
- raz na kwartał wystarczy… ale zarezerwuj na to jedną nockę…
- raz w miesiącu powinno być dobrze
- raz w tygodniu nie zaszkodzi
- najlepiej codziennie, w końcu chcesz mieć porządek…
Ja osobiście uważam że “na tyle często, żeby to miało sens”… stąd moje wahanie pomiędzy “mniej dokładnie a w tle” a “na życzenie ale dokładnie”…
Czy defragmentacja przenośnego dysku lub odtwarza MP3 ma sens?
To zależy… Jeśli dane zmieniają się na tym dysku/odtwarzaczu bardzo często, na pewno pomoże to w ich “uorganizowaniu w spójną całość” – czy to w momencie odczytu tych danych, czy to w momencie ich zapisu głowica będzie “mniej szalała” co ma swoje zalety:
- zapis na taki dysk przebiega szybciej (głowica nie musi szukać “najbliższego wolnego miejsca”, tylko wolną przestrzeń ma skonsolidowaną w jednym miejscu bądź w kilku dużych fragmentach więc zapis przebiega sekwencyjnie)
- odczyt zdefragmentowanego pliku trwa krócej, co – jako że dysk krócej działa a głowica “mniej się porusza” (odczyt jest sekwencyjny) – pozwala na oszczędność baterii odtwarzacza
Jak duża jest to różnica?
Spróbujcie przeskanować dysk przy pomocy programu Victoria raz sekwencyjnie a raz “w losowy sposób” i porównajcie jaka jest różnica czasu takiego skanu… podobna będzie różnica w odczycie danych zdefragmentowanych a mocno pofragmentowanych…
Czy defragmentacja odtwarzacza z pamięcią flash lub pendrive’a ma sens?
Nie. Przeczytaj ten wpis.
Tags: defrag, defragmentacja, diskeeper, o&o, perfect disk, perfectdisk



Ja używam O&O i jestem zadowolony – szybki, kilka strategii defragmentacji (nie widziałem tej wg rozmiarów, za to jest sensowna wg daty modyfikacji czy czasu dostępu, oczywiście poza standardową ‘upchaj maksymalnie’ i ‘zrób szybko co się da’), możliwość defragmentacji kilku dysków równolegle (mam 3)… Można też znaleźć w internecie starszą wersje freeware (o ile pamiętam 0&O Defrag 2000). Polecam nadrobić zaległości i przetestować ten defragmentator.
w sumie można spróbować…
a to “wg. rozmiaru” znalazłem gdzieś w broszurce na stronie oo software… samego programu nie uruchamiałem, ale skoro tak to spróbuję toto zainstalować… jednak na zbyt wiele nie liczę
jakkolwiek cena wciąż mnie nie zachęca… wolę kupić Diskeepera a resztę wydać np. na jakiś program do obróbki zdjęć czy coś zupełnie innego…
Ze swojej strony mogę polecić JkDefrag. Bardzo zgrabnie działa, i sensownie układa pliki.
dotarłem doń kiedy szukałem wyżej opisanych programów, jednak opis “filozofii jego pracy” mnie zbytnio nie zachęcił (podobnie jak ten OO Defrag)… bo sam “silniczek” jest zawsze taki sam – wbudowane w system API współtworzone kiedyś tam przez twórców Diskeepera…
poza tym wyżej wymienone programy mają jednak większe możliwości… jakbym chciał czegoś “free” to używał bym Diskeepera Lite (w końcu przez długi czas używałem)
co do filozofii pracy zaś – układa on duże pliki na końcu zajętego miejsca zaś najczęściej używane na początku… co oznacza że “początek” wciąż się zmienia, a “koniec” nie… mimo to przesuwane są wciąż wszystkie dane (nie mówiąc już o sortowaniu po nazwach)
… co jest głupie, podobnie jak to co opisałem dla OO Defrag…
dlatego też rozglądam się za “sprytniejszym” sposobem na defragmentację…
Jedym bonusem PerfectDisk jest to ze dziala w systemach 64 bitowych. Typkom od diskkeepera do dzis nie chcialo sie nic w tej kwestii zrobic.
W dodatku diskkeeper to spamerzy – nie polecam podawac im swoj adres e-mail do czegokolwiek.
Mi osobiscie najbardziej brakuje manualnego defragmentatoa – takiego ktory pozolilby mi samemu zdefiniowac ktore pliki exe powinny uruchamiac sie najszybciej, ktore foldery sa archiwalne, ktore czesto sie zmieniaja, a ktore pozostana bez zmian przez najblizsza dekade.
Diskeeper działa przecież w systemach 64-bitowych (wersja Home faktycznie nie działa).
A manualny defragmentator? W sensie? Jeśli trzymać się metody “defragmentacji w tle” to wszystkie pliki EXE (oraz wszystkie pliki w ogóle) są przez cały czas zdefragmentowane… i to właściwie tyle co da się powiedzieć w tej kwestii.
Co wg. Ciebie znaczy “uruchamiać plik EXE szybciej”? Trzymać go na początku czy końcu partycji? Pamiętaj że czas odczytu sekwencyjnego minął już dawno – dziś każdy nowy dysk ma NCQ więc nie jest już tak istotne gdzie i jak są dane ułożone (jakkolwiek wciąż “miło jest” jeśli są zdefragmentowane, żeby NCQ nie musiało optymalizować “dostepu do pojedynczego pliku”)…
Bardzo ciekawy artykuł,
A co możesz powiedzieć o module “Drive Defrag” w TuneUp?
http://www.tuneup.pl/products/tuneup-utilities/
Nie ma tam zbyt wielu zaawansowanych opcji, ale czy to oznacza, że jest gorszy?
Pozdrawiam.
nie używałem więc nie mogę się wypowiedzieć… “mniej” wcale nie znaczy “gorzej” (patrz: najnowszy diskeeper, który właściwie nie ma opcji do ustawienia)
zależy od tego, w jakim stanie zostawia dysk po defragmentacji i jak długo defragmentacja trwa (oraz jak jest “zasobożerna”)
Rozumiem, dzięki za odpowiedź.
btw: I ja się źle poprzednio wyraziłem, bo tam też tylko można wybrać jedynie dyski do defragmentacji ;]
mogę tylko powiedzieć że przestrzegam przed kombinowaniem w zakresie defragmentacji – sprawdziłem właśnie jak działa program o wdzięcznej nazwie Smart Defrag (darmowy) i byłem przerażony (sic!) stanem dysku po “sprytnej defragmentacji i optymalizacji”
po pierwsze defragmentacja została przerwana komunikatem “brak miejsca na dysku” (było 4GB na partycji 30GB), po drugie wolna przestrzeń nie została skonsolidowana, a wręcz przeciwnie, na graficznym przedstawieniu rozłożenia plików NIE BYŁO wolnej przestrzeni (sic!), po trzecie przy kolejnej próbie uruchomienia tegoż (i dalszej defragmentacji) wciąz wyskakiwał mi komunikat plus “dysk jest mocno sfragmentowany” (sic! przecież to był efekt działania tego programu!)
… po czym skapitulowałem i uruchomiłem Diskeepera 7 Lite żeby posprzątał ten “bałagan”
a ostatecznie zdecydowałem się na kupno Diskeepera w wersji Home, w którym włączę “defragmentację w tle” – ostatecznie jest to jednak chyba nieco lepsze rozwiązanie niż Perfect Disk, poza tym Diskeeper ma już “defragmentację w czasie uruchamiania systemu” (w razie gdybym tego potrzebował), co do niedawna było domeną jedynie Perfect Diska…
Z True Cryptem miałem jeszcze jedną nieprzyjemną przygodę dotyczącą dysków w raid0. Po zaszyfrowaniu na jednym z dysków zawsze było non- raid. Obecnie nie używam True Crypta być może już to poprawili.
Fajnie, że da się ten tekst przeczytać – większego zagęszczenia ” “” ” nigdzie nie widziałem. Język polski z podstawówki się kłania :]
taki mam niestety styl pisania… wiem że “amerykańskie” (ups… miałem tego nie robić ;] ) teksty, w których w ogóle nie ma zdań złożonych, nawiasów, zaś cytaty czy też cudzysłowy są tylko w ostateczności, zupełnie inaczej się czyta…
… ale cóż… poza tym piszę to tylko jako luźne myśli, nie jako artykuły do gazet (wiem, wiem, zawsze trzeba się starać i w ogóle) ;]
[...] raz pisałem o defragmentacji. Skończyło się na tym że pod Windowsem XP zawitał u mnie [...]