Чтение онлайн

на главную

Жанры

Тайны и секреты компьютера

Орлов Антон

Шрифт:

Чтобы решить эту проблему, был придуман принцип кластерной структуры жесткого диска и использования специальной таблицы размещения файлов. При использовании этого принципа весь жесткий диск как бы делится на множество кусочков равного обьема — кластеров, каждый из которых содержит одинаковое число секторов. В начале диска размещается особая область с данными — FAT-таблица (от File Allocation Table — таблица размещения файлов), в которой записывается, в каких кластерах находится содержимое каждого находящегося на жестком диске файла. Например, примерно так: "файл записан в 121, 122 и 123 кластерах".

С первого взгляда может показаться,

что это — такая же ситуация, как и ранее. Но все дело в том, что один файл может располагаться не в последовательно расположенных кластерах, а в множестве отдельных кластеров, разбросанных по всему диску. Достаточно лишь перечислить номера этих кластеров и указать их последовательность друг за другом. То есть в FAT может появиться такая информация: "файл расположен в кластерах 120, 124 и 137". Операционная система, получив запрос на чтение этого файла, смотрит в FAT, в каких кластерах он записан, а потом последовательно их считывает, переписывая содержимое этих кластеров в оперативную память и соединяя его в ней в один неразрывный файл.

Когда же операционной системе надо записать данные на жесткий диск, то она смотрит по таблице размещения файлов, где находится первый свободный кластер (то есть кластер, который не принадлежит какому-либо файлу), и пишет данные в него и последующие кластеры, указывая их номера в той же таблице. Но как только процесс записи файла на диск натыкается на занятый кластер, то система вновь ищет ближайший свободный кластер, следующий за занятыми, и продолжает запись данных на диск с него. [20] Если файл удаляется, то соответствующие ему кластеры освобождаются (точнее, просто их номера помечаются в таблице размещения файлов как свободные), и в эти кластеры снова возможна запись других данных.

20

Точно так происходит только в MS-DOS. Операционные системы Windows 9x ищут первый участок размером в 500 кб и больше, состоящий из пустых кластеров.

Таблица 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'овый, скажем, файл на жесткий диск, и вы заметите, как диск «хрюкнет» — то есть произойдет перемещение головок взад-вперед по диску. Причем шумовой эффект не будет зависеть от фрагментированности диска — даже на абсолютно чистом диске с единственным редактируемым файлом шум все же появится. Это так, потому что для записи файла головки жесткого диска будут перемещаться между областью FAT-таблицы, которая располагается в начале диска, и собственно записываемыми данными на диске.

Каталоги

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

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

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

Поделиться:
Популярные книги

Вечный. Книга IV

Рокотов Алексей
4. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга IV

Боярышня Дуняша

Меллер Юлия Викторовна
1. Боярышня
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Боярышня Дуняша

И только смерть разлучит нас

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
И только смерть разлучит нас

Газлайтер. Том 3

Володин Григорий
3. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 3

Шипучка для Сухого

Зайцева Мария
Любовные романы:
современные любовные романы
8.29
рейтинг книги
Шипучка для Сухого

Агенты ВКС

Вайс Александр
3. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Агенты ВКС

Мастер Разума II

Кронос Александр
2. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.75
рейтинг книги
Мастер Разума II

Все еще не Герой!. Том 2

Довыдовский Кирилл Сергеевич
2. Путешествие Героя
Фантастика:
боевая фантастика
юмористическое фэнтези
городское фэнтези
рпг
5.00
рейтинг книги
Все еще не Герой!. Том 2

Сонный лекарь 4

Голд Джон
4. Не вывожу
Фантастика:
альтернативная история
аниме
5.00
рейтинг книги
Сонный лекарь 4

Санек

Седой Василий
1. Санек
Фантастика:
попаданцы
альтернативная история
4.00
рейтинг книги
Санек

Мимик нового Мира 5

Северный Лис
4. Мимик!
Фантастика:
юмористическая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Мимик нового Мира 5

Райнера: Сила души

Макушева Магда
3. Райнера
Любовные романы:
любовно-фантастические романы
7.50
рейтинг книги
Райнера: Сила души

Сын Петра. Том 1. Бесенок

Ланцов Михаил Алексеевич
1. Сын Петра
Фантастика:
попаданцы
альтернативная история
6.80
рейтинг книги
Сын Петра. Том 1. Бесенок

Live-rpg. эволюция-3

Кронос Александр
3. Эволюция. Live-RPG
Фантастика:
боевая фантастика
6.59
рейтинг книги
Live-rpg. эволюция-3