PIE和PIC的区别

发布时间 2023-04-17 20:01:23作者: YZFHKMS-X

{

PIC:Position-Independent Code,译为“位置无关代码”。
在计算机系统中,PIC是可以在主存中不同位置执行的目标代码。PIC经常被用在共享库中,这样就能将相同的库代码为每个程序映射到一个位置,不用担心覆盖掉其他程序或共享库。

PIE:Position-Independent Executable,译为“位置无关可执行程序”。
它是完全由位置无关代码所组成的可执行二进制文件,有时可称为PIC Executable。它有一个显著的优点,那就是当程序加载时,所有PIE二进制文件以及它所有的依赖都会加载到虚拟内存空间中的随机位置(随机地址),可以有效提高他人通过绝对地址实施"return-to-libc"安全攻击的难度。

}

{

https://blog.csdn.net/weixin_43820063/article/details/105555315

}