IOS的系統架構

weixin_34128411發表於2018-10-28

iOS系統分為可分為四級結構,由上至下分別為可觸控層(Cocoa Touch Layer)、媒體層(Media Layer)、核心服務層(Core Services Layer)、核心系統層(Core OS Layer),每個層級提供不同的服務。低層級結構提供基礎服務如檔案系統、記憶體管理、I/O操作等。高層級結構建立在低層級結構之上提供具體服務如UI控制元件、檔案訪問等。


14635544-1fd4e38c0f1a7a79.png

二、可觸控層(Cocoa Touch Layer)

可觸控層主要提供使用者互動相關的服務如介面控制元件、事件管理、通知中心、地圖,包含以下框架:

UIKit(介面相關)

EventKit(日曆事件提醒等)

Notification Center(通知中心)

MapKit(地圖顯示)

Address Book(聯絡人)

iAd(廣告)

Message UI(郵件與SMS顯示)

PushKit(iOS8新push機制)


三、媒體層(Media Layer)

媒體層主要提供影象引擎、音訊引擎、視訊引擎框架。

影象引擎(Core Graphics、Core Image、Core Animation、OpenGL ES)

音訊引擎 (Core Audio、 AV Foundation、OpenAL)

視訊引擎(AV Foundation、Core Media)


四、核心服務層(Core Services Layer)

核心服務層為程式提供基礎的系統服務例如網路訪問、瀏覽器引擎、定位、檔案訪問、資料庫訪問等,主要包含以下框架:

CFNetwork(網路訪問)

Core Data(資料儲存)

Core Location(定位功能)

Core Motion(重力加速度,陀螺儀)

Foundation(基礎功能如NSString)

Webkit(瀏覽器引擎)

JavaScript(JavaScript引擎)


五、核心系統層(Core OS Layer)

核心系統層提供為上層結構提供最基礎的服務如作業系統核心服務、本地認證、安全、加速等。

作業系統核心服務(BSD sockets、I/O訪問、記憶體申請、檔案系統、數學計算等)

本地認證(指紋識別驗證等)

安全(提供管理證照、公鑰、金鑰等的介面)

加速  (執行數學、大數字以及DSP運算,這些介面iOS裝置硬體相匹配)

相關文章