Objective-C Mach-O文件格式深入理解

Posted yangwenhuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Objective-C Mach-O文件格式深入理解相关的知识,希望对你有一定的参考价值。

Mach-O(Mach Object),是一种基于Mach内核的文件格式,苹果很多文件都采用这种格式,最常见的就是可执行文件和动态库。

当然,还有.o的目标文件、.a和.framework的静态库以及动态连接器dyld等等。

利用MachOView可以查看Mach-O文件的内部结构,以Mac微信为例: 

技术分享图片

 

 

 

Header

Load Command

 

 

注:通常所说的XNU内核是Mach的封装。

 

参考链接:

https://opensource.apple.com/source/xnu/xnu-4570.1.46/EXTERNAL_HEADERS/mach-o/loader.h.auto.html

https://sourceforge.net/projects/machoview/

以上是关于Objective-C Mach-O文件格式深入理解的主要内容,如果未能解决你的问题,请参考以下文章

Mach-O文件格式和程序从载入到运行过程

iOS逆向之Mach-O文件(上)

mach-o文件格式

关于Mach-O类型文件那点事

探秘 Mach-O 文件

通过Mach-O文件结构看iOS堆栈信息