繁体   English   中英

有效的可执行 Mach-o 文件的最小大小

[英]Smallest size of valid executable Mach-o file

我正在研究文件迭代器,它决定了 macho 文件是否可运行,并且喜欢根据文件大小添加快速检查。

似乎对男子气概的最小尺寸没有真正的限制,但是否存在有效男子气概尺寸的下限。

这意味着低于此大小的文件被 0xfeedface/0xfeedfacf 前缀标识为男子气概,无法执行)。

根据 Macho 结构,它应该包含可能指向其他段的 macho-headers 和 load-commands。

如果有这样的指定限制,我如何编译/创建大小为限制的文件。

我猜这样的文件将只包含单个加载命令头,指向最少的代码..它不会链接到任何 dylib,包含静态数据、全局变量等......但是当我编译返回 0 的简单主命令时,它仍然链接到/usr/lib/libSystem.B.dylib

粗略的下界

谢谢

有人写了这个, tiny.s 它适用于早期版本的 OSX:

https://gist.github.com/zliuva/1084476

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM