iOS操作系统整体架构层次

来源:互联网 发布:linux下如何同步时钟 编辑:程序博客网 时间:2024/06/06 00:12

    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层中的其他框架,对我们在应用程序中的开发来说也是非常有用的,如访问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。

UIkit:它负责启动和结束应用程序、控制界面和多点触摸事件,让您能够访问常见的数据视图,网页、excel、word。还负责iOS内部众多的集成功能,访问数据库、照片库和加速计也是使用UIKit中的类和方法实现。

MapKit:跟Apple 地图视图有关。

Game Kit:提高iOS应用程序的网络的交互性,提供了创建并使用对等网络的机制,回话发现、仲裁和语音聊天。

Message UI/Address/Event KIt UI:帮组我们的程序访问电子邮件、联系人和日历事件。

iAd:加入广告。

Core Graphics:实现在应用程序中添加2D绘画和合成功能。

OpenGL ES:OpenGL ES 是OpenGL 框架的子集,适用于嵌入式系统(ES)。OpenGL ES 可用于在应用程序中创建2D和3D动画。

Quartz Core:利用硬件的功能,创建动画。

核心服务层:Accounts、Address Book、CFNetwork、Core Data:用于创建iOS应用程序的数据模型,它提供了一个基于SQLite关系的数据库模型,用于将数据绑定到界面的对象。

Core Fondation、Foundation、Event Kit、Core Location、Core Motion、Newsstand、Pass Kit、Quick Lock 、Social:可以访问Twitter和Facebook的应用程序,无需管理账号信息,不用了解Twitter和Facebook的专用网路的协议。

Store Kit、System Configuration:用于确定设备网络配置的当前状态。

4.核心应用程序类:NSObject、UIApplication(应用程序类)、窗口类(UIWindow)放置视图的容器、视图(UIView)、响应者(UIResponse)、屏幕控件(UIControl)、视图控制器(UIViewController):管理视图的功能





0 0