当前位置: 首页 > news >正文

带fat32文件系统的bin二进制文件制作教程

FAT 文件系统镜像生成与资源打包指南

目录

  1. 功能概述
  2. 跨平台实现方案
    • WSL/Ubuntu 方案
    • Windows 原生方案
  3. 资源打包流程
  4. 关键文件说明
  5. 文件系统参数对比
  6. 使用注意事项
  7. 典型应用场景

一、功能概述

本流程用于创建 FAT 文件系统格式的二进制镜像文件,将指定资源文件添加到镜像中,最终通过资源打包工具生成设备可用的资源文件(res.bin)。

二、跨平台实现方案

方案 A: WSL/Ubuntu 环境实现(推荐)

bash

安装必要组件(首次使用)
sudo apt update && sudo apt install -y dosfstools

创建8MB空白镜像
dd if=/dev/zero of=fat32.bin bs=1M count=8

格式化为FAT32
mkfs.fat -F 32 fat32.bin

挂载镜像文件
mkdir -p /tmp/fatmnt

sudo mount -o loop fat32.bin /tmp/fatmnt

复制资源文件
cp ./fat_nor/MIDI.mdb ./fat_nor/test.mp3 /tmp/fatmnt/

卸载镜像
sudo umount /tmp/fatmnt

方案 B: Windows 原生环境实现

  1. 创建create_disk.txt:
    text

create vdisk file=“C:\fat16.vhd” maximum=8

select vdisk file=“C:\fat16.vhd”

attach vdisk

create partition primary

format fs=fat quick

assign letter=I

exit

  1. 执行命令:
    batch

:: 创建虚拟磁盘

diskpart /s create_disk.txt

:: 复制文件

copy .\fat_nor*I:\

:: 导出二进制镜像

dd_tool\dd.exe if=.\I: of=.\fat16.bin bs=512

:: 卸载磁盘

diskpart /s detach_disk.txt

三、资源打包流程

batch

:: 执行资源打包

packres.exe -n fat_nor -o res.bin fat16.bin 0 -normal

:: 部署资源文件

copy .\res.bin …\res.bin

四、关键文件说明

文件/目录用途说明
fat_nor/资源文件存储目录
fat32.binLinux生成的FAT32镜像
fat16.binWindows生成的FAT16镜像
res.bin最终设备资源文件
packres.exe资源打包工具

五、文件系统参数对比

特性FAT32FAT16
最大文件大小4GB2GB
最大文件数268,435,43765,536
簇大小4KB-32KB2KB-64KB
兼容性现代设备旧式设备

六、使用注意事项

  1. 权限要求

    • Linux需要sudo执行挂载操作
    • Windows需要管理员权限运行diskpart
  2. 资源准备
    bash

检查资源文件大小
du -sh fat_nor/

  1. 镜像验证
    bash

检查文件系统完整性
fsck.fat -nv fat32.bin

七、典型应用场景

  • 嵌入式系统资源打包
  • 固件升级包制作
  • 批量生产系统镜像
:: for wsl or ubuntu create fat bin file 
@REM wsl --install -d Ubuntu
@REM wsl -d Ubuntu
@REM sudo apt update
@REM sudo apt install dosfstools
@REM dd if=/dev/zero of=fat32.bin bs=1M count=8
@REM mkfs.fat -F 32 fat32.bin
@REM mkdir /tmp/fatmnt
@REM sudo mount -o loop fat32.bin /tmp/fatmnt
@REM cp yourfile.txt /tmp/fatmnt/
@REM sudo umount /tmp/fatmnt:: for windows create fat bin file 
@REM diskpart
@REM create vdisk file="C:\fat16.vhd" maximum=8
@REM select vdisk file="C:\fat16.vhd"
@REM attach vdisk
@REM create partition primary
@REM format fs=fat quick
@REM assign letter=I
@REM copy C:\path\to\files\* I:\
@REM dd_tool\dd.exe if=\\.\I: of=.\fat16.bin bs=512
@REM detach vdiskset RES_FILE=./fat_nor/MIDI.mdb ./fat_nor/test.mp3.\packres.exe -n fat_nor -o res.bin fat16.bin 0 -normal
copy .\res.bin ..\res.bin

文章转载自:

http://719iCqtP.xkzrt.cn
http://8PgKoq8n.xkzrt.cn
http://xhZPHReA.xkzrt.cn
http://l3W4ZR5R.xkzrt.cn
http://9leDkdcr.xkzrt.cn
http://PqUcMA1f.xkzrt.cn
http://q4uPum3H.xkzrt.cn
http://hL3ycaf9.xkzrt.cn
http://AXYJdixm.xkzrt.cn
http://4rNVdqBQ.xkzrt.cn
http://ew2BbDK9.xkzrt.cn
http://3piacy4T.xkzrt.cn
http://MPCDFDU0.xkzrt.cn
http://lt2f1kSp.xkzrt.cn
http://yoCK5Gqz.xkzrt.cn
http://SRGTI5fm.xkzrt.cn
http://SkYAspge.xkzrt.cn
http://4EACVmO2.xkzrt.cn
http://My6QSn1m.xkzrt.cn
http://i9mTAetp.xkzrt.cn
http://m262Ih3Q.xkzrt.cn
http://eVA6gHSr.xkzrt.cn
http://DVc2ZDtA.xkzrt.cn
http://YCxG8mYf.xkzrt.cn
http://NdpAqPYb.xkzrt.cn
http://8qXuvEyb.xkzrt.cn
http://3cZtURhI.xkzrt.cn
http://us37ut2I.xkzrt.cn
http://n2QiQvuq.xkzrt.cn
http://cYZh8ZNJ.xkzrt.cn
http://www.dtcms.com/a/369817.html

相关文章:

  • 【Redis】缓存的穿透、击穿和雪崩
  • C++经典的数据结构与算法之经典算法思想:分治法(Divide and Conquer)
  • PDF教程|如何把想要的网页保存下来?
  • DevOps实战(2) - 使用Arbess+GitPuk+Docker实现Java项目自动化部署
  • Git reset 回退版本
  • PostgreSQL与Greenplum数据库的编程语言连接
  • git在Linux中的使用
  • 全面剖析TENGJUN防水TYPE-C板上双排贴(L7.55/舌片外露1.1/双耳带螺孔):认证、防水与结构设计的三重突破
  • fastapi通过sqlmodel连接Mysql实现crud功能
  • 百度竞价推广:搜索竞价信息流推广代运营
  • Go基础(④指针)
  • 【开题答辩全过程】以 基于JSP的高校健康体育活动管理系统的设计与实现为例,包含答辩的问题和答案
  • 贪心算法应用:基因编辑靶点选择问题详解
  • webrtc弱网-LossBasedBandwidthEstimation类源码分析与算法原理
  • 01-线上问题处理-树形结构拼接
  • uniapp | 解决组件样式不生效问题
  • 尚硅谷宋红康JVM全套教程(详解java虚拟机)
  • uniapp基础组件概述
  • C++和OpenGL实现3D游戏编程【连载30】——文字的多行显示
  • 使用UniApp实现下拉框和表格组件页面
  • 人工智能学习:基于seq2seq模型架构实现翻译
  • Day12--HOT100--23. 合并 K 个升序链表,146. LRU 缓存,94. 二叉树的中序遍历
  • Hive on Tez/Spark 执行引擎对比与优化
  • 03.缓存池
  • 突破反爬限制:动态IP轮换策略与实现
  • stunnel实现TCP双向认证加密
  • C#实现导入CSV数据到List<T>的完整教程
  • 安卓学习 之 按钮点击事件
  • Nmap网络扫描工具详细使用教程
  • 持续集成和持续交付 (CI/CD) 工具——Jenkins