Файловая система MS-DOS (FAT-12,16,32)

В первых версиях был только один каталог (MS-DOS 1.0).

С версии MS-DOS 2.0 применили иерархическую структуру.

Каталоговые записи, фиксированны по 32 байта.

Имена файлов - 8+3 символов верхнего регистра.

Порядок чтения файлов:

1. Файл открывается системным вызовом open, которому указывается путь к файлу (может быть абсолютным и относительным).

2. Файловая система открывает каталоги (согласно пути), считывает последний каталог в память.

3. Ищет описатель файла.

4. Читается дескриптор файла, из которого получает информацию о всех блоках.

5. Вызывается системный вызов read

Каталоговая запись MS-DOS, обратите внимание на пустые 10 байт, они будет задействованы в Windows 98

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

Поле время (16 разрядов) разбивается на три подполя:

1. секунды - 5бит (2^5=32 поэтому хранятся с точностью до 2-х секунд)

2. минуты - 6бит

3. часы - 5бит

Поле даты (16 разрядов) разбивается на три подполя:

1. день - 5бит

2. месяц - 4бита

3. год - 7бит (начинается с 1980г, т.е. максимальный 2107г.)

Теоретически размер файлов может быть до 4Гбайт (32 разряда).

Все блоки файла в записи не хранятся, а только первый блок. Этот номер используется в качестве индекса для 64К (для FAT-16) элементов FAT-таблицы, хранящейся в оперативной памяти.

В зависимости от количества блоков на диске в системе MS-DOS применяется три версии файловой системы FAT:

1. FAT-12

2. FAT-16

3. FAT-32 - для адреса используются только 28 бит, поэтому правильнее назвать FAT-28

Размер блока (кластера) должен быть кратным 512 байт.

FAT-12

В первой версии MS-DOS использовалась FAT-12с 512 байтовыми блоками, поэтому максимальный размер раздела мог достигать 2Мбайта (2^12*512байта).

С увеличением дисков, этого стало не хватать, стали увеличивать размер блоков 1,2 и 4 Кбайта (2^12) (при этом эффективность использования диска падает).

FAT-12до сих пор применяется для гибких дисков.

 

FAT-16

Особенности:

· 16-разрядные дисковые указатели

· Размеры кластеров 512, 1, 2, 4, 8, 16 и 32Кбайт (2^15)

Таблица постоянно занимала в памяти 128 Кбайт.

Максимальный размер раздела диска мог достигать 2Гбайта (2^16*32Кбайта).

Причем кластер в 32 Кбайта для файлов со средним размером в 1Кбайт, не эффективен.

FAT-32

Особенности:

· 28-разрядные адреса

· Размеры кластеров 512, 1, 2, 4, 8, 16 и 32Кбайт

Максимальный размер раздела диска мог бы достигать 2^28*2^15, но здесь уже вступает другое ограничение - 512 байтные сектора адресуются 32-разрядным числом, а это 2^32*2^9, т.е. 2 Тбайта.

Максимальный размер раздела для различных размеров кластеров

Размер кластера, Кбайт Fat-12, Мбайт Fat-16, Мбайт Fat-32, Тбайт
0.5 0.13
0.27
0.54
 
 
 

Из таблицы видно, что FAT-16 использовать не эффективно уже при разделах в 256 Мбайт, учитывая, что средний размер файла 1Кбайт.








Дата добавления: 2014-12-21; просмотров: 1132;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.