Общая картина
Создание файлов
Процесс создания файла в системе FAT будет продемонстрирован на примере dirl\filel.dat. В рассматриваемом примере каталог dirl уже существует, размер кластера составляет 4096 байт, а размер файла — 6000 байт. Мы читаем загрузочный сектор из сектора 0 тома и находим в нем структуры FAT, область данных и корневой каталог. Чтобы найти каталог dirl, мы перебираем все записи корневого каталога в поисках записи с именем dirl и установленным атрибутом каталога. Запись успешно найдена, и ее начальный кластер равен 90. Мы читаем содержимое начального кластера dirl (90) и последовательно перебираем все записи, хранящиеся в нем, пока не будет найдена свободная запись каталога. Мы находим свободную запись и переводим в выделенное состояние, записывая в нее имя filel.txt. Размер и текущее время тоже записываются в соответствующие поля.
Настает очередь выделения кластеров для содержимого; переходим к поиску в структуре FAT. Файлу выделяется кластер 200, для чего записи этого кластера присваивается маркер EOF. Адрес кластера 200 записывается в поле начального кластера записи каталога. Первые 4096 байт содержимого файла записываются в кластер. Остается еще 1904 байт, поэтому потребуется второй кластер. После поиска в структуре FAT файлу выделяется еще один кластер 201. В запись FAT первого кластера (200) заносится значение 201. Последние 1904 байт файла записываются в кластер 201.
Состояние файловой системы после создания файла показано на рис. 9.17.
Пример удаления файла
Теперь посмотрим, как происходит удаление файла dirl\fiLel.txt. Мы читаем загрузочный сектор из сектора 0 тома и находим в нем структуры FAT, область данных и корневой каталог. Чтобы найти каталог dirl, мы перебираем все записи корневого каталога в поисках записи с именем dirl и установленным атрибутом каталога. Запись успешно найдена, и ее начальный кластер равен 90. Мы перебираем содержимое начального кластера dirl (90) в поисках записи с именем filel.txt. По записи определяется начальный кластер файла (200). При помощи структуры FAT определяется цепочка кластеров файла. В данном случае файлу выделены кластеры 200 и 201.
В записи FAT кластеров 200 и 201 заносятся нули. Запись каталога файла filel.txt освобождается, для чего в ее первый байт заносится значение 0хе5.
Итоговое состояние системы показано на рис. 9.18. Стертые ссылки обозначены пунктирными линиями, а первая буква имени файла удалена из записи каталога.
Еще по теме Общая картина:
- Общая картина
- Общая картина
- Общая картина
- Общая картина
- КУЛЬТУРНАЯ КАРТИНА МИРА
- Какими мне кажутся картины
- Картина мира.
- Картина мира.
- В. В. Казютинский. Астрономия и современная картина мира, 1996
- Содержание творчества — «картины сердцам
- ОБЩАЯ ЧАСТЬ Раздел I. ОБЩАЯ ХАРАКТЕРИСТИКА УГОЛОВНОГО ПРАВА (ALLGEMAIN GRUNDLAGEN)
- §4. ИСХОДНЫЕ ПОНЯТИЯ КУЛЬТУРОЛОГИИ: КУЛЬТУРА, ЦИВИЛИЗАЦИЯ, МЕНТАЛИТЕТ И МЕНТАЛЬНОСТЬ, КУЛЬТУРНАЯ КАРТИНА МИРА