本文參考《Mac OS X and iOS Internals: To the Apple’s Core》 by Jonathan Levin
文章內容主要是閱讀這本書的讀書筆記,建議讀者掌握《操作系統》,了解現代操作系統的技術特點,再閱讀本文可以事半功倍。
雖然iOS系統內核使用極簡的微內核架構,但內容依然十分龐大,所以會分
系統架構、進程調度、內存管理和文件系統四個部分進行闡述。
操作系統管理所有的硬件資源,操作系統內核管理最核心的資源CPU和內存。上兩篇闡述了Mach通過進程調度機制管理CPU資源以及VM機制管理內存資源。
內核的一個重要內容是管理數據,這些數據包括用戶數據和系統數據。為了達到這個目的,數據按照文件和目錄的方式組織,文件和目錄保存在各種類型的文件系統上。同CPU和內存不同,XNU的文件系統是由BSD負責的。BSD文件系統使用了一個名為虛擬文件系統交換(VFS)的框架。