Mach-OMach Object文件格式的缩写,它是一种用于可执行文件,目标代码,动态库,内核转储的文件格式。作为a.out格式的替代,Mach-O提供了更强的扩展性,并提升了符号表中信息的访问速度。

Mach-O曾经为大部分基于Mach核心的操作系统所使用。NeXTSTEP,Darwin和Mac OS X等系统使用这种格式作为其原生可执行文件,库和目标代码的格式。而同样使用GNU Mach作为其微内核的GNU Hurd系统则使用ELF而非Mach-O作为其标准的二进制文件格式。

Mach-O
扩展名 无, .o.dylib
统一类型标识 com.apple.mach-o-binary
开发者 卡内基梅隆大学/苹果公司
格式 二进制文件,可执行文件,目标代码,动态库,内核转储
专门属 ARM,SPARC,PA-RISC,PowerPC以及x86的可执行文件,内存转储

Mach-O文件结构

每个Mach-O文件包括一个Mach-O头,然后是一系列的载入命令,再是一个或多个,每个块包括0到255个。Mach-O使用REL再定位格式控制对符号的引用。Mach-O在两级命名空间中将每个符号编码成“对象-符号名”对,在查找符号时则采用线性搜索法。

Mach-O的基本结构,引用了文件中数据页的变长“加载命令”表,也用于Accent核心的可执行文件格式中,而这种格式则是基于来自Spice Lisp的理念。

mac  中 Mach-O相关推荐

  1. mac中修改系统限制量--ulimit和sysctl

    在*nux中,对于每个用户,系统限制其最大进程数.文件数--.为提高性能,可以根据设备资源情况,设置各用户的最大进程数,文件数等等 在mac中,要设置这些系统值,也使用这些命令. 可以用ulimit ...

  2. mac中使用 sourcetree 的快速配置和git服务器登录

    问题: 1.mac中下载sourcetree配置仓库地址,一直在提示输入密码,无法登录成功,更无法获取源码. 2.找不到配置仓库时的账号密码,只看到地址. 场景: git服务器:自己的GIT服务器,非 ...

  3. mac怎么用python3.0_怎么在mac中使用python

    怎么在mac中使用python 发布时间:2020-07-13 15:05:43 来源:亿速云 阅读:95 作者:Leah 这篇文章将为大家详细讲解有关怎么在mac中使用python,文章内容质量较高 ...

  4. Mac中使用port升级gcc版本

    Mac中使用port升级gcc版本 Mac OS中的gcc版本可能不会满足实际使用要求,需要对其升级. 这里介绍使用port方式来升级gcc版本.Macports是Mac OS中的软件包管理工具. 首 ...

  5. 《Python硬件编程实战》——2.8 在Mac中安装Python

    本节书摘来自华章计算机<Python硬件编程实战>一书中的第2章,第2.8节,作者:李茂 著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2.8 在Mac ...

  6. 【错误记录】Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( “Python“ 因为出现问题而无法打开 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 先安装了 Pytnon3.10.0 版本 , 然后有安装了 Python3.6.3 版本 , 安装完成后 , IntelliJ IDEA 中就出现如 ...

  7. 【错误记录】Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( pip 21.0 will drop support for Python 2.7 in January 20 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 在 [错误记录]Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( No module named 'threadpool' ...

  8. maven 在 mac中的配置

    思前想后,还是在mac中把maven配置一下吧. 1.下载安装包,由于公司用的版本比较低,考虑到兼容性,建议用低版本的.我用3.0.5 下载地址:http://archive.apache.org/d ...

  9. vlc android 编译 mac,在Mac中编译vlc-android小结

    在Mac中编译vlc-android小结 在Mac中编译vlc-android小结 VLC  CodeSource https://code.videolan.org/explore This pag ...

  10. mysql在mac下的data目录_Mysql在mac中目录结构用法命令

    mac中 安装在/usr/local/mysql/bin中 数据文件在/usr/local/mysql/data中 1 mysql -h主机地址 -u用户名 -p用户密码 2 show DATABAS ...

最新文章

  1. 使用GruntJS构建Web程序 (1)
  2. MySQL 使用explain查看执行计划
  3. IDEA 2019.1 不支持lombok插件问题解决方案
  4. MVC学习之简单的CRUD
  5. 2.27linux和windows互传文件
  6. 终于,我读懂了所有Java集合——sort
  7. java输出华氏摄氏温度转换表_Python练习题2.10输出华氏-摄氏温度转换表
  8. php 会员到期提醒_会员管理系统花了50万都没做成,用这五个功能轻松实现
  9. Struts入门学习(三)---自定义类型转换器
  10. No module named ‘pyqt5‘解决办法
  11. POI设置单元格颜色及枚举颜色对照
  12. 大数据安全和网络安全基础知识
  13. mro列表_方法解析顺序(MRO)
  14. ML学习分享系列(1)_计算广告小窥[上]
  15. 人工智能,这五个行业岗位未来很吃香
  16. ffmpeg 音频解码一
  17. grib2文件格式说明 文件结构
  18. spring cloud整合feign和nacos报错:No Feign Client for loadBalancing defined. Did you forget to include
  19. 阿桑奇:维基解密将把CIA网络攻击工具资料提供给科技公司
  20. 什么是命令提示符 命令提示符的打开方法

热门文章

  1. Science:致病菌激活根系内生微生物组抵抗病害的功能
  2. Fertility of Soils:根系C P计量比影响水稻残根周际酶活的时空动态分布特征
  3. python使用matplotlib可视化饼图(pie plot)、可视化嵌套的环形饼图(Nested circular pie chart)
  4. R语言使用ggpubr包的ggbarplot函数可视化水平偏差条形图(计算数值的z-score、自定义填充色、自定义条形边缘色、自定义调色板、条形图全局排序从小到大、文本标签角度、添加图例标签、轴标签
  5. R语言使用ggplot2包geom_jitter()函数绘制分组(strip plot,一维散点图)带状图(单色填充、分组颜色填充)实战
  6. R语言distRhumb函数计算距离实战(两个地理点之间的Rhumb距离)
  7. ANTS医学影像配准+Li‘s 核磁共振影像数据处理
  8. 为Jupyter notebook配置R kernel过程及踩坑记录
  9. 深度学习静态图和静态图的区别以及优缺点是什么?
  10. 网络抓包wireshark