WINCE6.0 如果NK太大会出现会出现什么问题?

tencom   2010-1-19 12:46 楼主
上周升级了R3,编译出来的NK有44MB,然后我下进去,系统起来了。
结果出现了2个问题;
1, 在EBOOT起来的时候,进度条溢出(正常应该在我设定的矩形框长度内,NK在40M一下都没问题,我的算法应该没问题);
2,在进入桌面之前,系统会短暂花屏现象;
3,我再播放视频的时候,播放不了,然后死机;串口纤细如下:
Exception 'Data Abort'(4) Thread-Id=00570002(pth=87fb5978) PC=80117824 BVA=00000003, dwInfo = 00000801

R0=870d9ac0  R1=00000000  R2=00000000  R3=00000000

R4=82d1b454  R5=870d9000  R6=82d1b624  R7=00000000

R8=00000000  R9=00000000 R10=00000000 R11=00000000

R12=00000000  SP=d00afe60  Lr=8012cc80 Psr=0000001f


以上3个问题,我在以前的有个帖子里提到过,但是我现在还是很迷茫;

我的硬件平台三星6410  128内存和128的闪存;


我为NKLEN预留的空间是50M~
大侠们,一起讨论下~~~NK大了对系统运行有影响?

回复评论 (10)

ricky_hu 前辈关于第2个问题说给的意见是:建议我给显存分配固定的内存,让系统自动加载。

这个我不是很理解。。
我在config.bib中已经设置了
ENDIF

; Common RAM areas

    AUD_DMA     80002000    00002000        RESERVED
    TEMPS       80010000    00010000        RESERVED
    DBGSER_DMA  80022000    00002000        RESERVED
    ARGS        80020800    00000800        RESERVED
    SER_DMA     80024000    00002000        RESERVED
    IR_DMA      80026000    00002000        RESERVED
    SLEEP       80028000    00002000        RESERVED
    EDBG        80030000    00020000        RESERVED
    CMM         85D00000    00300000        RESERVED
    FIMG_BUF    86000000    00800000        RESERVED
    JPEG        86800000    00800000        RESERVED  
    DISPLAY     87000000    00800000        RESERVED
    MFC         87800000    00800000        RESERVED  
;    DISPLAY     86800000    00C00000        RESERVED
;    MFC_JPEG    87400000    00C00000        RESERVED

    ETHNET      94000000    00100000        RESERVED
CONFIG
点赞  2010-1-19 12:49
帮顶
点赞  2010-1-19 13:32

4楼 ele 

1, 在EBOOT起来的时候,进度条溢出(正常应该在我设定的矩形框长度内,NK在40M一下都没问题,我的算法应该没问题);

算百分比的时候是按照BIN文件的大小算的还是解压后的文件大小?存储在NAND后是解压后的文件大小

点赞  2010-1-19 13:36
问题一,应该属于计算方面的因素造成的,以前我做的进度条也溢出过…
点赞  2010-1-19 15:03
引用: 引用 3 楼 veabol 的回复:
1, 在EBOOT起来的时候,进度条溢出(正常应该在我设定的矩形框长度内,NK在40M一下都没问题,我的算法应该没问题);

算百分比的时候是按照BIN文件的大小算的还是解压后的文件大小?存储在NAND后是解压后的文件大小

我是在从NAND拷贝内核到内存的时候加入进度条的,应该是解压后的文件大小;
呵呵~这个我可以再仔细查查~


那其他问题呢?大虾门~~~~顶起来
点赞  2010-1-19 20:55
Data Abort的问题比较麻烦,,,

LZ的NK是44M,LZ所说的是bin,还是nb0呢?你下的是bin,但是在内存中运行时,会先解压成nb0,才能运行的,,,如是是bin为44M的话,nb0远不止是那个大小的。。。
点赞  2010-1-20 08:47
第二个问题确实应该分配一部分空间,如果开机图片等比较大的话
点赞  2010-1-20 08:48
引用: 引用 6 楼 liuysheng 的回复:
Data Abort的问题比较麻烦,,,

LZ的NK是44M,LZ所说的是bin,还是nb0呢?你下的是bin,但是在内存中运行时,会先解压成nb0,才能运行的,,,如是是bin为44M的话,nb0远不止是那个大小的。。。


我说的NK是BIN44M~~给NK.NBO分配的空间NKLEN是50M,是不是解压后,NK.NBO大于50M是不是就运行不起来了?

点赞  2010-1-20 12:52
引用: 引用 7 楼 liuysheng 的回复:
第二个问题确实应该分配一部分空间,如果开机图片等比较大的话


我的EBOOT启动的LOG分配内存大小为1MB,图片为0.8M左右。
#define EBOOT_FRAMEBUFFER_SIZE          (0x00100000)
前辈指的是我应该分配更大的空间?


点赞  2010-1-20 12:58
EBOOT 的溢出与NK是无关的
点赞  2010-1-20 13:00
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复