T: Dysk fizyczny i logiczny.

Fizycznym nośnikiem informacji w dysku twardym jest zespół koncentrycznie osadzonych krążków pokrytych warstwą magnetyczną. Ścieżki, sektory i głowice stanowią tzw. strukturę fizyczną dysku określaną przez producenta. Komputer w celu dostępu do danych posługuje się tzw. strukturą logiczną, która czasami może znacznie się różnić od struktury fizycznej.

Zadanie1:
Odszukaj w zasobach Internetu informacje na temat pojęć CHS i LBA.

Aby łatwo można było poruszać się po skomplikowanej strukturze dysku twardego, cylindry, głowice i sektory zostały ponumerowane. Odwołanie do konkretnego miejsca na dysku wymaga podania trzech informacji (liczb) w standardzie CHS - Cylinder/Head/Sector (cylinder/głowica/sektor). Dla przykładu pierwszy sektor na każdym dysku, nazywany MBR (Master BOOT Rekord) posiada adres CHS = 001.

CHS (Cylinder-Head-Sector) jest metodą adresowania danych na dysku twardym. Dysk z wartościami CHS 500x4x32 posiadał 500 ścieżek po każdej stronie talerza, 2 talerze, i 32 sektory na cylinder.

LBA (Logical Block Addressing) jest metodą obsługi dysku twardego przez system operacyjny. LBA dokonuje tzw. translacji adresów, czyli zamiany rzeczywistych numerów głowicy, cylindra i sektora na ich logiczny odpowiednik.

Zadanie2:
Odszukaj w serwisie internetowym Wikipedii informacje o sektorze MBR.

Główny sektor rozruchowy dysku MBR zawiera IPL - Initial Program Loader (zwany również bootstrapem) oraz informację o organizacji partycji na dysku umieszczoną w Tablicy Partycji (TP). Umożliwia ona zapisanie informacji o maksymalnie czterech partycjach. Każdą z nich cechuje: stan (aktywna lub nie), adres początkowy zapisany w standardzie CHS, typ (primary lub extended), adres końcowy - CHS, numer początkowego sektora oraz liczba zajmowanych (alokowanych) sektorów. Po włączeniu komputera wywoływany jest IPL - mały program sprawdzający informacje zawarte w tablicy partycji i uruchamiający system operacyjny z partycji, która ma ustanowioną (włączoną) flagę aktywności.

Struktura sektora rozruchowego MBR:

Rekord ładujący (Boot Sector, BS, bootstrap, MBL, Master Boot Loader, IBL, Initial Boot Loader) zapisany jest w pierwszym sektorze każdej partycji. Jest to program odpowiedzialny za załadowanie jądra zainstalowanego systemu na tej partycji i przekazanie mu kontroli. Program rozruchowy zawarty w sektorze rozruchowym partycji może zostać wykonany tylko po przekazaniu mu sterowania przez program rozruchowy zawarty w MBR, ponieważ BIOS uruchamia program rozruchowy tylko z głównego sektora rozruchowego dysku MBR.

Tablica partycji - zawiera po jednym wpisie dla każdej z czterech możliwych do założenia partycji, składającym się z informacji o jej lokalizacji na dysku i typie (primary, extended).

Partycja - logicznie wydzielony obszar dysku, na który składa się pewna liczba przylegających do siebie cylindrów, przeznaczony do instalacji systemu operacyjnego lub przechowywania danych. Partycje ułatwiają zarządzanie powierzchnią dyskową.

Do naprawy programu rozruchowego bootstrap z sektora MBR w systemie Windows XP wykorzystujemy polecenie konsoli odzyskiwania fixmbr. Do naprawy sektora rozruchowego partycji systemowej w Windows XP wykorzystujemy polecenie konsoli odzyskiwania fixboot.

Budowa logiczna dysku
Większość popularnych systemów operacyjnych musi zostać zainstalowana na partycji typu primary (głównej), co - ze względu na strukturę tablicy partycji - umożliwia na zainstalowanie do czterech różnych systemów na jednym dysku. Oprócz partycji typu primary można założyć również partycję extended (rozszerzoną). Jej główną zaletą jest to, że zajmując tylko jedno miejsce w tablicy partycji dysku, można na niej utworzyć znacznie większą liczbę dysków logicznych - czyli partycji na partycji extended. Partycja rozszerzona zakładana jest niemal na każdym dysku. W przeciwieństwie do partycji podstawowych dyski logiczne utworzone na partycji extended są widoczne zawsze, jeśli system plików zgodny jest z zainstalowanym systemem operacyjnym. Więcej niż jedną partycję primary jednocześnie widzą tylko niektóre systemy, np. Linux czy Windows. Starsze z nich, jak DOS, współpracują tylko z aktywną partycją podstawową (primary). W danym momencie tylko jedna partycja może mieć ustawioną flagę aktywności. Aby opisać operacje zachodzące podczas startu systemu operacyjnego, przybliżyć należy jeszcze budowę dysku podzielonego na partycje. W pierwszym jego sektorze znajduje się MBR zawierający tablicę partycji. Do oznaczenia cylindrów i głowic wykorzystuje się cyfry zaczynające się od 0. Szesnaście głowic ma zatem numery od 0 do 15. sektory oznaczone są liczbami od 1 do 63. Każda partycja zaczyna się od rekordu ładującego (boot sectora). Ponieważ początek pierwszej partycji może znajdować się na zerowym cylindrze, ale pierwszej głowicy i pierwszym sektorze (CHS = 011), pomiędzy MBR i BS pozostają wolne 62 sektory (31 KB), które nie są wykorzystywane. Po BS znajduje się obszar, w którym zapisane są informacje o rozmieszczeniu danych na partycji. Aby nie posługiwać się zwykle bardzo dużą liczbą sektorów, powstała jednostka alokacji (zajętości) zwana klastrem (cluster), łącząca kilka sektorów w jedną całość. Tak więc klaster o rozmiarze 2 KB składa się z 4 sektorów, 4 KB łączą 8 sektorów itd. Każdy DOS-owy system plików ma dwie tablice rozmieszczenia plików (FAT - File Allocation Table), zawierające informacje o położeniu i wielkości plików na danej partycji. Budowa taka została podyktowana względami bezpieczeństwa - po utracie partycji FAT zniszczeniu ulegają wszelkie dane. Ostatnią organizacyjną częścią partycji jest katalog główny (root directory), zawierający nazwy plików oraz informacje o ich wielkości i pierwszym zajmowanym klastrze. Po katalogu głównym dysku znajduje się największa część partycji służąca do przechowywania danych. Bardzo podobnie wygląda organizacja partycji rozszerzonej. Tutaj jednak odpowiednik MBR, zwany EMBR (Extended MBR), znajduje się przed każdą kolejną partycją. Każdy EMBR zawiera informacje (adres) o jej początku i końcu.