реклама на сайте
подробности

 
 
> Минимальный размер раздела FAT, Библиотека ELM Chan
Sergey_Aleksandr...
сообщение Aug 14 2018, 15:40
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 168
Регистрация: 8-10-08
Из: РФ Смоленск
Пользователь №: 40 764



В сети уйма статей с описанием максимально-допустимого размера раздела в файловых системах FAT16 и FAT32, а вот про минимальный размер ни слова. Начал разбираться с драйвером FAT от ELM Chan'a. В функции создания раздела f_mkfs()
Код
    // b_vol - Базовый LBA раздела
    // sz_vol - Общее число секторов в составе раздела

    /* Create a single-partition in this function */
    if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &sz_vol) != RES_OK) LEAVE_MKFS(FR_DISK_ERR);
    b_vol = (opt & FM_SFD) ? 0 : 63;        /* Volume start sector */
    if (sz_vol < b_vol) LEAVE_MKFS(FR_MKFS_ABORTED);
    sz_vol -= b_vol;                        /* Volume size */

    if (sz_vol < 128) LEAVE_MKFS(FR_MKFS_ABORTED);    /* Check if volume size is >=128s */

Т.е. начальный сектор раздела начинается с #63 (либо #0 в случае использования SFD-тома). Но дальнейшая проверка (не менее 128 секторов) не даёт создать том. Выходит, что при минимальном размере сектора 512 байт минимальный размер диска должен быть 512*128=64 кБайт.
Для чего мне это надо? Требуется создать FAT-раздел внутри встроенной в МК Flash (свободно 20 кБайт, т.е. 40 LBA).
Библиотека всё-таки рассчитана на носители большого размера (SD-карты) и число 128 секторов могло появиться для ускорения/оптимизации работы алгоритма. Поэтому, если это субъективная реализация автора библиотеки, то попробую исправить руками хардкод. Если требования стандарта - откажусь от реализации FAT.
Полного и понятного описания структуры FAT (для нубов с картинками) пока не нашёл. Первый личный опыт работы с файловой системой )
PS На отладочной плате stmF0-Discovery установлен stm32F103C8 с 64 кБайтами Flash и при этом как-то FAT на нём реализован: при подключении по USB определяется как съёмный диск.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Den64
сообщение Aug 14 2018, 16:11
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 584
Регистрация: 22-11-07
Из: Курская область
Пользователь №: 32 571



Прикрепленный файл  fat.pdf ( 2.08 мегабайт ) Кол-во скачиваний: 49
старая статья из журнала. Может пригодится.
Есть ещё старая статья об FAT32 на английском от микрософт. Гуглится легко.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 16:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016