一、概述
iOS系统分为可分为四级结构,由上至下分别为可触摸层(Cocoa Touch Layer)、媒体层(Media Layer)、核心服务层(Core Services Layer)、核心系统层(Core OS Layer),每个层级提供不同的服务。低层级结构提供基础服务如文件系统、内存管理、I/O操作等。高层级结构建立在低层级结构之上提供具体服务如UI控件、文件访问等。
二、可触摸层(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设备硬件相匹配)