![240](https://upload.jianshu.io/users/upload_avatars/22962091/714afd40-31b4-4e75-bd1d-7a0c69380363.jpeg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
二進(jìn)制重排原理 啟動(dòng)優(yōu)化-概念與建議[http://www.reibang.com/p/83dd525c9e82] 在上一篇啟動(dòng)優(yōu)化的概念中,我們理解了虛擬內(nèi)存與物理內(nèi)存,...
Swift 進(jìn)階之路 文章匯總[http://www.reibang.com/p/5fbedf309237] 編譯環(huán)境 MacOS Big Sur 11.0.1 Xcode...
基本概念 虛擬內(nèi)存&物理內(nèi)存 早期的數(shù)據(jù)訪問是直接通過物理地址訪問的,這種方式有以下兩種問題內(nèi)存不夠用內(nèi)存數(shù)據(jù)的安全問題 內(nèi)存不夠用解決方案:虛擬內(nèi)存 我們在進(jìn)程和物理內(nèi)存之...
LLVM(Low Level Virtual Machine)概述 LLVM是架構(gòu)編譯器(compiler)的框架系統(tǒng)领突,以C++編寫而成,用於優(yōu)化以任意程序語言編寫的程序的編...
前言 在上一篇中我們了解了dyld加載的流程案怯,此篇我們將介紹dyld與objc的關(guān)聯(lián)君旦。 dyld 加載流程[http://www.reibang.com/p/c6c0e03...
前言 在前兩篇節(jié)我們了解了快速方法查找如果找不到,則會(huì)進(jìn)入慢速查找流程麦锯,其查找流程主要為在當(dāng)前類的方法列表中查找捞魁,如果還是沒有找到,則去父類鏈的緩存和方法列表中查找离咐。 快速查...
前言 在上一篇快速查找提到,如果快速查找無法找到相對應(yīng)的方法,則會(huì)進(jìn)入慢速查找流程宵蛀,此篇重點(diǎn)在於慢速查找昆著。 objc_msgSend流程分析(快速查找)[https://ww...
前言 在我們知道了cache寫入sel-imp流程後,接下來我們探討寫入之前的消息發(fā)送的流程 cache原理分析[http://www.reibang.com/p/fb72...
OC底層探索 對象的本質(zhì)001-斷點(diǎn)分析的三種方法[http://www.reibang.com/p/b2e62f7211b8]002-alloc&init原理[https...
數(shù)據(jù)結(jié)構(gòu)與算法 01:基礎(chǔ)名詞解釋 & 基本概念[http://www.reibang.com/p/2cbce90a5bc1]數(shù)據(jù)結(jié)構(gòu)與算法 02:特性 & 設(shè)計(jì)要求[ht...
問題一:類存在幾份 類的信息存在了類的isa的shiftcls區(qū)域中,而這樣的類信息只有一份梧宫,所以類對象只有一份 問題二:objc_object 與 對象的關(guān)係 所有的對象 ...
前言: 在了解了類與isa的關(guān)聯(lián)後接谨,了解了isa是如何關(guān)聯(lián)到類以及isa內(nèi)部存在的信息分佈,接下來我們來探討類的isa走位以及類的結(jié)構(gòu)底層存在了什麼呢塘匣? isa與類的關(guān)係 類...
前言 我們知道類的本質(zhì)是一個(gè)對象脓豪,對象的本質(zhì)又是一個(gè)結(jié)構(gòu)體,不過其中的原因以及類與對象之間的關(guān)聯(lián)忌卤,我們好好探究下扫夜。 Clang 介紹對象的本質(zhì)前,由於要看編譯底層的C++文件...
iOS 底層原理 文章匯總[http://www.reibang.com/p/412b20d9a0f6] 本文的主要目的是理解類與isa是如何關(guān)聯(lián)的 在介紹正文之前驰徊,首先需...
獲取內(nèi)存大小 第一種:sizeof The sizeof keyword gives the amount of storage, in bytes, associated ...