Defragmentacja

Defragmentacja, Systemi i Sieci
[ Pobierz całość w formacie PDF ]
Systemy operacyjne – Zjawisko fragmentacji i defragmentacji dysku
Temat: Zjawisko fragmentacji i defragmentacji dysku
Słowo wstępu
Proces fragmentacji danych towarzyszy każdej wersji systemu Windows. A wraz
z pojawianiem się kolejnych ciągle ewoluował sposób radzenia sobie z tym problemem.
W Windows 95 miano do czynienia z monotonnym przemieszczaniem bloków
reprezentujących poszczególne obszary dysku, a w Windows 98 zaprezentowano
technologię segregującą dane według częstotliwości, z jaką były otwierane.
Windows 2000 otrzymał natomiast całkiem nowy program defragmentujący,
który został dostarczony przez niezależną firmę – Execiutive Software, o nazwie
Diskeeper. Program oprócz wsparcia dla partycji NTFS nie zaoferował nic nowego, co
gorsza pod względem funkcjonalności został dalece ograniczony. Podobnie zachowywał
się przy defragmentacji plików systemowych czy plików meta data charakterystycznych
dla systemu plików NTFS, czyli po prostu ignorował je. Ten sam program został
umieszczony w Windows XP. Na szczęście w usprawnionej wersji, w której przełamano
kilka elementarnych ograniczeń. Windows XP okazał się dość rewolucyjny w radzeniu
sobie z fragmentacją -wprowadzono kilka mechanizmów wbudowanych w sam system,
które ograniczyły dwa najpoważniejsze skutki fragmentacji – wydłużony czas
uruchamiania się aplikacji oraz systemu.
Fragmentacja – proces tworzenia oraz jej wpływ na
wydajność systemu
Fragmentacja jest procesem naturalnym, choć jak najbardziej szkodliwym. W
rankingu czynników drastycznie pogarszających wydajność komputera plasuje się na
najwyższych miejscach. Z czego to wynika? Posłużmy się przykładem: kopiowany jest
plik z dysku A na dysk B. Dysk B nie ma skonsolidowanej wolnej przestrzeni a
największy jej fragment nie jest w stanie w całości zmieścić owego pliku, wobec czego
system musi rozbić kopiowane dane na fragmenty, a te zostają rozmieszczone w
różnych odległościach względem siebie. W pewnym momencie jedna z uruchomionych
aplikacji zgłasza żądanie odczytu tak rozbitego na części pliku. Głowica dysku fizycznie
wykonując tę operację skacze po całej przestrzeni HDD odczytując kolejne fragmenty,
przez co wydłuża się czas dostępu i zmniejsza się ilość odczytanych bajtów na sekundę,
w rezultacie spada szybkość działania dysku twardego.
Fragmentacja polega zatem na rozproszeniu po dysku twardym informacji.
Proces ten powoduje spowolnienie operacji dyskowych. Wraz z modyfikowaniem
zawartości pliku jego rozmiar zazwyczaj rośnie i często przekracza przypisaną mu
początkowo liczbę klastrów, co powoduje konieczność znalezienia wolnych klastrów w
innym obszarze dysku, a tym samym rozczłonkowanie pliku.
Szablonowym przykładem na powstawanie fragmentacji jest dopisywanie
kolejnych informacji do pliku, przy którym nie ma wolnego miejsca.
Mechanizmy redukujące skutki fragmentacji
1.
Prefetching
jest to mechanizm, który odczytuje potrzebne dane do inicjalizacji
systemu lub aplikacji, zanim zostanie zgłoszone o nie żądanie. Umożliwia to
Strona 1
 Systemy operacyjne – Zjawisko fragmentacji i defragmentacji dysku
ograniczenie do minimum opóźnienia w operacjach wejścia/wyjścia i w rezultacie
poprawę wydajności systemu Windows o około 10%.
Jak to działa?
System XP ma wbudowany monitor plików, który tworzy listę
potrzebnych plików do otwarcia programu lub uruchomienia systemu. Taka lista jest
zapisana w pliku z rozszerzeniem
*.pf
w katalogu
windows/prefetch
i odczytywana, kiedy następuje uruchomienie procesu, któremu odpowiada. Dla
przykładu, jeśli jest otwierany edytor tekstu Word, system sprawdza, czy ma plik
scenariusza (z rozszerzeniem .pf) dla tego programu. Jeśli tak – odczytuje z
wyprzedzeniem pliki .dll, czcionki oraz inne pliki znajdujące się w scenariuszu, które
są potrzebne do uruchomienia aplikacji i umieszcza je w pamięci.
2.
Layout Optimalization
, który jest ściśle powiązany z Prefetching. Umieszcza on
pliki w kolejności, w jakiej są zgłaszane żądania o ich odczyt przy uruchamianiu
systemu czy aplikacji. Czynność tę przeprowadza co trzy dni w czasie bezczynności
komputera, a wygląda to następująco: po 30 minutowej bezczynności system
uruchamia w tle Windows Defragmenter, z odpowiednim parametrem, który
znajduje na dysku odpowiednią ilość wolnego miejsca na zindeksowane pliki
i przenosi je tam w odpowiedniej kolejności. Wszystko odbywa się bez wiedzy
i udziału użytkownika. Lista owych plików znajduje się w pliku
layout.ini
, który jest
w katalogu windows/prefetch. Windows Defragmenter także podczas
defragmentacji
uruchomionej
przez
użytkownika
przeprowadza
Layout
Optimalization.
Kontrolowanie Prefetching oraz Layout Optimalization
Prefetching
Za pomocą zmiany odpowiednich parametrów w rejestrze można włączyć i wyłączyć
prefetching, który domyślnie powinien być włączony. W celu konfiguracji mechanizmu
prefetching należy:
1. Otworzyć edytor rejestru
(regedit)
2. Rozwinąć gałąź: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\
Session Manager\Memory Management\PrefetchParameters
3. Edytować następujący ciąg:
Nazwa ciągu: EnablePrefetcher
Typ ciągu: REG_DWORD
Wartości: 0 - Wyłączenie Prefetching
1 - Prefetching dla inicjalizacji aplikacji
2 - Prefetching dla inicjalizacji systemu
3 - Prefetching dla inicjalizacji aplikacji i systemu
Wyłączenie Prefetching jest wskazane jedynie przy użytkowaniu tzw. benchmark’ów, ze
względu na udowodniony negatywny wpływ na ich wyniki.
Layout Optimalization
Proces układania plików wedle ich kolejności odczytu może zostać w każdej chwili
przeprowadzony bez potrzeby stosowania pełnej defragmentacji. Można tego dokonać
wpisując
Rundll32.exe advapi32.dll,ProcessIdleTasks
w linii poleceń. Ta komenda
wywoła również inne czynności przeprowadzane podczas bezczynności komputera, a
wszystkie je można monitorować z
Menadżera zadań
.
Strona 2
 Systemy operacyjne – Zjawisko fragmentacji i defragmentacji dysku
Defragmentacja – czym jest i na czym powinna się
koncentrować
Jak nazwa wskazuje – defragmentacja jest procesem odwrotnym do fragmentacji,
więc polega na scalaniu fragmentów danych w jedną część. Defragmentacja to proces
ponownej reorganizacji plików na dysku twardym, zmierzający do ich scalania, tak aby
dane zawarte w pliku zajmowały sąsiadujące klastry. Innymi słowy - jeżeli dane są obok
siebie, to dysk działa szybciej. Choć z definicji sprawa wygląda prosto, w praktyce już tak
nie jest. Znamy wiele specyficznych plików, które bardzo trudno jest właściwie
skonsolidować a często jest tak, że przy podstawowych, prostych narzędziach jest to
niemożliwe. Sytuację pogarsza fakt, że „trudne” dla defragmentatora pliki najczęściej
mają kluczowe znaczenie dla szybkości działania systemu.
Idealna defragmentacja oprócz konsolidacji zwykłych plików powinna obejmować
następujące elementy:

Scalanie pliku stronicowania
Nieraz wspominano o pliku wymiany jako
elemencie szczególnie mocno skorelowanym z wydajnością systemu. Jego
fragmentacja jest niezwykle istotna. Niestety, narzędzie do defragmentacji
obecne w Windows XP nie potrafi scalać tej ważnej części pamięci wirtualnej.

Scalanie Master File Table
MFT jest zbiorem danych, do których dysk odwołuje
się najczęściej przy wykonywaniu większości operacji na partycji z systemem
plików NTFS. Dlatego fragmentacja tego pliku jest wysoce niepożądana.
Microsoft, świadomy tej sytuacji, wyposażył wbudowany w system defragmenter
w możliwość konsolidacji MFT. Jednak nie zawsze jest przy tym skuteczny.

Scalanie pozostałych plików Meta Data
NTFS posiada szereg innych plików
systemowych – Meta Data, które zawierają np. informację o atrybutach plików
lub o tym, czy dana jednostka alokacji jest wolna czy nie. Obiekty te są plikami i
także ulegają procesowi fragmentacji. Analogicznie jak w przypadku MFT biorą
udział w wielu dyskowych operacjach i wpływ na ich wydajność jest istotny.

Scalanie przestrzeni zarezerwowanej dla MFT
Aby uchronić MFT przed
fragmentacją, specjalnie dla niej jest rezerwowana wolna przestrzeń dysku
twardego, by ten plik systemowy mógł się bez przeszkód poszerzać. Jednak
skuteczność tego rozwiązania nie jest stuprocentowa, gdyż i ta zarezerwowana
przestrzeń może ulec fragmentacji.

Właściwe położenie MFT oraz przestrzeni dla niej zarezerwowanej
Microsoft analizując wydajność systemu z wielu aspektów wykazał, że położenie
Master File Table w miejscu oddalonym od początku dysku o jedną trzecią jego
powierzchni jest optymalne. Także bardzo istotne jest ułożenie MFT względem
przestrzeni dla niej zarezerwowanej – po MFT to wolne dla niej miejsce.

Scalanie plików systemowych
Pikirejestrusą dość kłopoiwew
defragmentacji, dlatego muszą być scalane, zanim system się uruchomi. A ich
konsolidacja skraca czas inicjalizacji systemu.

Opuszczenie plików zawartych w layout.ini (
nie dotyczy Windows Disk
Defragmenter
)
Pliki zawarte w liście umieszczonej w pliku layout.ini są układane
przez Windows Disk Defragmenter według wytycznych dostarczonych przez
mechanizm Layout Optimalization, toteż powinny być ignorowane przez
defragmentory producentów trzecich. W przeciwnym razie może to zaowocować
wydłużeniem czasu uruchamiania się systemu oraz aplikacji.
Strona 3
 Systemy operacyjne – Zjawisko fragmentacji i defragmentacji dysku

Scalanie i właściwe umiejscowienie wolnej przestrzeni
Konsolidacja wolnej
przestrzeni zwalnia postępowanie procesu fragmentacji, a umiejscowienie jej na
końcu dysków pozwala przejść plikom bliżej początku HDD, gdzie transfer i czas
dostępu jest najlepszy.

Defragmentacja katalogów
W systemie plików NTFS katalogi są także plikami i
tak jak każde pliki ulegają fragmentaryzacji. Bardzo ważne jest ich scalanie, gdyż
pełnią fundamentalną rolę przy organizacji danych.
Możliwości defragmentora systemu Windows XP
Windows Disk Defragmenter (WDD) pod systemem Windows XP doczekał się kilku
usprawnień, które wprowadziły:

Konsolidację tablicy MFT
Dla możliwości konsolidacji Master File Table w
trybie on-line w systemie Windows XP dodano specjalne funkcje API, które
Windows Defragmenter wykorzystuje. Jednak ciągle brakuje defragmentacji
wielu innych specyficznych plików systemowych w tym pliku wymiany.

Możliwość ustawienia defragmentacji w harmonogramie zadań
Dodanie
zadania defragmentacji do harmonogramu zadań wymaga stworzenia
odpowiedniego skryptu, ponieważ możliwość ustawienia jej w harmonogramie
zadań wynika z wprowadzenia w Windows XP dostępu do Windows Disk
Defragmenter przez linię poleceń. Aby harmonogram zadań mógł uruchomić
proces konsolidacji danych o zadanej porze trzeba stworzyć dla niego
odpowiedni skrypt. W tym celu należy:
1. Stworzyć plik tekstowy o następującej treści:
start %systemroot%\system32\defrag.exe x:
(gdzie
x
jest literą dysku, którego dane będą konsolidowane)
2. Zmienić rozszerzenie txt na
cmd
np. defrag_c.cmd
Pomimo rozszerzenia funkcjonalności WDD ciągle posiada wiele ograniczeń. Do jego
najważniejszych wad należy:

Brak defragmentacji plików systemowych
Oprócz konsolidacji MFT Windows
Defragmenter nie scala pozostałych plików meta systemu plików NTFS. Także
inne pliki systemowe Windows XP takie jak plik wymiany czy pliki rejestru
pozostają podczas procesu defragmentacji WDD nietknięte.

Brak defragmentacji wolnej przestrzeni
WDD został ograniczony nawet
poprzez tak fundamentalny element. Konsolidacja wolnej przestrzeni HDD
mogłaby znacząco ograniczyć szybkość postępowania fragmentacji, jednak w
przypadku WDD nie jest nam to dane poznać.

Mała skuteczność działania
WDD do poprawnego działania potrzebuje
stosunkowo dużo wolnej przestrzeni - min. 15%. Jeśli nawet ten warunek jest
spełniony nie mamy gwarancji, czy duże pliki jak i MFT zostaną scalone w jedną
cześć.

Brak podstawowych opcji
WDD nie został wyposażony w takie funkcje, jak
możliwość wykluczenia z procesu defragmentacji plików określonego typu (np.
Strona 4
Następnie należy wskazać w kreatorze
Harmonogramu Zadań
odpowiedni plik.

Obsługa Layout Optimalization
Windows Disk Defragmenter jest elementem
strategii zmniejszania skutków fragmentacji, a ta składa się na technologię
FastBoot (zmniejszenie czasu inicjalizacji systemu do trzydziestu sekund).
 Systemy operacyjne – Zjawisko fragmentacji i defragmentacji dysku
plików tymczasowych) czy opcję określenia priorytetu z poziomu interfejsu
programu, w jakim WDD miałby pracować (co jest szczególnie istotne, gdy proces
defragmentacji jest przeprowadzany obok wątków innych aplikacji).
Program Chkdsk
Sprawdzenia spójności systemu plików możemy dokonać, wybierając
Właściwości | Narzędzia | Sprawdź dla zaznaczonego dysku, lub wpisując polecenie
wiersza poleceń Chkdsk. Wybierając ten drugi sposób mamy dostęp do kilku opcji
modyfikujących proces sprawdzania.
/F — Uruchamia Chkdsk w trybie automatycznego naprawiania wykrytych
uszkodzeń. W tym trybie program musi mieć wyłączny dostęp do dysku, więc
próba sprawdzenia dysku, na którym zainstalowano system operacyjny
spowoduje wyświetlenie pytania, czy uruchomić sprawdzanie po pierwszym
restarcie komputera.
/V — Wyświetla komunikaty o wykonywanych operacjach, a w przypadku
sprawdzania dysku FAT lub FAT32 — długie nazwy plików.
/R — Wykonujepełnesprawdzeniedysku w poszukiwaniu uszkodzonych
jednostek alokacji. Wybór tej opcji wymusza tryb naprawiania wykrytych
uszkodzeń.
/L — Wyświetla rozmiar
dziennika dysku.
Podanie parametru
:liczba
,
zmienia rozmiar tego dziennika.
/X — Wymusza odłączenie woluminu. Użytkownicy, którzy mają otwarte pliki,
tracą swoje dane. Wybór tej opcji wymusza tryb naprawiania wykrytych
uszkodzeń.
/I — Pomija sprawdzenie wewnętrznej spójności pomiędzy atrybutami nazw
plików w rekordach plików i powiązanym wykazem nazw plików w indeksie
katalogu.
/C — Pomija sprawdzanie zapętleń w strukturze folderów.
Strona 5
  [ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • psdtutoriale.xlx.pl
  • Podstrony
    Powered by wordpress | Theme: simpletex | © Tylko ci którym ufasz, mogą cię zdradzić.