最近在做嵌入式/arm方面的开发工作,要完成的就是在uclinux底下编写一个小程序,用来从usb摄像头下读取数据,做基本的色块检验。但是,在经过移植uclinux之后,开发板上能顺利运行uclinux,但是将编写的程序通过网口和FTP下载到uclinux的var目录下,只能下载到该目录下。
然后运行程序,总是报内存不足的错误。通过阅读源码和分析,我猜想主要有两个方面可能导致这个问题:
1 优龙公司移植的uclinux源代码有问题。因为我刚开始编译uclinux的时候,其源代码的根文件不能用,只能到优龙的论坛上下载一个已经编译好的根文件系统。
2 打开摄像头的open函数,在驱动程序中的实现函数中,用到了vmalloc等创建内存的函数,但是arm7是否支持动态的创建堆和栈,还有待进一步的学习。