Министерство образования РФ
Хабаровский государственный технический университет
Заочный факультет ускоренного обучения
Кафедра «Вычислительная техника»
По дисциплине «Организация ЭВМ и систем»
Исследование таблицы размещения файлов
(FAT - таблицы) ОС MS-DOS
Работу выполнил: студент Войтенок А.А.
Шифр № 4кПОв 0013796
Проверил: доцент к.т.н. Шоберг А.Г.
г. Хабаровск
2002 г.
Цель работы: Изучить структуру и назначение FAT - таблицы ОС MS-DOS
1. FAT таблица размещается после загрузочной записи диска. Структура FAT:
FAT16 |
F8 |
FF |
FF |
FF |
FF |
FF |
FF |
FF |
номер кластера |
номер кластера |
номер кластера |
||||
FAT12 |
F0 |
FF |
FF |
FF |
FF |
FF |
номер кластера |
номер кластера |
номер кластера |
номер кластера |
номер кластера |
||||
FAT16 состоит из 16-битных ячеек, FAT12- из 12 битных. В каждой ячейке содержится номер следующего кластера в цепочке кластеров, принадлежащих файлу или признак окончания цепочки(FF8h-FFFh для FAT12, FFF8h-FFFFh для FAT16), свободного или резервного кластера. Номер кластера равен номеру ячейки в FAT- таблице.
Номер первого кластера из цепочки кластеров, принадлежащих файлу, может быть получен из дескриптора файла. Дескрипторы файлов, находящихся в корневом каталоге, размещаются в области Root, после FAT- таблиц. Смещение области Root (относительный номер сектора) вычисляется следующим образом:
число зарезервированных секторов+(количество FAT*длина FAT в секторах).
Структура дескриптора файла:
Смещение байт |
Размер байт |
Содержание |
0 |
8 |
Имя файла или каталога, выровненное на левую границу и дополненное пробелами |
8 |
3 |
Расширение имени файла, выровненное на левую границу и дополненное пробелами |
11 |
1 |
Байт атрибутов файла |
12 |
10 |
Зарезервировано |
22 |
2 |
Время создания файла или время его последней модификации |
24 |
2 |
Дата создания файла или дата его последней модификации |
26 |
2 |
Номер первого кластера, распределенного файлу |
28 |
4 |
Размер файла в байтах |
Имена файлов и каталогов – в верхнем регистре.
В соответствии с заданием доработана программа из лабораторной работы 1, таким образом, что возможно получение цепочки кластеров для файла из корневого каталога. Имя файла должно задаваться в верхнем регистре.
Контрольные вопросы.
4. Каталоги в системе MS-DOS организованы в виде дерева каталогов. Корневой каталог хранится в Root- области логического диска, его длина фиксирована. Подкаталоги являются файлами, содержащими записи(дескрипторы) каталогов более низкого уровня либо дескрипторы файлов, входящих в каталог. Дескриптор каталога отличается от дескриптора файла значением байта атрибута: для подкаталога байт атрибутов равен 10h
Текст программы:
data segment para public 'data'
BUFFER db 512 dup(?)
MESSAGE db 'Disk drive: $'
NL dw 0D0Ah
FILESYSTEM db 'Type of file system: $'
BYTEPERSECTOR db 'Bytes per sector: $'
RESERVEDSECTORS db 'Reserved sectors: $'
FATCOUNT db 'FAT count: $'
MAXDESCCOUNT db 'Max descriptors count in root catalog: $'
SECTORPERFAT db 'Sectors count in FAT: $'
ROOTOFFSETSTRING db 'Root offset: $'
FOUNDMESSAGE db 'File found $'
NOTFOUNDMESSAGE db 'File not found $'
NAMESTRING db 'Name: $'
EXTSTRING db 'Extension: $'
STRING db 10 dup(?)
MESSAGE_FILE db 0ah,0dh,'File name : $'
FILENAME db 20 dup (0)
FNAME db 10 dup (0) ; имя файла
EXT db 3 dup (0) ; расширение
NAMELEN db 0 ;длина имени
EXTLEN db 0 ;длина расширения
DISK db 0 ; номер диска
TYPEFAT db 0 ; тип FAT 0-12,1-16
FAT16 db 'FAT16'
RESSECT dw 0 ; зарезервировано секторов
FAT_SIZE dw 0 ; секторов в FAT
FAT_CNT db 0 ; количество FAT
DESC_CNT dw 0 ; количество дескрипторов в корневом каталоге
FAT_OFFSET dw 0 ; первый сектор FAT
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.