M3的核,无操作系统,gcc编译器,eclipse开发环境
编译出来的变量占据.data段和.bss段,其中在.bss段中,全局变量看map文件都有绝对地址的分配空间,static声明的变量在.bss中只是显示出变量占据的空间大小,感觉其实是没有分配空间的,这个在裸机的情况下是怎么个处理方式,有大神了解吗,我有的时候声明static和不声明,运行效果变了,根本不是我想要的那种情况,这些有什么要注意的吗?
不吝赐教!!
比如:
.bss 0x20000150 0xcc ./LWIPInclude_DL/lib/etharp.o
.bss 0x2000021c 0x4 ./LWIPInclude_DL/lib/icmp.o
.bss 0x20000220 0x10 ./LWIPInclude_DL/lib/inet.o
.bss 0x20000230 0x0 ./LWIPInclude_DL/lib/inet_chksum.o
表明了有变量占用的空间,但是这个空间怎么分配的?
再像:
.bss 0x200078f8 0x28 ./main.o
0x200078f8 clientCon标志寄存器2
0x200078f9 serverCon标志寄存器2
0x200078fa clientCon标志寄存器1
0x200078fb serverCon标志寄存器1
这些就把空间给分配好了,不是很明了啊
|