Software funkcjonujące jako układowe tzw. firmware jest wewnętrznym minikodem, który steruje nośnikiem. Oprogramowanie to jest fabrycznie wbudowane i opracowane przez producenta dysku. Soft ten zwykle zaimplementowany jest w układzie elektronicznym (tzw. ROMie) wewnątrz urządzenia.

Firmware w zależności od stopnia skomplikowania danego nośnika, może być niewielkim programem, który zwykle jest rodzajem BIOS’u, startującym urządzenie i określającym jego ustawienia fabryczne lub rozległym systemem sterującym jaki ma miejsce np. w dysku SSD.

Producenci dysków ze względu na unowocześnianie produktu, a także konieczność dopasowania go do rozwiązań pozostałych wytwórców, mogą poprawiać błędy pojawiające się podczas jego eksploatacji. Modyfikacje firmware’u mogą wpływać także na poprawę zgodności z systemami operacyjnymi różnych producentów takich jak Microsoft,  Apple  czy Linuxa, a także kompatybilności sprzętowej z producentami komputerów czy serwerów NAS.

Ponadto upgrade firmware’u są stosowane także ze względu na poprawę wydajności czy kooperację z innymi urządzeniami. Jeżeli wytwórca oferuje narzędzia do upgrade firmware’u w dysku, użytkownik może wykonać aktualizację mikrokodu we własnym zakresie.

Oprogramowanie dysku odpowiedzialne jest za niezwłoczną i bezproblemową inicjalizację dysku, tak aby wszedł w stan gotowości i został wykryty przez komputer. Podczas pierwszych sekund dysk musi też skalibrować głowice i pobrać dane ze Strefy Serwisowej (o czym w dalszej części). Moment rozkręcenia talerzy i kalibracji słychać zaraz po uruchomieniu dysku HDD. W przypadku problemów w działaniu firmware’u detekcja dysku może zostać pominięta, może być on całkowicie niewykrywany lub wykrywany zupełnie błędnie. Ze względu na to, że mikrokok układowy jest coraz bardziej rozbudowany. Firmware można podzielić na:

– Firmware zapisany na kości ROM (Read Only Memory)  w elektronice dysku – inaczej na płytce PCB ( Printed Circuit Board). Na tej płytce elektroniki znajdziemy np. procesor oraz pamięć RAM. Na PCB zapisana jest m.in. część firmware odpowiedzialna za rozruch (tzw. boot-strapping) i załadowanie „systemu operacyjnego dysku”. Co w konsekwencji powoduje uruchomienie silnika napędzającego talerze oraz głowic.

– Firmware zapisany na talerzach dysku – to obszar dysku, z którego ładowana jest główna część firmware – jest to specjalnie wydzielona część powierzchni talerzy, niewidoczna dla użytkownika. To miejsce  określany jest potocznie jako Strefa Serwisowa ( Service Area). Strefa serwisowa dysku zawiera w sobie fragmenty oprogramowania dysku oraz modułów programowych odpowiedzialnych za konkretne funkcje. Należą do nich m.in. S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology), translacja fizycznych adresów sektorów na postać logiczną LBA (Logical Block Address), kontrola nieczytelnych lub trwale uszkodzonych sektorów tzw. bad sectors w modułach list: rosnącej tablicy błędów (G-list) oraz tablicy pierwotnych defektów (P-list), oraz wiele innych. Moduł S.M.A.R.T oraz moduł translatora zwykle odpowiadają za wadliwe działanie dysków Seagate (głównie seria Barracuda 7200.11) czy Western Digital.

System operacyjny dysków, ze względu na złożoność tych napędów, staje się coraz bardziej rozbudowany. W zależności od producenta dysku, jego parametrów, rozmiar firmware może być bardzo różny. Np. w niektórych dyskach Western Digital strefa serwisowa zajmuje 26 MB, a wraz z zapasowymi około 450MB zarezerwowanymi na poszczególnych talerzach.

Artykuł powstał przy udziale : HDD Laboratory – odzyskiwanie danych z dysku