linux – 是负责设置堆栈的程序还是操作系统
发布时间:2020-09-25 15:43:08 所属栏目:Linux 来源:互联网
导读:提出这个问题是因为作者正在构建一个编译器(src - asm),并且正在编写用于生成汇编代码的代码.程序在基于Linux(任何操作系统)的操作系统上执行时,首先发生的事情之一就是堆栈设置完毕,SP寄存器被分配堆栈开头的内存地址.我很好奇上面做这件事的责任在于程序还
提出这个问题是因为作者正在构建一个编译器(src – > asm),并且正在编写用于生成汇编代码的代码. 程序在基于Linux(任何操作系统)的操作系统上执行时,首先发生的事情之一就是堆栈设置完毕,SP寄存器被分配堆栈开头的内存地址. 我很好奇上面做这件事的责任在于程序还是操作系统本身.如果责任在于程序,那么程序如何实现(特别是在Linux基础环境中)? 在个别程序开始执行其主要功能之前,必须执行哪些其他操作? 评论i386 NASM汇编代码的示例表示赞赏.此外,任何可以帮助作者实现其目标的网络资源也将非常受欢迎. 最佳答案 操作系统将为您设置SP并将程序参数放在堆栈上.您的程序没有什么特别需要设置才能运行.至于程序启动时Linux上的实际堆栈布局,可以查看this document以获取详细信息. (编辑:阜阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- centos7.3 yum 安装php7.1
- LINUX教程:CentOS 7虚拟机网卡启动不了解决办法
- linux – 如何在所有文件和所有目录中递归地找到
- linux – 我的shell脚本在exec之后停止
- linux-kernel – IO-APIC级别与PCI-MSI-X之间的差
- linux – 重新排序ELF文件部分的简单方法
- Fast portable non-blocking network programmin
- 使用JeMalloc在Java应用程序中查找本机内存泄漏
- linux – 在ADA中打开文件的分段错误
- linux-kernel – 如何设置intel_idle.max_cstate
热点阅读