text段为代码段,用于保存可执行指令。
data段为数据段,用于保存有非0初始值的全局变量和静态变量。
bss段为数据段,用于保存没有初始值或初始值为0的全局变量和静态变量。
堆:用于动态分配内存。
栈:用于实现函数调用、存储局部变量。
被调用函数在执行前,它会将一些寄存器的值保存在栈中, 其中包括返回地址寄存器lr,如果知道了所保存的lr寄存器的值,那么就可以知道它的调用者是谁。在栈信息中,一个函数一个函数的往上找出所有保存的lr值,就可以知道各个调用函数,这就是栈回溯的原理。
text段为代码段,用于保存可执行指令。
data段为数据段,用于保存有非0初始值的全局变量和静态变量。
bss段为数据段,用于保存没有初始值或初始值为0的全局变量和静态变量。
堆:用于动态分配内存。
栈:用于实现函数调用、存储局部变量。
被调用函数在执行前,它会将一些寄存器的值保存在栈中, 其中包括返回地址寄存器lr,如果知道了所保存的lr寄存器的值,那么就可以知道它的调用者是谁。在栈信息中,一个函数一个函数的往上找出所有保存的lr值,就可以知道各个调用函数,这就是栈回溯的原理。