![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编译与链接
文章平均质量分 63
whoami_I
这个作者很懒,什么都没留下…
展开
-
使用GDB调试汇编语言,查看plt过程
在linux x86平台下,程序链接的plt got里面的值是如何变化的,下面来进行演示: 首先写好一个c文件:#include <stdio.h>int main(void){ printf("hello world\n"); return 0;}非常简单的一个hello world程序,编译程序之后对程序进行反汇编objdump...原创 2018-09-13 00:46:19 · 2641 阅读 · 0 评论 -
动态链接中数据的重定向例子
程序的大致框架: 主程序:#include <stdio.h>extern void hello(void);extern int a;int main(void){ printf("in main.c a=%d\n", a); printf("in main.c &a=%p\n", &a); hello(); retu...原创 2018-09-13 10:47:29 · 308 阅读 · 0 评论 -
C程序中各个段的含义
首先应该知道几个查看段信息的指令: readelf -S file 查看各个段的名称,地址,大小等信息 objdump -s file 查看各个段的二进制和字符格式内容 hexdump -C file 查看整个二进制文件的二进制和字符格式内容 (1).text 程序的正文段,一般为本文件中的函数指令 (2).data 程序的数据段,一般静态变量和初始化的全局变量定义在此 (3...原创 2018-09-13 14:23:36 · 1992 阅读 · 0 评论