实战总结|抽丝剥茧,记一次神奇的崩溃
2023年3月17日 - 腾讯新闻
2.1用汇编“放大”源码一行C++代码可以转换成多条汇编指令,汇编码就是高级语言源码的放大版。那么我们就来看看崩溃时的汇编吧。使用gdb的disas指令查看当前栈顶函数的反汇编,确实将notifyIdle的7行C++代码变成了27行汇编指令,让我们得以看到更多细节。2.2发现直接原因注意上图中箭头所示指令,即:这个0x00000000...
详情
2.1用汇编“放大”源码一行C++代码可以转换成多条汇编指令,汇编码就是高级语言源码的放大版。那么我们就来看看崩溃时的汇编吧。使用gdb的disas指令查看当前栈顶函数的反汇编,确实将notifyIdle的7行C++代码变成了27行汇编指令,让我们得以看到更多细节。2.2发现直接原因注意上图中箭头所示指令,即:这个0x00000000...