gpt4 book ai didi

c++ - 捕获无效的操作码 rip rsp

转载 作者:行者123 更新时间:2023-12-01 13:04:59 25 4
gpt4 key购买 nike

对于我们的一个应用程序,我们在/var/log/messages 中看到了以下提到的几条消息:

Sep 18 03:24:23 <machine_name> kernel: application_name[14682] trap invalid opcode rip:f6c6e3ce rsp:ffc366bc error:0
...
Sep 18 03:19:35 <machine_name> kernel: application_name[4434] general protection rip:f6cd43a2 rsp:ffdfab0c error:7b2

我无法确定这些输出的含义以及我们如何跟踪导致问题的函数/代码。此外,“陷阱无效操作码”和“一般保护”是什么意思?

最佳答案

通常这意味着您的程序的指令指针指向数据或垃圾。这通常是由写入杂散指针等引起的。

一种情况是您的代码(通过杂散指针)写入某个类的虚拟表,用废话替换成员函数地址。下次您调用类的虚函数之一时,您的程序会将垃圾解释为地址并跳转到该地址。如果位于该地址的任何数据碰巧不是处理器的有效机器代码指令,您将看到此错误。

关于c++ - 捕获无效的操作码 rip rsp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3758301/

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