iOS的系统架构
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设备硬件相匹配)