内存管理

89 阅读1分钟

入栈顺序、参数是怎么入栈的?结构体是怎么入栈的

栈区:存放 局部变量、方法、参数、函数方法、指针 堆区:存储对象或者需要开辟内存的东西;通过new alloc 创建出来的对象。通过copy malloc 的对象。 BSS段:未初始化的全局变量,静态变量 数据段:初始化的全局变量,静态变量 text: 程序代码,加载到内存中

栈区内存大小比较小,比较宝贵。 堆区内存空间比较大

static 修饰的变量或结构体,在全局区;也占有内存空间,不占结构体

内存布局: 栈区内存地址: 一般为:0x7开头。

堆区内存地址: 一般为:0x6开头。

数据段:,BSS内存地址:一般为:0x1开头。

CPU为M1、M2的电脑会有所不同;

问题1: OS是如何识别栈区的? SP寄存器; 堆区是如何获取的?