iOS系统架构浅析

iOS系统架构浅析

概述

iOS系统整体上可以分为四层,自上而下分别为可触摸层(Cocoa Touch Layer)、媒体层(Media Layer)、核心服务层(Core Services Layer)、核心系统层(Core OS Layer),每个层级提供不同的服务。如下图所示:




我们常用的UIKit框架和Foundation框架分别处于这四层架构的Cocoa Touch层和Core Services层。一般来说低层级的为高层级提供服务。

下面我们整体来看看每一层级的主要功能

可触摸层(Cocoa Touch Layer)

可触摸层主要提供用户交互相关的服务如界面控件、事件管理、通知中心、地图,包含以下常用框架:

UIKit(UIKit.framework)

Notification Center(NotificationCenter.framework)

MapKit(MapKit.framework)

Address Book (AddressBookUI.framework)

PushKit(PushKit.framework)


媒体层(Media Layer)

媒体层主要提供图像引擎、音频引擎、视频引擎框架
包含以下常用框架:

  • 图像引擎

    Core Graphics(CoreGraphics.framework)
    Core Image (CoreImage.framework )
    Core Animation
    OpenGL ES(OpenGLES.framework)

  • 音频引擎

    Core Audio(CoreAudio.framework )
    AV Foundation(AVFoundation.framework )

  • 视频引擎

    AV Foundation(AVFoundation.framework )
    Core Media(MediaPlayer.framework)


核心服务层(Core Services Layer)

核心服务层为程序提供基础的系统服务例如网络访问、浏览器引擎、定位、文件访问、数据库访问等,主要包含以下常用框架:

CFNetwork(CFNetwork.framework)

Core Data(CoreData.framework)

Core Location(CoreLocation.framework)

Core Motion(CoreMotion.framework)

Foundation(CoreFoundation.framework)

Webkit(Webkit.framework)

JavaScript(JavaScriptCore.framework)


核心系统层(Core OS Layer)

核心系统层提供为上层结构提供最基础的服务如操作系统内核服务、本地认证、安全、加速等,它可以直接和硬件设备进行交互

操作系统内核服务(BSD sockets、I/O访问、内存申请、文件系统、数学计算等)

本地认证(指纹识别验证等)

安全(提供管理证书、公钥、密钥等的接口)

加速 (执行数学、大数字以及DSP运算,这些接口iOS设备硬件相匹配)

你可能感兴趣的:(iOS系统架构浅析)