小编noB*_*are的帖子

.plt .plt.got 有什么不同?

.plt: 在 REplt[n]可用段中,蹦床在0 之外运行,.got.plt 解析器链接在plt[0]

.got .got.plt : 在可读写段中,只需寻址

我从这篇文章中了解到:https : //eli.thegreenplace.net/2011/11/03/position-independent-code-pic-in-shared-libraries/

问题

实际的 Linux shell 命令给了我不同的答案

$readelf -l /bin/bash
Run Code Online (Sandbox Code Playgroud)

读取精灵 -l 结果

got.plt 消失了,02 段中的 .plt.got 是什么?

我倾倒了两个部分(plt,plt.got)并得到了这个程序集

.plt 是我了解到的 plt: .plt 是我了解到的 plt

.plt.got ,这是做什么用的? .plt.got ,这是做什么用的

对不起,倾销不好,它是由

objcopy -O binary --only-section=.plt.got /bin/bash ./pltgot
objcopy -O binary --only-section=.plt /bin/bash ./plt
Run Code Online (Sandbox Code Playgroud)

问题

  1. .plt 和 .plt.got 有什么区别
  2. 为什么会发生这种差异?

assembly x86-64 matplotlib elf dynamic-linking

5
推荐指数
2
解决办法
1780
查看次数

标签 统计

assembly ×1

dynamic-linking ×1

elf ×1

matplotlib ×1

x86-64 ×1