E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Mach-O
符号表Symbol Table
Mach-O
格式用来替代BSD系统的a.out格式。
Mach-O
文件格式保存了在编译过
differ_iOSER
·
2021-04-22 16:21
深入理解 iOS App 的启动过程
准备知识
Mach-O
哪些名词指的是Mach-oExecutable可执行文件Dylib动态库Bundle无法被连接的动态库,只能通过dlopen()加载Image指的是Executable,Dylib或者
有度YouDo
·
2021-04-22 15:50
逆向第二天-class-dump
它利用Objective-C语言的runtime特性,将存储在
Mach-O
文件中的头文件信息提取出来,并生成对应的.h文件。
雷电法王
·
2021-04-22 06:33
[iOS] App启动流程 & 优化探讨
强推:深入理解iOSApp的启动过程1.Mach-O首先我们每个app其实都是一个可执行文件而已,也就是我们熟悉的胖二进制文件
Mach-O
,这个文件的布局大概是下面酱紫的:mach-oMach-O文件主要有
木小易Ying
·
2021-04-18 05:03
macOS 11.1下objc4-818.2源码编译调试
Libc-583下载下面第十个文件需要在Libc-825.24下载1.objc4-818.22.xnu-7195.60.75/bsd/sys/reason.h3.dyld-832.7.1/include/
mach-o
Lucky_Blue
·
2021-04-09 16:19
iOS OC 类原理
iOSObjective-CisaiOSObjective-Cisa走位分析iOSOC类原理iOSOC方法的本质iOSObjective-C消息的查找iOSObjective-C消息的转发iOS应用加载dyld篇
Mach-O
just东东
·
2021-04-09 15:17
iOS类的加载(上)
管理文件和动态库中所有的符号,即class、protocol、selector、category等,是应用类型,外界变了,跟着变load_images:加载执行load方法,是值类型,不传递值代码通过编译,读取到
Mach-O
木扬音
·
2021-04-03 22:42
iOS逆向:
Mach-O
文件
目录一,APP从开发到安装的过程二,class-dump三,HopperDisassembler四,动态库共享缓存五,
Mach-O
文件类型六,
Mach-O
基本结构一,APP从开发到安装的过程1,打包图解说明
码小菜
·
2021-04-01 11:25
iOS-开发进阶02:链接与Symbol(上)
iOS开发进阶文章汇总目录一、
Mach-O
与链接器二、符号的种类与作用三、strip命令四、在LLVM项目中调试nm命令五、总结一、
Mach-O
与链接器Mach-OMach-O(MachObject)是
differ_iOSER
·
2021-03-31 17:12
iOS强化 : 熟悉
Mach-O
文件
前言:关于
Mach-O
文件,在iOSApp加载流程知识中已经提到过。看到优秀进行一波儿转载。
欧德尔丶胡
·
2021-03-31 10:22
(三)
Mach-O
文件的静态链接
#链接概述#静态链接##链接器##静态链接过程###两步链接###第一步空间与地址分配###示例###说明:符号表中符号的几种类型###第二步符号解析与重定位##静态库链接#参考链接#链接概述链接通常是一个让人比较费解的过程,为什么汇编器不直接输出可执行文件而是输出一个目标文件呢?链接过程到底包含了什么内容?为什么要链接?很久以前,人们编写程序时,将所有源代码都写在同一个文件中,发展到后来一个程序
Tenloy
·
2021-03-11 12:45
3、iOS强化 ---
Mach-O
文件
Mach-O
(MachObject)是macOS、iOS、iPadOS存储程序和库的文件合适。
Jax_YD
·
2021-03-10 20:02
iOS高级强化--006:
Mach-O
体积优化
Bitcode什么是Bitcode?Bitcode是被编译程序的一种中间形式的代码。包含Bitcode并上传到AppStoreConnect的App,会在AppStore上编译和链接。包含Bitcode可以在不提交新版本App的情况下,允许Apple在将来的时候再次优化你的App二进制文件。在Xcode中,默认开启Bitcode。如果你的App支持Bitcode,App使用到的其他二进制形式也要支
帅驼驼
·
2021-03-10 17:23
4、iOS强化 --- 链接与符号(Symbol)
首先我们来认识一下什么是链接:链接的本质就是把一个或多个目标文件和需要的库(静态库/动态库,如果需要的话)组合成一个文件(
Mach-O
可执行文件)通常.o文件被我们称之为目标文件。
Jax_YD
·
2021-03-10 10:17
符号的种类与作用
全局符号和本地符号我们先看一段代码屏幕快照2021-02-21下午8.29.33.png查看
Mach-O
的符号屏幕快照2021-02-21上午9.59.21.png通过如下命令objdump--macho
猿人
·
2021-03-04 16:05
iOS 动态库 & 静态库
编译器会对每个文件进行编译,生成
Mach-O
(可执行文件);链接器会将项目中的多个
Mach-O
文件合并成一个。
梦蕊dream
·
2021-03-03 14:09
App启动分析与优化策略
一、启动过程分析1、解析Info.plista.加载相关信息,例如闪屏b.沙箱建立、权限检查2、
Mach-O
加载
Mach-O
文件:我们写的程序想要跑起来,肯定它的可执行文件格式要被操作系统所理解。
90后天道酬勤
·
2021-02-26 16:57
iOS高级强化--003:编译与链接
生成
Mach-O
可执行文件,中间会经过目标文件,即.o文件⽣成.o目标文件的过程:将代码汇编化将符号进行归类;此时地址还没有虚拟化(没有生成虚拟内存地址)。
帅驼驼
·
2021-02-26 10:18
Mach-O
初探 &编译与链接
Mach-O
与连接器的一个作用
Mach-o
到底是什么?
Mach-O
(MachObject)是macOS、iOS、iPadOS存储序和库的文件格式。
猿人
·
2021-02-20 16:05
Mach-O
前言:
Mach-O
(MachObject)是macOS、iOS、iPadOS存储程序和库的文件格式。
浅墨入画
·
2021-02-09 16:42
iOS动态库、静态库与连接
动态库合并:.m文件经过编译器,汇编器,生成一个
mach-o
中间文件,.o文件不能被执行,要经过连接器,生成一个可执行文件exec和动态库dylib。
吕小苔
·
2021-02-02 19:14
iOS-Mach-O
知识点/超人
Mach-O
目录1.概要2.重定向3.a.out4.Mach-O5.SymbolTable(符号表)&StringTable(字符表)&IndirectSymbolTable(间接符号表)概要程序的构建过程包含预处理
树下敲代码的超人
·
2021-02-01 18:19
iOS 启动流程 理解 iOS 启动过程 Dylib相关
准备知识
mach-O
哪些名词指的是Mach-OExecutable可执行文件Dylib动态库Bundle无法被连接的动态库,只能通过dlopen()加载Image指的是Executable,Dylib或者
ElegantLiar
·
2021-01-22 14:31
九 OC底层原理 APP 的加载流程
前言当我们的应用程序被打开的时候,kernel(内核)就会将应用程序加载到内存中,同时kernel又回加载另一个程序,就是我们的dyld(动态链接器),不管是应用程序,还是dyld都是一个可执行文件,在MacOS系统中称做
Mach-o
可乐冒气
·
2021-01-05 22:33
1.在iOS中App的完整启动过程
1.App启动过程解析info.plist加载相关信息,例如闪屏沙盒建立,权限检查
Mach-O
(什么是
Mach-O
)加载如果是二进制文件,寻找合适当前CPU离别的部分加载所有依赖的
Mach-O
文件(递归调用
MT_suny
·
2021-01-05 10:28
(五)
Mach-O
文件之进程(虚拟)地址空间、ASLR
引入#ASLR##未使用ASLR##使用了ASLR##符号在可执行文件、虚拟地址空间中的地址计算###符号内存、可执行文件地址关系###ASLROffset的获取###SymbolAddress符号化#
Mach-O
Tenloy
·
2020-12-01 18:00
5ecsgo启动失败2错误代码2_iOS性能优化(3)启动优化2
实例化主程序:判断
Mach-O
文件的兼容性,如果兼容性满足,这一步将主程序的
Mach-O
加载进内存,并实例化一个ImageLoader。加载插入的动态库:这一步是加载环境变量
weixin_39924779
·
2020-11-29 11:32
iOS插件化架构探索
动态库在编译时并不会被拷贝到程序的可执行文件(也就是
mach-o
)中,等到程序运行时,动态库才会被真正加载。动态库运行时才
Mo_mo???
·
2020-11-05 07:00
java
ios
web
移动开发
http
第十五节—libobjc探索类的加载(一)
从dyld已经进入到了libobjc库,毕竟dyld只是动态链接器,它要完成的是把不能自己加载到内存的动态库和我们的程序代码进行链接(link),然后把它们变成的可执行文件
mach-o
加载到内存中执行。
L_Ares
·
2020-11-01 21:04
OC底层原理12-类加载(一)
Mach-O
为Machobject文件格式的缩写,它是mac以及iOS上一种用于可执行文件、目标代码、动态库的文件格式。常见:目标文件:
夏天的枫_
·
2020-10-23 15:27
iOS-类的加载(上)
链接之间的关系,那么接下来我们就探究一下类的相关信息是如何加载到内存的以及懒加载类和非懒加载类map_images分析在上文的最后,我们分析到了map_images方法,map_images方法的主要作用是将
Mach-O
Y丶舜禹
·
2020-10-22 16:26
Mach-O
文件格式
1.Mach-O文件种类
Mach-O
文件大致可分为如下这么多,分别在文件fat.h和load.h中有说明我已上传github,有兴趣的可以下载来看,对一些字段也有相应的注释,文件出自xnu开源代码可以在终端通过
洧中苇_4187
·
2020-10-20 13:59
Mach-O
文件格式
Mach-O
文件结构
Mach-O
(MachObject)是一种基于Mach内核的文件格式。iOS系统生成的可执行程序或者动态库文件的存储布局格式被称之为
mach-o
格式。
答案不止一个
·
2020-10-15 15:22
Mach-O
符号懒加载
通过一个例子根据
Mach-O
文件去了解。lazysymbolpre.png第一次调用这个printf函数lazysymbol1.jpeg会找到在Section64(Text,__stub)上的地址。
答案不止一个
·
2020-10-10 13:47
FFmpeg安装(Centos6.5)
接受NASM和GNU汇编器(gas)语法,产出二进制,ELF32,ELF64,COFF,
Mach-O
的(32和64),RDOFF2,的Win32和Win64对象的格式,并生成STABS调试信息的来源,DWARF2
myydan
·
2020-09-17 12:20
XNU加载
Mach-O
和dyld
我们知道,操作系统是电脑、手机上最基本的软件,任何其他的软件都必须在操作系统的支持下才能够运行。同理,软件的启动也必须在操作系统的支持下才能够运行。对于iOS系统来说,操作系统内核是XNU(XisnotUnix),那么在一个app的启动过程中,XNU发挥了什么作用呢?本篇文章,我们来探究一下这个问题。XNU启动launchdXNU的代码是开源的,可以从苹果开源代码平台上下载XNU的代码,通过分析X
TuGeLe
·
2020-09-17 06:14
iOS开发
[iOS 逆向 5] 逆向储备
本文主要介绍一些iOS/MacOSX操作系统的东西,比如DYLD,
Mach-O
,ARM汇编。内容很枯燥。
Eric217
·
2020-09-16 15:05
iOS逆向
dyld
mach-o
动态库
arm
Mach-O
学习
学习逆向,掌握
Mach-O
结构和原理必不可少,这方面的资料还是很多,把学习到的简单记录如下:1.iOS逆向学习笔记之--
Mach-O
文件结构介绍了Machheader和LoadCommands;https
sharpyl
·
2020-09-16 03:05
iOS逆向-基础(HT)
fishhook原理
fishhook是Facebook提供的一个动态修改链接
mach-O
文件的工具。利用MachO文件加载原理,通过修改懒加载和非懒加载两个表的指针达到C函数HOOK的目的。
sharpyl
·
2020-09-16 03:05
iOS逆向-基础(HT)
逆向学习 - class-dump
它利用Objective-C语言的runtime的特性,将存储在
mach-O
文件中的classes、categories和protocols信息提取出来,并生成对应的.h文件2.git:https://
sharpyl
·
2020-09-16 03:05
iOS逆向-学习(QT)
mach-o
文件分析
一.先给出一个结构图,大致了解一下内部的结构:image.png主要结构分成三个部分:Header部分:保存了该文件的一些基本信息,如平台,文件类型,加载命令的个数等loadCommends部分:根据这里的数据来确定内存的分布Data部分:存放具体的代码和数据data部分是以段来划分的,segment段类型如下图:1:__PAGEZERO段:空指针陷阱段,映射到虚拟内存空间的第一页,用于捕捉对NU
Ansel_m
·
2020-09-14 19:58
IOS
mach-o
文件分析工具 MachOview探究
一、MachOView工具概述及安装使用MachOView工具可以在Mac平台中可查看
Mach-O
文件的格式信息.iOS系统中可执行程序就属于
Mach-O
文件格式。
chqj_163
·
2020-09-14 18:21
iOS
iOS#审核
XCode
iOS瘦身之删除FrameWork中无用
mach-O
文件
iOS瘦身之删除FrameWork中无用
mach-O
文件原文http://www.infoq.com/cn/articles/ios-thinning-delete-unnecessary-mach-o
brhave
·
2020-09-14 18:58
调试
Mach-O
二进制文件分析工具
file输出二进文件的一些信息,比如胖瘦,支持的架构nmotoollipo创建或分拆胖文件(包含多个或单个架构)MachOViewer
EmmaRiver
·
2020-09-14 18:27
mach-o
otool 分析
Mach-O
otool查看所有的Methodotool-v-s__TEXT__objc_methnamemach-o的pathotool查看被调用的Methodotool-v-s__DATA__objc_selrefsmach-o的pathotool查看所有的Classotool-v-s__TEXT__objc_classnamemach-o的path//查看所有datasegment的信息otool-oVm
Ansel_m
·
2020-09-14 17:24
Mach-o
IOS
iOS 性能优化(二)安装包瘦身
目录前言一、安装包组成二、资源瘦身优化2.1无用资源删除2.2资源压缩2.3图片管理方式2.4动态下载资源三、可执行文件优化3.1找到方法和类的全集:LinkMap文件分析3.2找到已使用的方法和类:
Mach-O
ClarkLee001
·
2020-09-14 17:50
iOS开发
ios
swift静态库的实现
1.swift不支持.a的静态库,因此只能制作.framework的静态库同oc类似,framework需要设置
mach-o
为staticlibrary2.静态库的使用同oc一样,加入静态库,需要设置好静态库相关的
chenyao3708
·
2020-09-13 21:34
iOS逆向之五-
MACH-O
文件解析
MachO文件是苹果可执行二进制文件的格式LoadCommandsLC_SEGMENT_64将可执行文件(64位)映射到进程地址空间32位系统的是LC_SEGMENT是加载的主要命令,负责指导内核来设置进程的内存空间LC_DYLD_INFO_ONLY动态链接相关信息LC_SYMTAB符号表地址LC_DYSYMTAB动态符号地址表LC_LOAD_DYLINKER加载一个动态链接器,路径“/usr/l
zhangyutangde
·
2020-09-12 18:32
iOS逆向之四-FishHook的简单使用
iOS逆向之二-FishHook的简单使用FishHook用于hookC函数,是Facebook提供的一个动态修改链接
mach-O
文件的工具,项目地址:fishhook。
zhangyutangde
·
2020-09-12 18:01
iOS开发中,出现错误:Apple
Mach-O
Linker Error
小编在做一个关于环信的小demo,导入环信SDK(EaseMobSDK)时,报连接的错误,如下图所示:一般情况下的解决办法是,如下图,分别在没有标号的箭头中添加编译需要的.m文件和必需的框架:而小编这里的问题却不是以上的编译文件和框架问题,解决办法是,在第三个箭头中添加:-ObjC,然后重新编译就可以了。
xiaojin38
·
2020-09-12 14:11
iOS开发
xcode
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他