wenyu520 发表于 2011-1-11 17:32:29

文件系统elm的stat函数死机

如下:
            write(fd,w_buff,size);
            stat("/dayData.txt",stat_spi0);            
            close(fd);
调用stat函数程序就进入硬件错误异常,屏蔽这个函数就OK,jlink调试发现,在 dfs_elm_stat 函数的这个地方
st->st_mode = DFS_S_IFREG | DFS_S_IRUSR | DFS_S_IRGRP | DFS_S_IROTH |
                DFS_S_IWUSR | DFS_S_IWGRP | DFS_S_IWOTH;进入异常中断的,请问会是什么原因?

ffxz 发表于 2011-1-11 18:17:08

stat_spi0是什么变量?

wenyu520 发表于 2011-1-11 21:10:58

回复【1楼】ffxz
-----------------------------------------------------------------------

stat_spi0定义如下:struct dfs_stat *stat_spi0;

aozima 发表于 2011-1-11 21:31:55

回复【2楼】wenyu520
回复【1楼】ffxz
-----------------------------------------------------------------------
stat_spi0定义如下:struct dfs_stat *stat_spi0;
-----------------------------------------------------------------------
然后就没有然后了是吧? 不死才不正常.

傻孩子的书里面貌似叫 "野指针"

cat_li 发表于 2011-1-11 21:35:01

何为野指针

wenyu520 发表于 2011-1-11 21:44:11

回复【3楼】aozima
-----------------------------------------------------------------------

明白了,确实是'野指针',野指针指的是指针在定义之后没有指向具体的地址就开始使用,以上是我自己的理解,呵呵

ffxz 发表于 2011-1-11 21:54:25

struct dfs_stat stat_spi0;
...
stat("/dayData.txt", &stat_spi0);

这样就不野了。

wenyu520 发表于 2011-1-11 22:02:12

回复【6楼】ffxz
-----------------------------------------------------------------------

yes
页: [1]
查看完整版本: 文件系统elm的stat函数死机