田宇的个人博客

学习笔记


  • 首页

  • 标签

  • 分类

  • 搜索

动态链接

发表于 2020-07-07 | 更新于: 2020-07-18 | 分类于 编译、链接、装载和库 | 阅读次数:

目录

  • 简介
  • 动态链接过程
  • 地址和空间分布
  • 地址无关代码
  • 延迟绑定
  • 显式运行时链接
阅读全文 »

静态链接与装载

发表于 2020-07-07 | 更新于: 2020-07-18 | 分类于 编译、链接、装载和库 | 阅读次数:

目录

  • 空间与地址分配
  • 符号解析与重定位
  • 可执行文件的装载
阅读全文 »

目标文件

发表于 2020-07-07 | 更新于: 2020-07-18 | 分类于 编译、链接、装载和库 | 阅读次数:

目录

  • 目标文件的分类
  • 目标文件的内容
  • 链接的接口-符号
  • 指令和数据分开存放的目的
阅读全文 »

程序编译

发表于 2020-07-07 | 更新于: 2020-07-18 | 分类于 编译、链接、装载和库 | 阅读次数:

目录

  • 简介
  • 预处理
  • 编译
  • 汇编
  • 链接
阅读全文 »

GDB调试之多进程/线程

发表于 2020-04-07 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

目录

  • 选择调试进程
  • 进程切换
  • 实例
  • 多线程调试
阅读全文 »

GDB调试之改变程序执行流程

发表于 2020-04-06 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

目录

  • 目的
  • 实例

目的

最近学习了函数调用及返回的流程后,突发奇想能不能直接使用GDB修改栈空间,达到调用函数 -> 返回主函数
变为 调用函数 -> 插入自定义函数 -> 返回主函数的效果,感觉很有意思,遂进行以下实验

阅读全文 »

GDB调试之定位段错误

发表于 2020-04-05 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

目录

  • 程序添加打印日志
  • GDB调试程序
  • core文件
  • 内核打印日志
  • catchsegv
阅读全文 »

GDB调试之图形化界面(TUI)

发表于 2020-04-04 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

目录

  • 简介
  • 窗口介绍及切换
  • 窗口属性
  • 窗口刷新
  • TUI模式下指令介绍
  • 断点状态显示

简介

TUI(TextUser Interface)为GDB调试的文本用户界面,可以方便地显示源代码、汇编和寄存器文本窗口,甚至可以显示程序及断点运行状态。

备注:本文所有命令均在tui模式下生效

阅读全文 »

查看二进制文件hexdump

发表于 2020-04-04 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

简介

一般用来查看“二进制”文件的十六进制编码,但实际上它能查看任何文件,而不只限于二进制文件

阅读全文 »

GDB调试之ldd命令

发表于 2020-04-04 | 更新于: 2020-07-18 | 分类于 GDB调试 | 阅读次数:

简介

ldd命令可查看文件依赖的所有动态库信息

阅读全文 »
<i class="fa fa-angle-left"></i>123<i class="fa fa-angle-right"></i>
yu.tian

yu.tian

28 日志
7 分类
9 标签
GitHub E-Mail
0%
© 2020 yu.tian