nik*_*nik 7

堆栈主要在函数调用期间使用,但根据编程的语言和级别,它可用于临时存储处理器寄存器数据或其他变量.

此外,当使用将部分数据存储在堆栈中并再次调用自身的递归函数时,堆栈还可以用于数据的短期大规模存储.

堆栈一般用途是,

  1. 退货地址
    • 回报价值
    • 被调用函数的参数
    • 被调用函数中的局部变量
    • 将在被调用函数中重用的处理器寄存器

而且,是的,堆栈也用于漏洞利用.
其携带的返回地址到一个调用的函数返回,加上在阵列边界检查的弱点的性质C语言,给出了一个非常好的方式以引起缓冲区溢出处于弱势(不安全写的)程序的堆栈.


Fed*_*oca 1

这取决于微处理器。一般来说,它的作用是保存局部变量和函数的参数。

实际上它不在微处理器中,而是在中央存储器中。