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,格式化失败;

相关推荐
Christal_pyy3 小时前
树莓派4基于Debian GNU/Linux 12 (Bookworm)添加多个静态ipv4网络
linux·网络·debian
csbDD4 小时前
2025年网络安全(黑客技术)三个月自学手册
linux·网络·python·安全·web安全
李狗蛋儿啊4 小时前
zero自动化框架搭建---Git安装详解
运维·git·自动化
小金的学习笔记5 小时前
如何在本地和服务器新建mysql用户和密码
运维·服务器·mysql
s_fox_5 小时前
nginx ngx_http_module(7) 指令详解
运维·nginx·http
EasyNVR5 小时前
EasyRTC智能硬件:实时畅联、沉浸互动、消音护航
运维·服务器·网络·安全·音视频·webrtc·p2p
CarryBest6 小时前
Jenkins 环境搭建---基于 Docker
运维·jenkins
若云止水6 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_process_options
运维·nginx
s_fox_6 小时前
nginx ngx_http_module(9) 指令详解
运维·nginx·http
风口上的猪20156 小时前
thingboard告警信息格式美化
java·服务器·前端