首页 > 解决方案 > 为什么通过int 0x80调用exit后程序继续运行?

问题描述

我尝试在以下汇编程序中通过 int 0x80 调用 exit():

 .section .text
 .globl _start
_start:
 xorq %rdi, %rdi
 xorq %rax, %rax
 movb $0x3c, %al
 int $0x80

但发生分段错误(核心转储)。然后我通过 gdb 调试它并得到程序在调用 exit() 并执行下一条指令(即 00000000)后并没有停止。我想知道如何处理它。

标签: debuggingassemblysegmentation-faultdisassemblycoredump

解决方案


推荐阅读