gpt4 book ai didi

memory - 堆栈帧是如何以及何时构建的?

转载 作者:行者123 更新时间:2023-12-01 00:57:26 25 4
gpt4 key购买 nike

我目前正在阅读有关在 Linux 下利用内存漏洞的信息,我发现很难找到有关何时决定堆栈帧布局的任何信息。换句话说,它是在编译时、程序执行之前确定的,还是在调用函数时构建的?操作系统之间的布局是否不同?

最佳答案

有几个因素。在 x86 上,有一个 calling convention它定义了如何调用函数。我假设其他架构也有类似的东西。系统库(例如 glibc)可以定义额外的约定。但最终编译器决定了它如何使用堆栈——至少当它不需要连接外部库并且需要遵循它们的堆栈布局时。

关于memory - 堆栈帧是如何以及何时构建的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26451396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com