【问题标题】:ldd shows varied addresses on x86 Linuxldd 在 x86 Linux 上显示不同的地址
【发布时间】:2011-01-14 02:13:45
【问题描述】:

我在Fedora/x86上使用ldd展示动态库,每次使用都显示不同的结果。

这是预期的吗?或者有什么解释?

我记得它在 PPC/Linux 上显示了一个固定的结果。

`ldd /bin/ls
 linux-gate.so.1 =>  (0x00e5b000)
 librt.so.1 => /lib/librt.so.1 (0x00c0c000)
 libselinux.so.1 => /lib/libselinux.so.1 (0x0095d000)
 libcap.so.2 => /lib/libcap.so.2 (0x00110000)
 libacl.so.1 => /lib/libacl.so.1 (0x00331000)
 libc.so.6 => /lib/libc.so.6 (0x00115000)
 libpthread.so.0 => /lib/libpthread.so.0 (0x00bc9000)
 /lib/ld-linux.so.2 (0x009d2000)
 libdl.so.2 => /lib/libdl.so.2 (0x00680000)
 libattr.so.1 => /lib/libattr.so.1 (0x00447000)
ldd /bin/ls
 linux-gate.so.1 =>  (0x00f76000)
 librt.so.1 => /lib/librt.so.1 (0x00494000)
 libselinux.so.1 => /lib/libselinux.so.1 (0x0095d000)
 libcap.so.2 => /lib/libcap.so.2 (0x009e9000)
 libacl.so.1 => /lib/libacl.so.1 (0x00365000)
 libc.so.6 => /lib/libc.so.6 (0x00732000)
 libpthread.so.0 => /lib/libpthread.so.0 (0x00b61000)
 /lib/ld-linux.so.2 (0x002a7000)
 libdl.so.2 => /lib/libdl.so.2 (0x002f0000)
 libattr.so.1 => /lib/libattr.so.1 (0x00447000)`

【问题讨论】:

    标签: linux x86 fedora powerpc ldd


    【解决方案1】:

    Fedora 使用address space randomization 作为其各种安全措施的一部分。 ldd 通过实际加载共享对象并显示它们的最终位置来工作。将两者放在一起会产生给定的观察结果。

    【讨论】:

      猜你喜欢
      • 2018-06-01
      • 1970-01-01
      • 2018-10-16
      • 1970-01-01
      • 2015-12-22
      • 1970-01-01
      • 1970-01-01
      • 2020-10-31
      • 1970-01-01
      相关资源
      最近更新 更多