Самая популярная архитектура для персональных компьютеров в мире

Файловая система FAT12

FAT12 - файловая система, широко применяемая на гибких магнитных дисках. Является первой популярной файловой системой на IBM PC - совместимых компьютерах. Самае последнее устройство накопления информации, которое использовало файловую систему FAT12 были гибкий диск диаметром 3.5 дюйма и емкостью 1,44 МБ. Были еще дискеты размером 2,88, но они не получили большого распространения.
Дискеты с файловой системой FAT12

Структура файловой системы FAT12

Файловая система FAT12 состоит из следующих частей.

  • BPB - Bios Parameter Block
  • Таблица FAT
  • Корневой каталог
  • Данные
  • Копия таблицы FAT
  • Данные
  • В блоках данных содержится не только содержимое самих файлов, но и вложенные каталоги, создаваемые иерархию файловой системы.

    Кластер

    Все пространство файловой системы FAT12 разделено на блоки, кратные размеру сектора дискеты (512 байт). В применении к дискетами размер кластера обычно выбирается равным одному сектору. Каждый непустой файл занимает минимум 1 кластер. Поэтому если на дискете будет много маленьких файлов, то много места будет пропадать зря. Максимальный размер кластера для файловой системы FAT12 составляет 8192 байта.

    Таблица FAT

    Таблица FAT содержит записи для каждого кластера FAT12. В названии этой файловой системы присутствует число 12. Это число есть количество бит в записи таблицы FAT для каждого кластера. 12-ти битная запись это номер следующего кластера файла. Специальные значения записей таблицы FAT:

  • 0x0000 - свободный кластер
  • 0x0FF8 - последний кластер файла
  • 0x0FF7 - поврежденный кластер
  • Максимальный размер диска

    Максимальный размер диска FAT12 ограничен 32 мегабайтами при максимальном размере кластера 8 кб (16 секторов). В реальности размер кластера FAT12 составляет 512 байт, т.е. один сектор. Максимальное количество кластеров = 4096. Итого максимальный размер тома, когда кластер равен сектору, составляет 2097152 байт, или 2 Мегабайта.

    Работа с FAT12 в .NET

    Для создания файлов-образов с файловой системой FAT12 можно использовать библиотеку Discutils. Ее можно найти в NuGet. Кроме FAT12 эта библиотека умеет работать с различными файловыми системами (FAT12/16/32) и форматами образов (VHD, VMDK, VDI, ISO, UDF, SDI, WIM).

    Copyright (c) 2014, cpubook.ru
    Архитектура x86