Дипломная работа: Програма для роботи з файловою системою

FF8-FFFH FFF8-FFFFH Останній кластер в |

файлі |

Всі інші значення Посилання на наступний |

кластер у файлі |

____________________________________________________________________|

Вхід FAT

0 1 2 3 4 5 6 7 8 9

___________________________________________________________________

| FFDH| FFFH| 003H| 005H| FF7H| 006H| FFFH| 000H| 000H| 000H|

| 4093| 4095| 3 | 5 | 4087| 6 | 4095| 0 | 0 | 0 |

|___________________________________________________________|______

| | | |

| | | |

| | | |

| | | |__ не використаний:

| | | доступний кластер

| | |

| | |_____ використати не можна

| |

| |______ не використається: не доступний

|

|

|______ диск двосторонній з подвійною щільністю

Розподіл пам'яті в FAT для типового диска MS DOS

FAT є високоефективною "бухгалтерською" системою, однак тут можуть виникнути різні проблеми й необхідність компромісних рішень. Одна із проблем пов'язана з наявністю частково заповненого кластера наприкінці файлу. При цьому виникає проблема ефективності, пов'язана з використанням кластера більшого розміру, коли відбувається виділення цілого кластера, незалежно від числа содержащихся в ньому байтів. Наприклад, десять 100-байтовых файлів на диску із кластерами розміром по 16 Кбайт, займає 160 Кбайт дискової пам'яті; ті ж файли на диску із кластерами розміром 1 Кбайт займають тільки 10 Кбайт – різниця становить 150 Кбайт, що означає зменшення обсягу пам'яті в 15 разів при використанні кластерів меншого розміру. З іншого боку, програма для 12-бітової FAT, показана на мал.3-10, демонструє складність (а отже, низьку швидкість) переміщення у великому файлі, які мають довгий список посилань між невеликими кластерами. Таким образом, необхідно враховувати характер даних: додатка більших баз даних працюють ефективніше всього із кластерами більшого розміру; використовують кластери меншого розміру, можна розмістити на диску безліч невеликих текстових файлів драйвер, що розробляє, для дискового програміст звичайно встановлює розмір кластера).

Внаслідок відключення електроенергії або безладного виконання програм виникають проблеми руйнування каталогів або таблиць розміщення файлів, які , не будучи виправлені, можуть привести до більше серйозним проблемам. Програма MS DOS CHKDSK може виявляти й фіксують деякі дефекти. (см. КОМАНДИ КОРИСТУВАЧА CHKDSK). Наприклад, однієї з типових проблем є наявність списків "повислих" посилань (dangling allocation lists), викликане тим, що в каталозі відсутній покажчик на початок списку. Подібна ситуація часто буває, коли не був обновлений вхід у каталог, тому що не відбулося закриття файлу перед вимиканням або перезавантаженням комп'ютера. Наслідки цього досить необразливі: дані недоступні, однак це обмеження не впливає на інші операції по розміщенню файлів. Команда CHKDSK може вирішити цю проблему, створивши новий вхід каталогу й зв'язавши його зі списком.

Інші труднощі виникають, якщо розмір файлу у вході каталогу не збігається з його довжиною, що обчислює за допомогою перегляду списку посилань в FAT. Це може викликати невірне виконання програми і повідомлення про помилки MS DOS.

Більше складна й рідше виникаюча проблема зустрічається, коли вхід каталогу заданий правильно, однак список посилань (весь або деяка його частина) використаний також іншим входом каталогу. Виникає важка ситуація, тому що запис або додавання в один файл змінює вміст іншого. Ця помилка звичайно викликає серйозне руйнування даних й/або каталогу й приводить до краху системи.

Подібна проблема зустрічається, коли список зв'язків завершується вільним кластером замість номера останнього кластера. Якщо вільний кластер розподілений до виправлення цієї помилки, ситуація наприкінці кінців перетворюється в описаний вище випадок. Пов'язана із цим труднощі виникає, коли зустрічається значення посилання 1 або значення, перевищує розмір FAT.

Крім CHKDSK, для обслуговування FAT можна використати безліч комерційно доступних сервісних програм. Наприклад, програми реорганізації диска (disk reorganizers) можна застосовувати для зміни структури FAT й упорядкування каталогу так, щоб всі файли на диску були розміщені послідовно в області файлів даних й, зрозуміло, в FAT.

К-во Просмотров: 386
Бесплатно скачать Дипломная работа: Програма для роботи з файловою системою