![预链接如何工作](https://linux22.com/image/2846/%E9%A2%84%E9%93%BE%E6%8E%A5%E5%A6%82%E4%BD%95%E5%B7%A5%E4%BD%9C.png)
我想知道预链接是如何工作的。如果我预先链接整个系统并删除 glibc,系统会在重新启动后“启动”吗?
答案1
当然不会,因为您将不再拥有 C 库。
所有预链接所做的就是尝试计算每个库的最佳加载地址,以便没有程序会有重叠的库,然后更新库,以便它们默认在该地址加载。
然后,当程序运行时,它使用的库不太可能需要重新定位,因为它们可能可以加载到默认地址。
我想知道预链接是如何工作的。如果我预先链接整个系统并删除 glibc,系统会在重新启动后“启动”吗?
当然不会,因为您将不再拥有 C 库。
所有预链接所做的就是尝试计算每个库的最佳加载地址,以便没有程序会有重叠的库,然后更新库,以便它们默认在该地址加载。
然后,当程序运行时,它使用的库不太可能需要重新定位,因为它们可能可以加载到默认地址。