【发布时间】:2012-05-22 15:30:16
【问题描述】:
可能重复:
What is default register state when program launches (asm, linux)?
我知道 %esp 和 %eip 应该由操作系统内核设置为适当的值,以便程序可以运行,但其他寄存器包括 %ebp,%eax,%ebx,%ecx,%edx,%esi, %edi。操作系统内核会在程序运行之前初始化它们吗?他们应该有什么价值观?
程序开始运行时 %esp 的值应该是多少?
【问题讨论】:
-
内核将如何初始化它们,为什么?根据您的源代码,我猜它们在使用时已被初始化。
标签: c assembly operating-system linux-kernel x86