іся для:
організації сканування каталогів для поиска потрібніх файлів;
для читання каталогів як файлів;
для організації ЗАХИСТУ ІНФОРМАЦІЇ від несанкціонованого копіювання.
Загальна схема Використання FAT така:
Читаємо FAT у пам ять. Як вже зазначалось FAT розташовується відразу после BOOT-сектора (логічний сектор Із номером 1). Для точного визначення початкових сектора FAT нужно Прочитати у пам'ять BOOT-сектор и проаналізуваті вміст блоку параметрів BIOS. У полі
ressecs записана кількість зарезервованому секторів, что розташовуються перед FAT. Поле
fatsize містіть розмір FAT у секторах. Крім того, Варто враховуваті, что на диску может знаходітіся декілька Копій FAT. Операційна система вікорістовує Тільки Першу копію, Другие Потрібні для утіліт Відновлення вмісту диска. Кількість Копій FAT находится в полі
fatcnt BOOT-сектора.
Потім звітність, візначіті номер Першого кластера файлу, для Якого звітність, візначіті его розташування на диску.
Вікорістовуємо номер Першого кластера як індекс у FAT для Отримання номери такого кластера.
Повторюємо Цю процедуру Доті, поки отриманий з FAT значення не буде відповідаті кінцю файлу.
Процедура витягу номера кластера з FAT поклади від формату табліці размещения файлів.
-бітову FAT можна уявіті як масив 16-бітовіх чисел. Для визначення номера такого кластера треба просто отріматі 16-бітове Значення з FAT, використан в якості індексу номер попередня кластеру. p align="justify"> Для 12-бітової FAT процедура однозначно складніша.
звітність, віконаті Такі Дії:
Помножіті номер початкова кластера на 3.
Розділіті результат на 2 (тому что Кожний елемент табліці має Довжину 1.5 байта).
Прочитати 16-бітове слово з FAT, вікорістовуючі в якості Зсув значення, а отриманий после ділення на 2.
Если номер початкова кластера парний, на Вибране з FAT слово треба накласти маску 0fffh, залиша молодші 12 бітів. Если номер початкова кластера НЕ парний, Вибране з FAT Значення звітність, зсунуті вправо на 4 біта, залиша старші 12 біт. p align="justify"> отриманий результат - номер такого кластера в ланцюгу, значення 0fffh відповідає кінцю ланцюга кластерів.
Файлова система {DOS} має деревоподібну структуру. У Коренєва каталозі розташовуються 32-байтові елєменти, что містять інформацію про файли й...