还是FAT文件系统加载问题!
大家好!
这里再次向大家请教一下FAT文件系统的加载问题!
最近我把FLASH中作了这样的分区,开头的是NK,紧接NK的block放的是MBR,然后空了一个block,再接着的8个block(1M)分区为FAT32,再后面的部分我就没有分区了.我的MBR在sboot里给写在了第41个block(前面40个block用做存放NK.NB0--5M字节),1个block有256个sector,1个sector有512字节,总共有512个block,共64M字节,现在当我加载的时候出现了下面的现象:关键是最后出现了一个DEBUGCHK failed
>>> Loading module mspart.dll at address 0x03E30000-0x03E3E000 (RW data at 0x01FE6000-0x01FE64AC)
Loaded symbols for 'D:\WINCE500\PBWORKSPACES\MYDESIGN2\RELDIR\MY9261_ARMV4I_DEBUG\MSPART.DLL'
154255 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: Loading partition driver mspart.dll hModule=83A4D15C
154275 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: Driver mspart.dll loaded
154305 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: nSectorAddr 0x00002800
154330 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: nSectorAddr 0x00005200
154360 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: Opened the store hStore=000908E0
154385 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: nSectorAddr 0x00002800
154410 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: NumSec=120320 BytesPerSec=512 FreeSec=107520 BiggestCreatable=107520
154435 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: Partition Part00 NumSectors=2048
154460 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: MSPART!PD_OpenPartition: dwStoreId=000908E0, PartName=Part00
154505 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: >>> Loading module fatfsd.dll at address 0x03ED0000-0x03EFA000 (RW data at 0x01FF4000-0x01FF463C)
Loaded symbols for 'D:\WINCE500\PBWORKSPACES\MYDESIGN2\RELDIR\MY9261_ARMV4I_DEBUG\FATFSD.DLL'
156300 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FSD_MountDisk: mounting volumes for hDsk=0010EA70
156325 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: nSectorAddr 0x00005200
156355 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!MountDisk: BPB_HiddenSectors(-1) != 0
156380 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: access time updates disabled
156410 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: event logging enabled
156435 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: automatic scanning disabled
156460 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: write verify disabled
156485 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: extra FAT on format disabled
156510 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: force write through enabled
156540 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: Codepage = 1
156565 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!OpenVolume: Number of path cache entries = 50
156595 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!InitVolume: sector 0 byte 0 suspicious (0xf2)
156635 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!InitVolume: invalid BPB, volume deemed invalid
156660 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!InitVolume: FAT version: 12
156685 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FATFS!InitVolume: Cluster Size (Sectors): 255
156720 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: >>> Loading module fatutil.dll at address 0x03EA0000-0x03EB3000 (RW data at 0x01FF0000-0x01FF09BC)
Loaded symbols for 'D:\WINCE500\PBWORKSPACES\MYDESIGN2\RELDIR\MY9261_ARMV4I_DEBUG\FATUTIL.DLL'
158525 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FLASHDRV.DLL:WriteToMedia() - Trying to write to read-only sectors (0x2a00, 0x1)!
158555 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: FLASHDRV.DLL:WriteToMedia() failed.
158580 PID:63ae7b52 TID:63ae7b2e 0x83ae78ec: Unknown: DEBUGCHK failed in file c:\macallan\public\common\oak\drivers\fsd\fatutil\main\diskinterface.cpp at line 44
The Kernel Debugger has been disconnected successfully.
我的分区如下:
hPart = BP_OpenPartition( 10752,
2048,
PART_DOS32,
TRUE,
PART_OPEN_ALWAYS);
这里的10752=40*256+256(MBR)+256(空出的block)
请大家赐教啊!!!
[解决办法]
帮顶……
[解决办法]
DEBUGCHK failed
那个地方的代码贴出来。