我想知道预链接是如何工作的。如果我预先链接整个系统并删除 glibc,系统会在重新启动后“启动”吗?
答案1
当然不会,因为您将不再拥有 C 库。
所有预链接所做的就是尝试计算每个库的最佳加载地址,以便没有程序会有重叠的库,然后更新库,以便它们默认在该地址加载。
然后,当程序运行时,它使用的库不太可能需要重新定位,因为它们可能可以加载到默认地址。
我想知道预链接是如何工作的。如果我预先链接整个系统并删除 glibc,系统会在重新启动后“启动”吗?
当然不会,因为您将不再拥有 C 库。
所有预链接所做的就是尝试计算每个库的最佳加载地址,以便没有程序会有重叠的库,然后更新库,以便它们默认在该地址加载。
然后,当程序运行时,它使用的库不太可能需要重新定位,因为它们可能可以加载到默认地址。