Библиотека FatFS: f_mkfs Печать
Добавил(а) microsin   

f_mkfs

Функция f_mkfs создает файловую систему FAT на логическом диске.

 

FRESULT f_mkfs (
  BYTE  Drive,            /* Логический номер диска */
  BYTE  PartitioningRule, /* Привило разделения на разделы */
  UINT  AllocSize         /* Размер кластера (allocation unit) */
);

Параметры

Drive
Логический номер диска (0-9), который будет форматироваться.
PartitioningRule
Указывает принцип разделения на разделы (partitioning rule), FDISK(0) или SFD(1). В некоторых случаях этот аргумент игнорируется.
AllocSize
Принудительно задает размер единицы данных (allocation unit, cluster) в байтах. Значение должно быть числом, равным степени двойки, и находится между размером сектора и 128 * размер сектора. Когда в этом параметре задано значение 0, то размер кластера будет выбран автоматически по размеру форматируемого тома.

Возвращаемые значения

FR_OK, FR_DISK_ERR, FR_NOT_READY, FR_WRITE_PROTECTED, FR_INVALID_DRIVE, FR_NOT_ENABLED, FR_MKFS_ABORTED, FR_INVALID_PARAMETER

Описание

Функция f_mkfs создает том FAT на логическом диске. Когда указано partitioning rule FDISK, главный раздел (primary partition) будет занимать весь объем создаваемого диска, и том FAT будет создан на этом разделе. Когда указано partitioning rule SFD, то том FAT начнется с первого сектора физического диска.

Если логический диск при привязан к любому разделу (partition 1-4) при использовании опции поддержки нескольких разделов (_MULTI_PARTITION), том FAT будет создан на указанном разделе. В этом случае второй аргумент будет игнорироваться. Перед использовании функции f_mkfs физический диск должен быть разбит на разделы функцией f_fdisk или любым другим инструментом.

Имейте в виду, что есть два принципа разбиения на разделы, FDISK и SFD. Формат FDISK обычно используется для жестких дисков HDD, MMC, SDC и CFC. Он может использоваться для деления физического диска на один или большее количество разделов, с созданием таблицы разделов в MBR (Master Boot Record). Формат SFD является методом без использования разделов диска. Том FAT начинается с первого сектора физического диска, и таблица разделов отсутствует. Если используется гибкий диск (floppy disk), Microdrive, оптический диск, или физический носитель super-floppy.

Разновидности (подтипы) FAT FAT12/FAT16/FAT32 определяются по количеству кластеров на томе и никак иначе, в соответствии со спецификацией FAT от Microsoft. Таким образом, подтип FAT будет выбран исходя из размера тома и указанного размера кластера (третий параметр функции). Размер кластера влияет на быстродействие файловой системы, и увеличение размера кластера увеличивает быстродействие.

Когда количество кластеров становится близким к границе перехода между подтипами FAT, функция может вернуть ошибку FR_MKFS_ABORTED.

Краткая информация (QuickInfo)

Функция доступна, когда _FS_READOLNY == 0 и _USE_MKFS == 1.

См. также

Volume management (управление томами), f_fdisk

[Ссылки]

1. f_mkfs - создание файловой системы на диске (оригинал статьи на английском языке).