相同的demo。Ubuntu下运行没问题,在海思开发板运行一直有问题。
期间检查了无数遍参数与mmap的实现代码,完全没问题。后来发现原来是文件系统的问题导致。
mmap的文件存放在SD卡中成功,放在在内置Flash ext目录下出现mmap: Invalid argument
ext目录下文件系统为jffs2 SD卡为vfat
jffs2会对文件进行压缩,不知道是否是这个因素导致的。
本文探讨了在Ubuntu环境下正常运行的mmap函数,在海思开发板上因文件系统差异导致的问题。具体表现为mmap在jffs2文件系统下返回Invalid argument错误,而在vfat文件系统的SD卡中则能正常工作。文章深入分析了jffs2的压缩特性可能带来的影响。
相同的demo。Ubuntu下运行没问题,在海思开发板运行一直有问题。
期间检查了无数遍参数与mmap的实现代码,完全没问题。后来发现原来是文件系统的问题导致。
mmap的文件存放在SD卡中成功,放在在内置Flash ext目录下出现mmap: Invalid argument
ext目录下文件系统为jffs2 SD卡为vfat
jffs2会对文件进行压缩,不知道是否是这个因素导致的。
5814

被折叠的 条评论
为什么被折叠?