当前位置:网站首页>Rough analysis of map file
Rough analysis of map file
2022-07-06 12:01:00 【csdndulala】
https://blog.csdn.net/weixin_30632899/article/details/94867874
Map The document is MCU programmatic Map( Map ).
The code we wrote , After compiling and linking a series of actions , Will generate a elf File format , From this elf The file can generate a hex perhaps bin file , For burning MCU Inside to run , meanwhile ( Configurable ) Generate a program called Map The file of .
This elf The file actually contains all kinds of information about the program , Include function name 、 Variable name , Address 、 Size and other very rich information . And this map The file is from elf Propose to get , Very intuitively ( In text form ) Show which function variables are contained in each file in the program , And in which segments are these function variables allocated , What's the address , And the size of the space it occupies .
map The file contains the following :
- Archive member included to satisfy reference by file (symbol)
Library function information called : From which .a Which of them? .o - Allocating common symbols
Uninitialized global variables : size Source of variable - Discarded input sections
No function is called 、 Variable - Memory Configuration
according to .ld In file MEMORY To divide the memory area : name 、 Initial address 、 length - Linker script and memory map
What is needed for the link .o .a
according to .ld In file SECTION To divide the area :
.txt Code segment
.rodata Strings and local variables
.srodata Used in the library rodata
.rela.dyn
.rela.text. Function information to be relocated
.data Data segment ( Big )
.sdata Data segment ( Small )
.bss Initialize to 0 The variable of ( Big )
.sbss Initialize to 0 The variable of ( Small )
COMMON Uninitialized variables
.attributes
.debug_info
.debug_abbrev
.debug_loc
.debug_aranges
.debug_line
.debug_str
.debug_frame
边栏推荐
猜你喜欢
I2C bus timing explanation
几个关于指针的声明【C语言】
5G工作原理详解(解释&图解)
AMBA、AHB、APB、AXI的理解
Variable star user module
arduino UNO R3的寄存器写法(1)-----引脚电平状态变化
Comparison of solutions of Qualcomm & MTK & Kirin mobile platform USB3.0
Feature of sklearn_ extraction. text. CountVectorizer / TfidVectorizer
Vert. x: A simple TCP client and server demo
电商数据分析--薪资预测(线性回归)
随机推荐
Word排版(小計)
[CDH] cdh5.16 configuring the setting of yarn task centralized allocation does not take effect
[mrctf2020] dolls
几个关于指针的声明【C语言】
The first simple case of GNN: Cora classification
MySQL主从复制的原理以及实现
MongoDB
高通&MTK&麒麟 手机平台USB3.0方案对比
Dead loop in FreeRTOS task function
Linux Yum install MySQL
高通&MTK&麒麟 手機平臺USB3.0方案對比
Basic knowledge of lithium battery
vim命令行笔记
Encodermappreduce notes
FTP文件上传文件实现,定时扫描文件夹上传指定格式文件文件到服务器,C语言实现FTP文件上传详解及代码案例实现
Togglebutton realizes the effect of switching lights
JS object and event learning notes
Pytoch temperature prediction
荣耀Magic 3Pro 充电架构分析
Apprentissage automatique - - régression linéaire (sklearn)