Категории
Самые читаемые
onlinekniga.com » Разная литература » Газеты и журналы » Интернет-журнал 'Домашняя лаборатория', 2007 №3 - Живцов

Интернет-журнал 'Домашняя лаборатория', 2007 №3 - Живцов

Читать онлайн Интернет-журнал 'Домашняя лаборатория', 2007 №3 - Живцов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 216 217 218 219 220 221 222 223 224 ... 336
Перейти на страницу:
той же таблице. Но как только процесс записи файла на диск натыкается на занятый кластер, то система вновь ищет ближайший свободный кластер, следующий за занятыми, и продолжает запись данных на диск с него[20]. Если файл удаляется, то соответствующие ему кластеры освобождаются (точнее, просто их номера помечаются в таблице размещения файлов как свободные), и в эти кластеры снова возможна запись других данных.

Таблица FAT

Таблица FAT — это как бы уменьшенное изображение строения всего жесткого диска (рис. 8.2). Она состоит из отдельных записей-"строчек" с информацией о последовательности кластеров в файлах.

Рис. 8.2. Если вы хотите наглядно представить себе, что такое FAT, то запустите программу дефрагментации диска из Windows95/98 и отобразите сведения о диске. Вот FAT — это примерно то же самое, только там вместо цветных квадратиков — отдельные записи, описывающие состояние каждого кластера диска.

В каждой записи FAT содержится информация следующих видов:

1. Если кластер, к которому относится данная запись FAT, не является последним в файле, то в данной записи будет указан номер следующего кластера, в котором записан данный файл.

2. Если кластер, к которому относится данная запись FAT, является последним в файле, то в данной записи будет стоять специальная метка конца файла.

3. Если кластер, к которому относится данная запись FAT, не относится ни к какому файлу, то в данной записи будет находится информация, указывающая, что этот кластер свободный.

4. Если кластер, к которому относится данная запись FAT, расположен на поврежденной области диска, то в данной записи будет находится информация, указывающая, что этот кластер поврежден и не должен использоваться.

Каждая запись в FAT имеет вполне определенную длину — 12, 16 или 32 бита. В зависимости от длины отдельных таких записей в FAT ее разновидности так и называются — FAT12, FAT16 и FAT32.

С целью повышения надежности на диске обычно находится две копии FAT, записанные в его начале одна за другой. При сбое в первой копии используется вторая, резервная, а при сбое в обоих — лучше сохранившаяся.

О том, с какого сектора начинается каждый кластер, нетрудно рассчитать на основе информации о размерах кластера и номере сектора начала области с файлами, разбитой на кластеры, что, собственно, и делается операционной системой.

Узнать, какая файловая система установлена на вашем жестком диске, в операционных системах Windows можно в окне "Свойства диска". (Файловая система FAT16 обозначается как просто "FAT".)

В FAT располагается информация только о физическом строении файлов — о том, в каких кластерах располагается каждый файл. В ней нет ни названий файлов, ни дат их создания, вообще — нет никакой информации о них. Только информация о связях кластеров между собой в файлы.

При обращении операционной системы, скажем, для чтения какого-либо файла она обязана посмотреть сначала в FAT, узнать, в каких кластерах располагается нужный файл, а затем приказать головкам жесткого диска пройтись по этим кластерам и считать их содержимое. То есть — при каждом запросе на считывание или запись файла обязательно происходит обращение и к FAT. Вследствие этого с целью предотвратить постоянные перемещения головок по жесткому диску (к FAT и к кластерам с данными) FAT переписывается в оперативную память — кэшируется, и работа с ее копией на самом диске происходит лишь при изменении таблицы FAT, например, при создании нового файла или сохранении созданного ранее.

Сохраните лишний раз в процессе работы какой-нибудь Word'oBbrii, скажем, файл на жесткий диск, и вы заметите, как диск "хрюкнет" — то есть произойдет перемещение головок взад-вперед по диску. Причем шумовой эффект не будет за висеть от фрагментированности диска — даже на абсолютно чистом диске с единственным редактируемым файлом шум все же появится. Это так, потому что для записи файла головки жесткого диска будут перемещаться между областью FAT-таблицы, которая располагается в начале диска, и собственно записываемыми данными на диске.

Каталоги

Как уже было сказано, в FAT-таблице располагается информация только о размещении файлов в кластерах. Ну а где же хранятся имена файлов, их даты создания, атрибуты? И где находится информация о первом кластере каждого файла? Если в FAT информации о них нет, то где же она?

А хранится она в каталогах.

Каталог — это попросту файл, почти такой же, как и все остальные, занимающий место на диске, только содержащий данные о других файлах (и каталогах), которые в нем находятся.

В файле каталога записана информация о находящихся в нем файлах (и вложенных других каталогах): их имена, объем, даты изменения и создания, атрибуты, а также указывается номер самого первого кластера, занимаемого каждым файлом (и файлом-каталогом!). Каждая запись о файле называется дескриптором файла, запомните это слово — оно еще пригодится вам при чтении программистской литературы. Кроме того, во всех файлах каталогов, кроме корневого, имеется ссылка на первый кластер "родительского" каталога — то есть того каталога, который содержит этот самый каталог.

В файлах каталогов, созданных в Windows95 и более старших версиях этой операционной системы, в каждом дескрипторе хранится как длинное имя файла, так и короткое — вида progra~1.exe, которое находится в том же месте дескриптора, что и в каталогах, созданных в MS-DOS. Таким образом обеспечивается возможность работы с созданными в Windows каталогами в старых операционных системах — эти системы смотрят в файл каталога и считывают оттуда лишь короткие имена файлов, а системы Windows умеют считывать из дескрипторов еще и длинные имена. Естественно, что при копировании или перемещении средствами MS-DOS файлов, созданных в Windows, длинные имена теряются, так как в этом случае операционная система MS-DOS копирует данные о файлах из одного файла каталога в другой, а так как она не умеет читать ту часть дескрипторов этих файлов, в которой записаны их длинные имена, то она их и игнорирует.

Файл корневого каталога диска физически всегда расположен в одном и том же месте на диске — сразу после таблицы FAT, присутствующей на диске в виде двух копий, идущих друг за другом — для повышения надежности.

Так как каталог — это обычный файл, то пустой каталог все равно будет занимать место на диске. К примеру, создайте на пустой дискете пустую папку и посмотрите объем дискеты. На ней будет занято 512 байт (рис. 8.3).

Рис. 8.3. Пустая папка тоже занимает место.

Это и есть объем файла, являющегося этим каталогом. Или, если у вас установлен пакет программ Norton

1 ... 216 217 218 219 220 221 222 223 224 ... 336
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Интернет-журнал 'Домашняя лаборатория', 2007 №3 - Живцов.
Комментарии