小弟使用的TORNADO2.2 (VXOWRKS5.5) FOR POWERPC 。
问题1:在程序中分配了一个2M的内存,对其访问,程序立即就挂了。将分配的内存减小,就风平浪静。
问题2:在程序编译过程中,TORNADO编译器提示我,代码总量在3M左右,但是生成的VXWORKS 文件竟然有25M.
其中,partialImage.o大小为27M左右。(程序中使用了C和C++)。
请大侠指点迷津,谢谢!!
描述得详细一点,否则别人无法回答的。
比如本身系统内存是多大的,你的访问代码是如何的
问题1已经解决,是因为我的内存有一部分重叠了,修改内存,导致程序走飞。
问题2,在编译器中去掉调试选项就可以了,但是,编译出来的VXWORKS和编译器报的大小还是相差1、2M左右。
这种现象是否正常?
tornado生成的vxworks映像,在windows上显示的大小,和其实际下到目标机上的大小是会不一样的了。
真正的代码部分,要看属性里的大小,看其TEXT,DATA和BSS段各为多少,加起来的才是最后到目标机上的大小。windows上显示的大小不算数的了,没有关系的,有偏差很正常的了。