iOS层次架构

iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。
    1.Core OS层-----包含核心部分、文件系统、网络基础、安全特性、能量管理和一些设备驱动,还有一些系统级别的API。
 
    2.Core Services层----提供核心服务,例如字符串处理函数、集合管理、网络管理、URL处理工具、联系人维护、偏好设置等。
 
    3.Media层----该层框架和服务依赖Core Services层,向Cocoa Touch层提供画图和多媒体服务,如声音、图片、视频等。
 
    4.Cocoa Touch层----该框架基于 iPhone OS应用层直接调用层,如触摸事件、照相机管理等,包该层含UIKit框架和Foundation框架。
    其实iOS是基于UNIX的,所以我们完全可以相信这个操作系统,要知道从系统的稳定性上来说它要比其他操作系统的产品好很多。
 
    位于iOS系统架构最下面的一层是核心操作系统层,它包括内存管理、文件系统、电源管理以及一些其他的操作系统任务。它可以直接和硬件设备进行交互。核心操作系统层包括以下这些组件:
 
    OS X Kernel    Mach 3.0    BSD
 
    Sockets     Power Mgmt  File System
 
    Keychain     Certificates   Security
 
    Bonjour
 
    第二层是核心服务层,我们可以通过它来访问iOS的一些服务。它包括以下这些组件:
 
    Collections     Address Book   Networking
 
    File Access     SQLite    Core Location
 
    Net Services    Threading    Preferences
 
    URL Utilities
 
    第三层是媒体层,通过它我们可以在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果。它包括以下这些组件:
 
    Core Audio     OpenGL    Audio Mixing
 
    Audio Recording   Video Playback   JPG,PNG,TIFF
 
    PDF     Quartz    Core Animation
 
    OpenGL ES
 
    最上面一层是可触摸层,这一层为我们的应用程序开发提供了各种有用的框架,并且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作。它包括以下这些组件:
 
    Multi-Touch Events  Core Motion   Camera
 
    View Hierarchy   Localization   Alerts
 
    Web Views     Image Picker   Multi-Touch Controls
 
    在Cocoa Touch层中的很多技术都是基于Objective-C语言的。Objective-C语言为iOS提供了像集合、文件管理、网络操作等支持。像UIKit框架,它为应用程序提供了各种可视化组件,比如像窗口(Window)、视图(View)和按钮组件(UIButton)。Cocoa Touch层中的其他框架,对我们在应用程序中的开发来说也是非常有用的,如访问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。
原文地址:https://www.cnblogs.com/fisland/p/4302065.html