下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PowerPC 下动态链接库机制考虑以下简单的程序:int main() printf("f0 = %dn", 0x0); printf("f0 = %dn", 0x8); return 0;rootcomcat:/root> gdb ./test (gdb) disass mainDump of assembler code for function main:0x
2、1000044c <main+0>: stwu r1,-16(r1)0x10000450 <main+4>: mflr r00x10000454 <main+8>: stw r0,20(r1)0x10000458 <main+12>: stw
3、; r31,12(r1)0x1000045c <main+16>: mr r31,r10x10000460 <main+20>: lis r9,40960x10000464 <main+24>: addi r3,r9,20560x10000468 <main+28>:
4、0; li r4,00x1000046c <main+32>: crclr 4*cr1+eq0x10000470 <main+36>: bl 0x100109c0 <printfplt>0x10000474 <main+40>: lis r9,4096
5、0x10000478 <main+44>: addi r3,r9,20560x1000047c <main+48>: li r4,80x10000480 <main+52>: crclr 4*cr1+eq0x10000484 <main+56>: bl
6、 0x100109c0 <printfplt>0x10000488 <main+60>: li r0,00x1000048c <main+64>: mr r3,r00x10000490 <main+68>: lwz r11,0(r1)0x1000049
7、4 <main+72>: lwz r0,4(r11)0x10000498 <main+76>: mtlr r00x1000049c <main+80>: lwz r31,-4(r11)0x100004a0 <main+84>: mr
8、0; r1,r110x100004a4 <main+88>: blrEnd of assembler dump.(gdb) b *0x10000468Breakpoint 1 at 0x10000468: file enum.c, line 13.(gdb) rStarting program: /root/test Breakpoint 1, 0x10000468 in main () at test.c:1313 test.c: No such file or directory. &
9、#160; in test.c(gdb) x /6i 0x100109c00x100109c0 <printfplt>: li r11,80x100109c4 <printfplt+4>: b 0x10010988 <_GLOBAL_OFFSET_TABLE_+44>0x100109c8 <printfplt+8>:
10、60; .long 0x00x100109cc <printfplt+12>: .long 0x00x100109d0 <printfplt+16>: .long 0x00x100109d4 <completed.6562>: .long 0x0(gdb) x /10i 0x100109880x10010988 <_GLOBAL_OFFSET_TABLE_+44>: rlwinm r12,r1
11、1,1,0,300x1001098c <_GLOBAL_OFFSET_TABLE_+48>: add r11,r12,r110x10010990 <_GLOBAL_OFFSET_TABLE_+52>: li r12,144680x10010994 <_GLOBAL_OFFSET_TABLE_+56>: addis r12,
12、r12,40930x10010998 <_GLOBAL_OFFSET_TABLE_+60>: mtctr r120x1001099c <_GLOBAL_OFFSET_TABLE_+64>: li r12,00x100109a0 <_GLOBAL_OFFSET_TABLE_+68>: addis r12,r12,122880x100109a4 &l
13、t;_GLOBAL_OFFSET_TABLE_+72>: bctr0x100109a8 <_GLOBAL_OFFSET_TABLE_+76>: .long 0x00x100109ac <_GLOBAL_OFFSET_TABLE_+80>: .long 0x0(gdb) si0x1000046c 13 in enum.c(gdb) si0x10000470
14、; 13 in enum.c(gdb) 0x100109c0 in printfplt ()(gdb) 0x100109c4 in printfplt ()(gdb) 0x10010988 in ? ()(gdb) 0x1001098c in ? ()(gdb) 0x10010990 in ? ()(gdb) 0x10010994 in ? ()(gdb) 0x10010998 in ? ()(gdb) 0x1001099c in ? ()(gdb) 0x100109a0 in ? ()(gdb) 0x100109a4 in ? ()(gdb) 0x0ffd
15、3884 in ? () from /lib/ld.so.1 -> 动态链接器解析 printf 符号,获得其函数实体地址,然后重写 0x100109c0 处的指令(gdb) b *0x1000047cBreakpoint 2 at 0x1000047c: file test.c, line 14.(gdb) cContinuing.f0 = 0Breakpoint 2, 0x1000047c in main () at test.c:1414
16、60; in test.c(gdb) x /6i 0x100109c00x100109c0 <printfplt>: b 0xfeba210 <printf> -> 第一次调用 printf 后,此处即被动态链接器 ld.so.1 重填0x100109c4 <printfplt+4>: b 0
17、x10010988 <_GLOBAL_OFFSET_TABLE_+44>0x100109c8 <printfplt+8>: .long 0x00x100109cc <printfplt+12>: .long 0x00x100109d0 <printfplt+16>: .long 0x00x100109d4 <completed.6562>: .long 0x0(gdb) x /10i 0x10
18、0109880x10010988 <_GLOBAL_OFFSET_TABLE_+44>: rlwinm r12,r11,1,0,300x1001098c <_GLOBAL_OFFSET_TABLE_+48>: add r11,r12,r110x10010990 <_GLOBAL_OFFSET_TABLE_+52>: li r12,144680x10010994 <_GLOBAL_OFFSET_TABLE_+56>: addis r12,r12,40930x10010998 <_GLOBAL_O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学《植物科学与技术-植物生物技术实训》考试备考题库及答案解析
- 2025年大学《汉语国际教育-跨文化交际学》考试备考题库及答案解析
- 2025年大学《生物技术-生物化学》考试备考题库及答案解析
- 2025年大学《水质科学与技术-水文学基础》考试备考试题及答案解析
- 2025年大学《会计学-管理会计》考试备考题库及答案解析
- 公路运输管理员运输安全管理培训材料
- 2025年大学《核生化消防-核生化防护装备》考试参考题库及答案解析
- 2025年大学《音乐表演-音乐作品分析》考试备考试题及答案解析
- 公司并购整合工作计划与实施方案
- 2025年大学《材料智能技术-材料性能智能预测》考试参考题库及答案解析
- 毕业设计(论文)-年产100万只铅酸蓄电池车间初步工艺设计
- 2025 团校入团积极分子考试题库【必考】附答案详解
- 水电站毕业设计
- 2025诺贝尔生理学或医学奖解读
- 气缸体的认知项目二曲柄连杆机构拆装与调整13课件
- 幼儿园中班科学活动《不同的味道》课件
- 消防管道项目评估报告参考范文
- 危重病人床旁交接班流程
- 创造性思维与创新方法(大连民族大学)知到网课答案
- 防恐考试题及答案
- 2025年河北石家庄印钞有限公司招聘13人笔试参考题库附带答案详解
评论
0/150
提交评论