我的COSMIC-C链接器为我的STM8S微控制器项目生成了一个映射文件,尽管有一些熟悉的部分,但它还是有点没用。
这是地图文件的输出和一些模块:
--------
Segments
--------
start 00008080 end 00008084 length 4 segment .const
start 00008087 end 00008298 length 529 segment .text
start 00004000 end 00004000 length 0 segment .eeprom
start 00000000 end 00000000 length 0 segment .bsct
start 00000000 end 0000000a length 10 segment .ubsct
start 0000000a end 0000000a length 0 segment .bit
start 0000000a end 0000000a length 0 segment .share
start 00000100 end 00000100 length 0 segment .data
start 00000100 end 00000100 length 0 segment .bss
start 00000000 end 000003be length 958 segment .info.
start 00008000 end 00008080 length 128 segment .const
start 00008084 end 00008087 length 3 segment .init
-------
Modules
-------
D:\Program Files (x86)\COSMIC\FSE_Compilers\CXSTM8\lib\crtsi0.sm8:
start 00008087 end 000080d7 length 80 section .text
start 00000100 end 00000100 length 0 section .bss
start 00000000 end 00000000 length 0 section .ubsct
start 00000000 end 00000034 length 52 section .info.
Release\clockcontrol.o:
start 000080d7 end 000080f7 length 32 section .text
start 00000034 end 000000c1 length 141 section .info.
Release\main.o:
start 000080f7 end 00008145 length 78 section .text
start 000000c1 end 00000146 length 133 section .info.
start 00008080 end 00008084 length 4 section .const
我了解 .text 和 .data 。并且我可以假设 bsct 和 ubsct 是 data 和 bss (尽管已经具有.data和.bss );还有关于 .eeprom 和 .const 的信息,它们可能代表了它们明显的内存部分。但是:
有多个thanx。
更新:
COSMIC链接器文档中有许多有关如何制作链接器脚本的描述,但没有预定义的表。似乎脚本是由STVD(IDE)编辑的。尽管如此,还是有一个例子(与我的问题不太相关)可能会有所帮助: