| ||||||||||||||||||
Корневой каталог. Каталог представляет из себя простую базу данных, в которой содержится информация о файлах, хранящихся на диске. Длина каждой записи в этой базе данных составляет 32 байта и между ее полями и записями нет каких-либо ограничительных или разделительных символов. В каталоге хранятся практически все сведения о файле, доступные DOS: имя и дата создания, атрибуты, размер и координаты начала файла на диске. (Но в каталоге нет данных о том, где расположено продолжение файла, равно как и сведений о его непрерывности или фрагментированности. Эта информация хранится в FAT.)
Каталоги подразделяются на два типа: корневые и подкаталоги. Они, в основном, различаются тем, сколько их может быть на диске и в каких местах они располагаются. В каждом томе DOS может быть только один корневой каталог, и размещается он всегда в определенном месте — сразу следом за двумя копиями FAT. Его размер может быть разным для дисков различных типов и объемов, но для каждого отдельно взятого диска он постоянный. После того как корневой каталог создан, его длина фиксируется и не может быть изменена за счет добавления новых элементов. Обычно в корневом каталоге можно разместить до 512 элементов. Что касается подкаталогов, то они хранятся в области данных диска как файлы, поэтому их длина не ограничивается.
Все каталоги, независимо от того, являются ли они корневыми или подкаталогами, организованы одинаково. Как уже было сказано, они представляют из себя небольшие базы данных с фиксированной длиной записи (32 байта). Данные о файлах, собранные в каталоге, связаны с информацией о тех яке файлах, хранящейся в FAT, через поле, в которое заносятся координаты начального кластера файла. Если бы размеры всех файлов на диске не превышали бы размеров одного кластера, то FAT была бы не нужна. Еще раз повторим, что в каталоге содержатся сведения только о первых занимаемых файлами кластерах — информация об остальных хранится в FAT.
Таким образом, процедура поиска файла на диске заключается в следующем: сначала из каталога считываются данные о положении начального кластера и размере файла. После этого DOS обращается к FAT, по которой и отслеживается вся цепочка кластеров, занятых файлом.
Формат каждой 32-разрядной записи в каталоге DOS приведен в табл. 20.13.
Таблица 20.13. Формат записи в каталоге DOS
Смещение Hex
i Dec
Длина поля
Описание
00h
0
8 байт
Имя файла
08h
8
3 байта
Расширение файла
OBh
11
1 байт
Атрибуты файла
OCh
12
10 байт
Зарезервированы
(00h)
16h
22
1 слово
Время создания
18h
24
1 слово
Дата создания
1Ah
26
1 слово
Начальный кластер
1Ch
28
1 двойное слово
Размер в байтах
В графе "Смещение" указаны как шестнадцатиричные (Hex), так и десятичные значения (Dec) смещений соответствующих полей относительно начала записи.
Cache (запас) в контексте терминов материнской платы обозначает быстродействующую буферную память между процессором и основной памятью. Кэш служит для частичной компенсации разницы в скорости процессора и основной памяти - там хранятся наиболее часто используемые данные. Когда процессор первый раз обращается к ячейке памяти, ее содержимое параллельно копируется в кэш, и в случае повторного обращения в скором времени может быть с гораздо большей скоростью выбрано из малого, но очень быстродействующего кэша, чем из относительно медленной основной памяти.
| На главную |