二,操作系统是如何工作的
1、函数调用堆栈
三大法宝:存储程序计算机 函数调用堆栈 中断机制
堆栈:是C语言程序运行时必须的一个记录调用路径和参数的空间。是计算机内部现成的东西,我们直接使用。
包括函数调用框架、传递参数、保存返回地址、提供局部变量的空间等等。
堆栈相关寄存器:esp堆栈指针(栈顶)、ebp基址指针(栈底) * ebp在C语言中用作记录当前函数调用基址。
堆栈操作:push(栈顶地址减少四个字节)、pop(栈顶地址增加四个字节)(32位)
其他关键寄存器:cs:eip,总是指向下一条指令的地址。(call、ret)
//建立被调用函数的堆栈框架
pushl