• 苹果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层中的其他框架,对我们在应用程序中的开发来说也是非常有用的,如访问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。
  • 相关阅读:
    【LeetCode】306. Additive Number
    【LeetCode】49. Group Anagrams
    【LeetCode】233. Number of Digit One
    【LeetCode】73. Set Matrix Zeroes
    【LeetCode】284. Peeking Iterator
    【LeetCode】241. Different Ways to Add Parentheses
    【LeetCode】289. Game of Life
    新版Java为什么要修改substring的实现
    计算机中整数加法满足结合律吗
    双色球中奖概率分析
  • 原文地址:https://www.cnblogs.com/jiackyan/p/3779597.html
Copyright © 2020-2023  润新知