本文參考《Mac OS X and iOS Internals: To the Apple’s Core》 by Jonathan Levin
文章內(nèi)容主要是閱讀這本書(shū)的讀書(shū)筆記它改,建議讀者掌握《操作系統(tǒng)》经窖,了解現(xiàn)代操作系統(tǒng)的技術(shù)特點(diǎn)竭鞍,再閱讀本文可以事半功倍蓝纲。
雖然iOS系統(tǒng)內(nèi)核使用極簡(jiǎn)的微內(nèi)核架構(gòu)嚼酝,但內(nèi)容依然十分龐大篙骡,所以會(huì)分
系統(tǒng)架構(gòu)囚似、進(jìn)程調(diào)度闻伶、內(nèi)存管理和文件系統(tǒng)四個(gè)部分進(jìn)行闡述滨攻。
操作系統(tǒng)管理所有的硬件資源,操作系統(tǒng)內(nèi)核管理最核心的資源CPU和內(nèi)存。上兩篇闡述了Mach通過(guò)進(jìn)程調(diào)度機(jī)制管理CPU資源以及VM機(jī)制管理內(nèi)存資源光绕。
內(nèi)核的一個(gè)重要內(nèi)容是管理數(shù)據(jù)女嘲,這些數(shù)據(jù)包括用戶(hù)數(shù)據(jù)和系統(tǒng)數(shù)據(jù)。為了達(dá)到這個(gè)目的诞帐,數(shù)據(jù)按照文件和目錄的方式組織欣尼,文件和目錄保存在各種類(lèi)型的文件系統(tǒng)上。同CPU和內(nèi)存不同停蕉,XNU的文件系統(tǒng)是由BSD負(fù)責(zé)的愕鼓。BSD文件系統(tǒng)使用了一個(gè)名為虛擬文件系統(tǒng)交換(VFS)的框架。