debugger - lldb
Dancing in the Debugger — A Waltz with LLDB
Hopper + lldb for iOS Developers: A Gentle Introduction
complier - clang & llvm
assembly
推荐阅读的书籍:
Reverse Engineering for Beginners
Computer Systems: A Programmer's Perspective
dyld
iOS程序启动->dyld加载->runtime初始化(初识)
dyld源码分析-动态加载main的流程和load函数执行的流程
source code
阅读源码的一些指南。
源代码可以在苹果开源官网上下载:
阅读技巧:
下载源码后,用 Xcode 打开 objc.xcodeproj 可以看到源码的分类,能够更方便的查看。其中最需要关注的是 Project Headers 里面的 objc-private.h 和 objc-runtime-new.h 以及 Source 里面的文件。
源码中的消息发送部分用到了 MASM,在微软的官方文档中可以了解:
Microsoft Macro Assembler Reference
你可能需要了解的基础 c 语言知识:
推荐阅读的博客有:
推荐看的书:
The C Programming Language.
其他