VxWorks上FAT32学习分析

VxWorks上FAT32实现代码在fs\dosfs目录
1, 准备520字节0x55的buffer,用于写入文件
ppp=malloc(520)
memset(ppp,0x55,520)
write(testFdX,ppp,520)
2, 在根目录下创建文件cba.d,保留FILE_DESC供分析
testFdX=open(“/sd0:1/cba.d”,0x202,0)
这里写图片描述
这里得到的pFileDesc=0x15fe3a0显示pFileDesc可以看到pVol=0x15f9a88,pFileHdl=0x1600010

3, 用volshow显示根目录的内容得到pDirDesc
volshow 0x015f9a88,0x8000 //读sec=0x8000到0x448970
这里写图片描述
可以看到0x4489B0开始,对应的是cba.d的DIR_DESC,
DIR_FstClusLO=DIR_DESC[26..27]=0x0006
DIR_FstClusHI= DIR_DESC[20..21]=0x0000

得到存放cba.d的第一个cluster=6,计算sector=(6-2)*32=0x80
4, 显示0x80扇区的内容
这里写图片描述
可以看到我们刚刚写入的0x55!!!

从FILE_DESC同样可以观察到fileSize=0x208,startClust=6

这里写图片描述

猜你喜欢

转载自blog.csdn.net/ambercctv/article/details/80536821