Втрачені кластери - студопедія

Втрачені кластери - це найбільш поширена помилка файлової системи, при якій кластери в FAT позначаються як використовувані, хоча насправді такими не є. Тобто в таблиці FAT є ланцюжок кластерів, але при цьому ні в одному з каталогів на диску немає жодного дескриптора файлу, який вказував би на початок цього ланцюжка.

Така ситуація може виникнути при «зависанні» програми або при пропажі живлення під час запису файлу (Саме тому система пропонує перевірити диск з FAT після «неправильного» вимикання комп'ютера). Система робить запис інформації в область даних (в кластери файлу) і в елементи FAT, але не встигає помістити в каталог відповідний дескриптор файлу. Це відбувається через те, що запис каталогу для файлу є останньою частиною операції записи файлу, тому, що каталог містить розмір файлу, a Windows не може знати його до тих пір, поки не закінчить запис файлу.

Сервісна утиліта, що входить до складу Windows сканує FAT, шукає втрачені кластери і створює в кореневому каталозі дескриптор файлу, який вказує початок ланцюжка. Крім вбудованої утиліти існує велика кількість утиліт зовнішніх виробників для вирішення проблем з дисками.

Ієрархічна (деревоподібна) структура каталогів

Розберемося, як влаштована деревоподібна структура каталогів, яким саме чином в каталозі зберігаються посилання на каталоги наступного рівня (дочірні каталоги) і як будь-який дочірній каталог зберігає посилання на батьківський. Посилання обох типів є дескрипторами.

Про організацію дочірніх каталогів ми вже згадували, такий каталог має в батьківському каталозі дескриптор (як звичайних файл). Від дескриптора файлу дескриптор каталогу відрізняється тільки встановленим атрибутом D (4-й біт в байті атрибутів - DIRECTORY).

Тепер розберемося, яким чином дочірній каталог «знає» про батьківський. У будь-якому каталозі, крім кореневого, два перших дескриптора мають спеціальне призначення. Перший дескриптор містить в поле імені рядок «.». Цей дескриптор вказує на що містить його каталог, тобто каталог має посилання сам на себе. Другий спеціальний дескриптор має ім'я «..». Цей дескриптор вказує на каталог більш високого рівня (батьківський).

Таким чином, в структурі дерева каталогів файлової системи FAT є посилання як в прямому, так і в зворотному напрямку. Ці посилання можна використовувати для перевірки цілісності структури каталогів файлової системи.

Схожі статті