反汇编异常定位
2016-02-17 11:49
295 查看
反汇编异常定位:
...
task: c2d273e0 ti: c1244000 task.ti: c1244000
PC is at 0xb6ed6e78
LR is at 0x1518a8
pc : [<b6ed6e78>] lr : [<001519f4>] psr: a0000010
sp : b5950e78 ip : 0031b4bc fp : b59510e4
...
出错信息中一般会标记处pc和lr寄存器,pc指向下一条要执行的命令地址,lr保存返回地址
反汇编:arm-linux-objdump -D sctrl > 1.txt
...
001519e8 <thread_destory>:
1519e8: e92d4010
push {r4, lr}
1519ec: e1a04000
mov r4, r0
1519f0: ebfc80b8
bl 71cd8 <_init+0x13ec>
1519f4: e1a00004
mov r0, r4//->lr的位置
1519f8: e3a01000
mov r1, #0
1519fc: e8bd4010
pop {r4, lr}
151a00: eafc808d
b 71c3c <_init+0x1350>
...
从中查找pc和lr的地址,可以找到相关的汇编指令,如果程序带着-g的话还可以带着相关函数名称,据此可以分析产生异常的程序位置
...
task: c2d273e0 ti: c1244000 task.ti: c1244000
PC is at 0xb6ed6e78
LR is at 0x1518a8
pc : [<b6ed6e78>] lr : [<001519f4>] psr: a0000010
sp : b5950e78 ip : 0031b4bc fp : b59510e4
...
出错信息中一般会标记处pc和lr寄存器,pc指向下一条要执行的命令地址,lr保存返回地址
反汇编:arm-linux-objdump -D sctrl > 1.txt
...
001519e8 <thread_destory>:
1519e8: e92d4010
push {r4, lr}
1519ec: e1a04000
mov r4, r0
1519f0: ebfc80b8
bl 71cd8 <_init+0x13ec>
1519f4: e1a00004
mov r0, r4//->lr的位置
1519f8: e3a01000
mov r1, #0
1519fc: e8bd4010
pop {r4, lr}
151a00: eafc808d
b 71c3c <_init+0x1350>
...
从中查找pc和lr的地址,可以找到相关的汇编指令,如果程序带着-g的话还可以带着相关函数名称,据此可以分析产生异常的程序位置
相关文章推荐
- 借助共享缓存redis实现分布式锁
- libevent的使用(socket)
- jfinal_BLOG v1.0
- 秒杀DX12!Vulkan 1.0规范正式发布
- 多核CPU的春天:Vulkan实测 完爆OpenGL
- Thrift入门及Java实例演示
- java 单例模式(Singleton)
- phpredisAdmin
- Android studio 自定义注释模板
- Ubuntu14.04安装tomcat7.0和jdk1.7
- Mysql常用命令详解
- Python 17.1 HTTP协议简介
- Tomcat学习—Tomcat的server.xml配置文件
- hdu4035 概率DP求期望
- Android出现“Read-only file system”解决办法
- js中的面向对象
- Css中overflow属性的认识
- Android Studio集成百度云推送
- Java CookBook--Using a Buffer--by Tim O'Brien 整理by博主
- java特种兵读书笔记(5-5)——并发之常见并发编程工具