dyld环境变量

苹果APP启动,分为两个过程:系统dylib动态链接库 app的main函数启动过程。

main函数过程直接对iOS开发者。这里备忘的dylib过程:

一、dyld加载到虚拟内存

    1. load dylibs image 
    2. Rebase image
    3. Bind image
    4. Objc setup
    5. initializers

二、runtime接管imageLoader加载到内存的镜像

    1. imageLoader加载进行到内存
    2. runtime 解析和处理
    3. 按照继承关系与category关系,层级调用+load方法
 
变量说明
DYLD_PRINT_STATISTICS 1 Print launch performance statistics
打印启动时间等参数
DYLD_PRINT_SEGMENTS 1 Log segment mapping
打印segment映射日志
DYLD_PRINT_INITIALIZERS 1 Log image initialization calls
打印镜像初始化调用日志
DYLD_PRINT_BINDINGS 1 Log symbol bindings
打印符号绑定日志
DYLD_PRINT_APIS 1 Log dyld API calls (for example, dlopen)
打印 dyld API 调用日志
DYLD_PRINT_ENV 1 Print launch-time environment variables
DYLD_PRINT_OPTS 1 Print launch-time command line arguments
DYLD_PRINT_LIBRARIES_POST_LAUNCH 1 Log library loads , but only after main has run
DYLD_PRINT_LIBRARIES 1 Log library loads
DYLD_IMAGE_SUFFIX 1 Search for libraries with this suffix first

posted on   梁飞宇  阅读(918)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示