OC底層探索 對象的本質001-斷點分析的三種方法[https://www.jianshu.com/p/b2e62f7211b8]002-all...
編譯環境 MacOS Catalina 10.15.4 Xcode 12.2 Python 2.x brew install cmake nin...
二進制重排原理 啟動優化-概念與建議[https://www.jianshu.com/p/83dd525c9e82] 在上一篇啟動優化的概念中,...
基本概念 虛擬內存&物理內存 早期的數據訪問是直接通過物理地址訪問的,這種方式有以下兩種問題內存不夠用內存數據的安全問題 內存不夠用解決方案:虛...
LLVM(Low Level Virtual Machine)概述 LLVM是架構編譯器(compiler)的框架系統,以C++編寫而成,用於優...
前言 在上一篇中我們了解了dyld加載的流程,此篇我們將介紹dyld與objc的關聯。 dyld 加載流程[https://www.jiansh...
前言 小測驗: 透過以下三種函數請問加載順序為何? +load方法,main()函數,C++方法 通過運行程序可以知道,打印順序為load → ...
前言 在前兩篇節我們了解了快速方法查找如果找不到,則會進入慢速查找流程,其查找流程主要為在當前類的方法列表中查找,如果還是沒有找到,則去父類鏈的...
前言 在上一篇快速查找提到,如果快速查找無法找到相對應的方法,則會進入慢速查找流程,此篇重點在於慢速查找。 objc_msgSend流程分析(快...