f_mkfs格式化最小分区数是191

使用fatfs的f_mkfs最小分区数是191原因:

在挂载ram_disk时参考的文章有提到:

"然后是GET_SECTOR_COUNT 用于f_mkfs格式化时获取可用的sector的数量,32bit-LBA的情况下至少为191"

自己也实际试过确实要不少于191,网上也没找到相关说明。debug跟踪到f_mkfs文件中

  • 我定义的190个扇区每个扇区512个字节
  • 进入f_mkfs代码中

这个函数会得到我设置的扇区数即190保存数sz_vol中

在这里sz_vol会被减去N_SEC_TRCK,N_SEC_TRCK宏定义为63,这个63组成如下

最小的文件系统结构:

  • 引导扇区:1个扇区
  • FAT表:假设需要128个扇区(具体数量取决于存储设备大小和FAT类型)
  • 根目录区:32个扇区
  • 其他必要的结构和保留扇区:30个扇区
  • 总计:1 + 128 + 32 + 30 = 191个扇区

190-63 = 127 ;小于最少128个卷的大小,返回FR_MKFS_ABORTED,格式化失败;

相关推荐
EnglishJun10 小时前
Linux系统编程(二)---学习Linux系统函数
linux·运维·学习
QT.qtqtqtqtqt10 小时前
SQL注入漏洞
java·服务器·sql·安全
小Pawn爷10 小时前
2.Docker的存储
运维·docker·容器
CaracalTiger10 小时前
OpenClaw-VSCode:在 VS Code 中通过 WebSocket 远程管理 OpenClaw 网关的完整方案
运维·ide·人工智能·vscode·websocket·开源·编辑器
qq_54702617910 小时前
LangChain 1.0 核心概念
运维·服务器·langchain
VekiSon10 小时前
Linux内核驱动——设备树原理与应用
linux·c语言·arm开发·嵌入式硬件
Trouvaille ~11 小时前
【Linux】进程间关系与守护进程详解:从进程组到作业控制到守护进程实现
linux·c++·操作系统·守护进程·作业·会话·进程组
晚霞的不甘11 小时前
Flutter for OpenHarmony 打造沉浸式呼吸引导应用:用动画疗愈身心
服务器·网络·flutter·架构·区块链
生而为虫11 小时前
[Windows] 【浏览器自动化精灵V1.0】用Excel表格控制浏览器的自动化
运维·自动化
Fcy64811 小时前
Linux下 进程(二)(进程状态、僵尸进程和孤儿进程)
linux·运维·服务器·僵尸进程·孤儿进程·进程状态