当前位置:网站首页>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
边栏推荐
- 电商数据分析--用户行为分析
- 嵌入式启动流程
- Some concepts often asked in database interview
- [CDH] modify the default port 7180 of cloudera manager in cdh/cdp environment
- arduino获取随机数
- Comparison of solutions of Qualcomm & MTK & Kirin mobile platform USB3.0
- arduino获取数组的长度
- Those commonly used tool classes and methods in hutool
- arduino UNO R3的寄存器写法(1)-----引脚电平状态变化
- RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED
猜你喜欢

I2C bus timing explanation

Basic knowledge of lithium battery

Oppo vooc fast charging circuit and protocol

Comparaison des solutions pour la plate - forme mobile Qualcomm & MTK & Kirin USB 3.0

arduino UNO R3的寄存器写法(1)-----引脚电平状态变化

PyTorch四种常用优化器测试

Gallery's image browsing and component learning

小天才电话手表 Z3工作原理

Reno7 60W super flash charging architecture

Stage 4 MySQL database
随机推荐
Reading notes of difficult career creation
arduino获取数组的长度
互聯網協議詳解
Matlab learning and actual combat notes
Detailed explanation of express framework
Fashion-Gen: The Generative Fashion Dataset and Challenge 论文解读&数据集介绍
优先级反转与死锁
E-commerce data analysis -- salary prediction (linear regression)
Basic knowledge of lithium battery
[CDH] modify the default port 7180 of cloudera manager in cdh/cdp environment
2019 Tencent summer intern formal written examination
Basic use of pytest
Kaggle competition two Sigma connect: rental listing inquiries
Mall project -- day09 -- order module
Raspberry pie tap switch button to use
2020 WANGDING cup_ Rosefinch formation_ Web_ nmap
Distribute wxWidgets application
Apprentissage automatique - - régression linéaire (sklearn)
Common regular expression collation
列表的使用