程序飞掉了

2019-08-03 16:37发布

/*allocating buffer and assigning it to FVID_Frame structure*/

static Int _allocAssignBuffer(_VPORT_ChanObj *chan, FVID_Frame *newFrame)
{
    /* allocate frame buffer */
    if (PAL_SOK == PAL_osMemAlloc(chan->segId,
                                  chan->bufSz,
                                  chan->alignment,
                                  (Ptr *)&curAddr))
    {
        /* field 1 */
        newFrame->frame.iFrm.y1 = curAddr;           

        PAL_osCacheFlushAndInvalidate(PAL_osCache_NOT_DEFINED,
                                      (Uint32)newFrame->frame.iFrm.y1,
                                      chan->bufSz);

       ..........
} 红蓝处均打断点, 断点断在红 {MOD}处后,继续往下走,蓝 {MOD}断不住,程序飞掉,无解,求解~~~~~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
pujun2001
1楼-- · 2019-08-03 20:53
发现newFrame->frame.iFrm.y1处于0地址
vivilzb1985
2楼-- · 2019-08-03 23:22
这个就好好的检查下看程序中有啥死循环啥的没把
pujun2001
3楼-- · 2019-08-04 02:47
已经解决。堆栈溢出。chan->bufSz大小为0xCA800,而BIOS文件中Stack Size (MAUs)设定的是0x12000。
angerbird
4楼-- · 2019-08-04 03:42
 精彩回答 2  元偷偷看……
tianli1980
5楼-- · 2019-08-04 09:07
恩恩,这个作为全局变量 ,还改了堆栈,应该就 可以了。
jxmzzr
6楼-- · 2019-08-04 11:56
楼主可以修改启动文件,可以自己修改栈大小的。

一周热门 更多>