链接时分离代码段和只读数据段

不知道为什么, 链接器默认会把代码段和只读数据段放在一个Program Header中, 并且权限为可读且可执行, 感觉十分危险。

经研究, 在编译链接时加入-z separate-code参数即可让上述两种段在不同的Program Header中, 权限分别为可读且可执行(其实, 根据一些研究成果, 可以设为只可执行, 但可能有兼容性问题), 以及只读。

参考资料:

https://weekly-geekly.github.io/articles/433108/index.html

发表评论

注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)

本文链接:https://twd2.me/archives/14035QrCode